sábado, 24 de mayo de 2014

SSLstrip - Descifrando tráfico HTTPS





Hace ya una semana que en genbeta publicaron una entrada en la que comentaban la publicación que publicó Sandvine, en la que hablaban sobre que el tráfico cifrado (SSL) aumentaba considerablemente en Europa y Latinoamérica.


Esto no es algo que coja de sorpresa, ya que navegando se puede ver perfectamente cómo cada día aumenta la cifra de paginas web con cifrado web SSL.

Pero la pregunta es ¿realmente viajan seguras nuestras contraseñas porque implementen cifrado SSL servicios como google, facebook, twitter, etc...?

La respuesta dependerá como siempre de nuestro conocimiento, es decir, del factor humano.

Para entender mejor lo que quiero decir, pasemos a ver la herramienta de la que hoy os vengo a hablar, SSLstrip.


¿Qué es SSLstrip?

SSLstrip es una herramienta desarrollada en python que fué presentaba por Moxie Marlinspike allá en el 2009, en la conferencia de seguridad Black Hat.

Dicha herramienta se encarga básicamente de descifrar todo el tráfico HTTPS.

La página oficial es http://www.thoughtcrime.org/software/sslstrip/


¿Cómo funciona?

Para poder descifrar dicho tráfico es necesario que la víctima visite un enlace o realizar un ataque MitM, así SSLstrip se encargará de reemplazar todas las peticiones HTTPS por HTTP pudiendo sniffar todo el tráfico en texto plano.

No es que el protocolo SSL lo hayan roto criptográficamente (que se sepa públicamente), si no que simplemente se modifican las peticiones.

Para resultar efectivo este ataque, se requiere ser atacado mediante un enlace o una redirección, es decir, si la víctima escribe directamente la dirección https://www.pagina_web.com en la barra de direcciones no será vulnerable, siempre y cuando la redirección no sea mediante un ataque MitM ya que ahí si se podrían modificar las peticiones porque estaría pasando todo su tráfico por nuestra tarjeta de red.


Instalación

Su instalación es bastante simple.

Lo primero será descargarnos la herramienta:


Una vez descargado el archivo, lo descomprimimos:

tar zxvf sslstrip-0.9.tar.gz

Ahora lo instalamos con el siguiente comando:

sudo python ./setup.py install

Listo!!! ya tenemos instalada nuestra herramienta, veámos como funciona.



PoC

Lo primero que debemos hacer es preparar el enrutamiento, ya que si realizasemos directamente el ataque MitM dejaríamos a la víctima sin acceso a Internet y por lo tanto sería un desastre...

echo "1" > /proc/sys/net/ipv4/ip_forward

Después configuramos una IPTABLE para redirigir el tráfico del puerto 80 a otro puerto:

iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000


Ahora empezamos a realizar el ataque MitM:



Por último, lanzamos SSLstrip a la espera de que nuestra víctima se conecte a algún servicio con cifrado SSL.




Ahora veámos que ocurre cuando la máquina víctima intenta acceder, por ejemplo, a paypal.


 Como se puede ver, se captura sin problemas las contraseñas, y esto mientras la víctima piensa estar segura por entrar con HTTPS.

¿El problema? Damos por sentado todo sin querer entender el por qué o el cómo, otro ejemplo que demuestra claramente que si seguimos dando por sentada la seguridad, seguiremos estando expuestos por mucho que se implementen protocolos seguros, ya que la seguridad depende mayormente de nosotros mismos.


Saludos.





Referencias:
http://www.redeszone.net/seguridad-informatica/sslstrip/
http://www.thoughtcrime.org/software/sslstrip/
https://www.youtube.com/watch?v=MFol6IMbZ7Y
http://www.genbeta.com/actualidad/el-trafico-cifrado-ssl-aumenta-considerablemente-en-europa-y-latinoamerica-segun-sandvine
http://unaaldia.hispasec.com/2009/02/el-ssl-no-esta-roto-o-si-i.html
http://unaaldia.hispasec.com/2009/02/el-ssl-no-esta-roto-o-si-y-ii.html


**No me hago responsable del mal uso que se de a la información presentada. Esta información es de carácter didáctico.** 


No hay comentarios:

Publicar un comentario