Tag Archive for SSL

SSLSTRIP

En otro post anterior hablamos de ARPSPOOF, como comentaba esta técnica permite al atacante ver todo el tráfico que genera la víctima, siempre y cuando sea texto plano, y los protocolos más conocidos que trasmiten la información en texto plano son:

  • HTTP (HyperText Transfer Protocol)
  • FTP (File Transfer Protocol)
  • SMTP (Simple Mail Transfer Protocol)
  • POP (Post Office Protocol)

Todo lo que uno trasmita por estos protocolos va en texto claro es fácil de leer.-

La protección de estos protocolos radica en el uso de SSL (Secure Sockets Layer) o protocolo de capa de conexión segura, es un adicional al protocolo el cual trabaja con certificados y son utilizados en los protocolos que se mencionaron antes.-

Nosotros nos vamos a centrar en HTTPS (Hyper Text Transfer Protocol Secure) o Protocolo seguro de transferencia de hipertexto, este protocolo es utilizado para dar seguridad y son utilizados en HomeBankingWebmailRedes Sociales y en todo sitio que quiera asegurar la transacción de información de manera segura. Y es acá donde el atacante agrega una herramienta más que se llama SSLSTRIP.-

SSLSTRIP es un proxy transparente que reemplaza todas las peticiones HTTPS de una página web por http.-

a modo de ejemplo lo que realiza SSLSTRIP internamente es algo así

sslstrip recibe este tipo de código

<html>
<form method="POST "action="https://www.dominio.com">
<input type="text">
<input type="password">
<input type="submit">
</form>
</html>

y le devuelve a la victima el siguiente código

<html>
<form method="POST "action="http://www.dominio.com">
<input type="text">
<input type="password">
<input type="submit">
</form>
</html>

Como se puede observar luego del “action” se modifica https por http esta acción hace vulnerable la comunicación obligando a la victima a enviar las credenciales (Usuario, Password, Etc.), en texto claro.-

Explicándolo la idea es que la víctima y el atacante se comuniquen a través de HTTP, mientras que el atacante y el servidor, se comunican a través de HTTPS con el certificado del servidor. Por lo tanto, el atacante es capaz de ver todo el tráfico en texto plano de la víctima.-

La secuencia en la que se realiza este ataque Man  In The Middle es como se muestra en la imagen.-

Las posibilidades de evitar este ataque es solo conectarse en redes de confianza o bien utilizar vpn, también una buena practica por excelencia es controlar que siempre  la conexión sea https y que se pueda ver el Certificado como se muestra en la siguiente secuencia.-

Fuente: Cristian Amicelli Rivero, de la redacción del Blog de Mkit Argentina

Navegación Segura

Este artículo va dirigido al público en general y la idea principal es concientizar sobre el uso de protocolos encriptados para la transferencia de datos.
En ésta oportunidad vamos a denotar las diferencias entre los protocolos HTTP (Hyper Text Transfer Protocol o “Protocolo de transferencia de hipertexto” en castellano), y HTTPS (Hyper Text Transfer Protocol SECURE).

HTTPS a diferencia de HTTP, trabaja sobre una sub-capa mas baja en el Modelo OSI y utiliza, generalmente, el puerto 443. No es un protocolo estrictamente hablando, sino que refiere el uso del HTTP sobre una capa de conexión Segura y cifrada (SSL).
Generalmente podemos ver un icono con la imagen de un “Candado” en la barra de nuestro navegador cuando utilizamos una conexión “Segura“. Pero qué significa en términos normales, “Conexión Segura” ?

Básicamente, significa que generamos una sesión con un servidor en la cual la información viaja a través de la red, encriptada. Lo cual implica al mismo tiempo que, solo nosotros (cliente), y el servidor, vamos a ser capaces de leer o interpretar la información transmitida.


La pregunta que muchos se harán en este punto es “Para y por qué? ” .

Situación Hipotética:

Imaginemos que estamos en un shopping (lugar público) que posee un hotspot para que nosotros podamos ir a tomar un café mientras revisamos nuestro correo electrónico y navegamos por las redes sociales.

A) La red no tiene contraseña, ergo, quien quisiera podría conectarse fácilmente.
B) La conexión se realiza por “Aire” o Wireless, ergo, cualquiera con una PC/Celular/Tablet podría capturar las señales transmitidas sin ningún esfuerzo.

