¿Qué tan vulnerable estamos los Colombianos ante el Ataque DROWN?
Los fallos que afectan los sistemas de cifrado que soportan HTTPS han estado a la orden del día los últimos años, ya conocemos BEAST, POODLE, Heartbleed, FREAK, Logjam y todos estos problemas de seguridad que buscan apoderarse de nuestras comunicaciones "cifradas", pero es del ultimo ataque de este tipo del que vamos a hablar en esta entrada, ya ha conseguido grandes titulares en la prensa especializada y no es para menos, ya que el DROWN Attack, como se le conoce, ha logrado afectar a grandes sitios en la red sin que apenas los usuarios nos demos cuenta.
Y ustedes se preguntarán... ¿Qué es el DROWN Attack?, empecemos por el nombre, DROWN viene del acrónimo de Decrypting RSA withObsolete and Weakened eNcryption (descifrado de RSA con un cifrado obsoleto y debilitado), es un problema que afecta HTTPS y otros servicios que utilizan SSL / TLS que todavía soportan el viejo SSLv2 y permiten a un atacante forzar al servidor a utilizar esta versión vulnerable de SSL aunque el usuario este realizando una conexión TLS correctamente verificada, de esta forma puede suplantar fácilmente la pagina y capturar la información que supuestamente estaba cifrada sin que el usuario se de cuenta de ello.
A nivel de usuario no podemos hacer nada, ya que el problema se encuentra en los servidores a los que accedemos, la solución general es desactivar de base el soporte a SSLv2 en los servicios que lo tengan soportado y actualizar las versiones de todos nuestros servidores (ya hay parches para casi todos los sistemas operativos, pero es mejor eliminar SSLv2 de base).
Ya que sabemos a grandes rasgos que es el Ataque DROWN y como puede afectarnos, me puse en la tarea de saber como nos encontrábamos en Colombia respecto a este fallo, para ello utilizando SHODAN como base lo primero que hice fue buscar cuantos servidores indexados por este motor, tienen soporte todavía al viejo y vulnerable SSLv2 usando el siguiente filtro:
[box type="info"] country:co ssl.version:sslv2[/box]
El resultado de esta búsqueda me arrojó datos bastante interesantes, ya que de todos los servidores que tiene indexado SHODAN en Colombia (3.057.158):
[box type="info"] country:co[/box]
El 2,03% es decir 62.352 aun contaban con soporte para SSLv2:
[box type="info"] country:co ssl.version:sslv2[/box]
Generando el reporte que permite realizar SHODAN, tenemos aún más información interesante, como las ciudades donde más servidores con versiones viejas de SSL están expuestos a internet:
Los proveedores que utilizan la mayoría de servidores con versiones viejas de SSL:
Los servicios que mas usan estas versiones viejas:
Y las otras versiones activas de SSL que estaban corriendo junto a SSLv2:
En la ultima gráfica se puede observar como la mayoría de estos servidores expuestos a Internet con versiones viejas y vulnerables de SSL, tienen soporte para TLS pero no desactivan las versiones viejas de SSL, lo que demuestra falta de concientizacion o desconocimiento de sus administradores frente a los problemas que ha sufrido SSL en los últimos años.
Debes estar pensando... hey pero el hecho que tenga SSLv2 activado no quiere decir que el servidor sea vulnerable al ataque DROWN y es verdad, para saber esto es necesario realizar un test especifico como el que han puesto en el sitio web del DROWN Attack los investigadores que reportaron este fallo.
Tenemos 2 opciones para realizar las pruebas en nuestro servidor, podemos usar el script en python para testear uno a uno las direcciones IP con SSLv2 activo o usar la versión online disponible en test.drownattack.com; Personalmente no me agradaba mucho la idea de estar dejando mi ip por un montón de servidores que desconozco y quiero pensar que un administrador juicioso que revise los logs y vea peticiones desde test.drownattack.com, por lo menos se enterará del problema y posiblemente lo resuelva, es por eso que decidí usar la versión web.
El siguiente paso fue comprar los créditos necesarios en SHODAN para poder descargar los resultados que ya tenia de los servidores en Colombia con versiones de SSL vulnerables (si te quieres ahorrar los 5 dolares, al final del articulo te dejo el archivo descargado para que lo uses en tus investigaciones), y programar un pequeño script para automatizar las peticiones a test.drownattack.com (que hasta la fecha esta sin captcha, pero no es raro que lo implementen pronto), pasando como parámetro la dirección IP y finalmente guardando el resultado en un CSV para facilitar el proceso.
Lo que me arrojaría como resultado, cuantas de las 10.000 direcciones IPs Colombianas con SSLv2 activo eran vulnerables al DROWN Attack:
Lo que nos muestra el preocupante panorama en el que se encuentran los servidores de Usuarios y empresas Colombianas frente a un ataque como el DROWN.
Pensaba que después de automatizar los procesos para testear 10.000 servidores, realizar las gráficas, estadísticas y escribir este post hasta este punto. Ya podía irme a mi casa con mi esposa y mi niña, pero justo cuando estaba apagando las luces de la oficina para marcharme, se me enciende una luz en la cabeza y me pregunto "¿no es mas fácil que un colombiano pierda datos por este fallo en un servidor como el de yahoo que esta vulnerable a que lo haga conectándose a un servidor ubicado en pereira?" a lo cual me respondo con un SI, sabiendo que ese SI quería decir que aún me faltaba algo para dar por finalizado este post y que no llegaría a casa temprano.
Teniendo en cuenta ese nuevo vector de ultimo momento se me ocurre tomar el TOP 500 de sitios mas visitados en Colombia de Alexa.com para comprobar cuantos de ellos eran vulnerables al DROWN Attack, pero a diferencia de SHODAN, Alexa no ofrecía la posibilidad de comprar sus datos, por tanto era necesario automatizar la extracción de todas las URLS de sitios mas visitados en Colombia (si los necesitas también están en el paquete que dejaré adjunto para que hagas tus investigaciones) y luego probarlos en test.drownattack.com.
De todos los sitios testeados, solo el 19% era vulnerable al ataque, es decir 96 sitios del TOP 500 de paginas mas visitadas en Colombia son a día de hoy vulnerables al ataque DROWN, por lo que la información de los usuarios en estos sitios puede estar siendo capturada por personas mal intencionadas en este momento, aunque la cifra no parezca alta para algunos, la variedad de sitios con el problema van desde entidades bancarias, universidades, grandes medios de comunicación, almacenes de cadena, entidades gubernamentales, cadenas de cine y un largo etc que podrán ver en el adjunto que dejo con este post.
Espero que este texto sea de utilidad, si los datos que te comparto te sirven para algo, por favor deja tu comentario en el blog, me gustaría saber para que fueron usados ;-).
[box type="download"]DESCARGAR DATOS USADOS EN LA REALIZACIÓN DE ESTE POST, PARA QUE LO UTILICES EN TUS PROPIAS INVESTIGACIONES[/box]