Para un atacante con muy poca experiencia solo le bastaría con usar un “Sniffer” para poder hacer una captura de los datos que viajan a través de la red pública. Si usaramos simplemente el protocolo HTTP, nuestros datos viajarían en TEXTO PLANO, lo cual implica una lectura en línea de nuestra información mas privada, desde números de tarjetas de crédito, passwords, mails, hasta conversaciones de MSN.

En cambio, si usaramos una conexión “Segura“, cada vez que el cliente/servidor intercambien datos, la información es previamente procesada mediante métodos matemáticos de encriptacion para ofuscar la lectura de la transmisión, transformando de esta forma nuestra información en un pedazo de código ilegible para cualquiera que esté “Sniffeando” la red.

Captura de credenciales de FB enviadas a través de protocolo HTTP

Información En Texto Plano

Captura de credenciales de FB enviadas a través de protocolo HTTPS

Información Encriptada – No Legible

La mayoria de los sitios tienen implementada la conexión Segura por defecto para evitar este tipo de ataques. Sin embargo, como veremos en los siguientes articulos, existen otros que solamente proveen por defecto el INICIO DE SESION con conexión segura y deja el resto de la sesión al descubierto para que el usuario decida por iniciativa propia, encriptar o no, su información.

Por mas seguridad que pueda proveernos la tecnologia, es indispensable evitar lo innecesario para reducir las chances de ser víctimas de ataques informáticos.

Fuente: Gustavo Nicolas Ogawa, de la redacción del Blog de Mkit Argentina

Facebook sigue siendo inseguro

Varias veces me ha pasado la semana pasada de encontrarme con el siguiente mensaje shockeante en mi navegador:

Como buen paranóico que soy, lo primero que pensé es:

  1. Me metí en un Rogue Access Point
  2. Me hicieron Man-In-The-Middle con un certificado falso
  3. Estuve navegando durante 10 minutos hasta darme cuenta del error, asi que existe una gran posibilidad de que alguien haya visto mis actividades
  4. FUUUUUUU (para los que no estén familiarizados con el MEME, vean aquí)

Desesperado, me puse a analizar la MAC del gateway contra la MAC de mi Access Point (al cual tengo acceso físico y pude ver su MAC directamente desde el aparato). Todo concordaba. Entonces pensé “ok, hicieron su tarea y se fueron”. Entonces me puse a revisar logs de conexión y demás, y todo daba indicios de que jamás me conecté a otro hotspot que no fuera mi propia red Wireless.  Me senté a analizar QUE pudo haber pasado…. Sin respuesta.

Hasta que se me ocurrió revisar el error del navegador en detalle:



Resulta ser que dentro de mi sensación de seguridad obtenida al navegar por la red social a través de HTTPS, existen ciertos componentes inseguros que se escapan por el costado. Esta actividad es de esperarse, ya que los webmasters organizan el site para que el material sin valor personal (como ADs, imagenes genéricas del sitio, etc) se transmitan en texto plano para reducir el overhead causado en el servidor por realizar un canal seguro.

Como ya estaba con las manos en la masa, decidí analizar que contenido se transmitía en texto plano. Así que revisé el código fuente del sitio, y grande fue mi sorpresa cuando me encontré con lo siguiente:

Enlaces externos a Facebook que se transmitían hacia el usuario en texto plano. POR QUE ??? No es necesario!!

Entiendo que el usuario igualmente termine navegando por texto plano en los links externos (ya que no todos los sitios proveen servicios de HTTPS), pero al menos dentro de la navegación en Facebook podrían mantenerse encriptados.

Así es como Debería ser:


Facebook debería obtener el contenido inseguro del servidor original e incrustarlo dentro de su canal SSL.

Sin embargo, esto es lo que está sucediendo:

El usuario está siendo engañado, al creer que todo su contenido se transmite de manera segura. Sin embargo, Facebook para evitar consumo de recursos en sus servidores, permite un agujero de seguridad importantísimo.

Asi que les recomiendo que tengan cuidado con la información que manejan por Facebook, aunque vean HTTPS en el título. Y cuando vean un mensaje de error en su navegador, léanlo en detalle.

Saludos!