La evolución de la seguridad: la historia de Código Rojo

La historia del primer ataque serio a una infraestructura TI corporativa.

Código Rojo era un gusano dirigido a los sistemas basados en Windows con Microsoft IIS (Servicios de Información de Internet para Servidores Windows por sus siglas en inglés) instalado. Su historia al menos tiene un feliz comienzo: la propagación del malware fue detectada justo al inicio del brote. Quienes descubrieron el Código Rojo eran investigadores de eEye Security, y al momento de la detección (13 de julio de 2001) desarrollaban un sistema para encontrar vulnerabilidades de Microsoft IIS. De repente, su servidor de prueba dejó de responder. A esto le siguió una noche sin poder dormir, donde se la pasaron examinando los registros del sistema en busca de rastros de infección. Nombraron al malware por el primer objeto que llamo su atención: una la de refresco Mountain Dew Code Red (Código Rojo en español).

Sin embargo, la detección relativamente temprana hizo poco para detener la pandemia. El malware utilizó sistemas ya infectados para ataques posteriores y, en cuestión de días, ya se había extendido a nivel mundial. Después, el Centro de Análisis de Datos de Internet Aplicados (CAIDA por sus siglas en inglés) dio a conocer las estadísticas del 19 de julio, las cuales demostraron claramente la velocidad de distribución del Código Rojo. Según varias fuentes, más de 300.000 servidores fueron a tacados en total.

Propagación del gusano Código Rojo a partir del 19 de julio de 2001Spread of the Code Red worm as of July 19, 2001. <a href="https://www.caida.org/archive/code-red/" target="_blank">Fuente</a>

Propagación del gusano Código Rojo a partir del 19 de julio de 2001Spread of the Code Red worm as of July 19, 2001. Fuente

Cómo funciona Código Rojo

El gusano de internet explotó una vulnerabilidad trivial en uno de los módulos del servidor web, de forma más específica una extensión para la indexación de datos. Hubo un error de desbordamiento de búfer en la biblioteca idq.dII. La vulnerabilidad recibió el identificador MS01-33. El error es fácil de explotar: solo hay que enviar al servidor una solicitud demasiado larga como esta:

GET /default.ida?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a  HTTP/1.0

Como resultado, los resultados después de los numerosos caracteres “N” se interpretan como instrucciones y se ejecutan. Toda la carga útil maliciosa está contenida directamente en la solicitud; o sea, con una instalación vulnerable de Microsoft IIS, se garantiza que el sistema será infectado de forma instantánea. La consecuencia más visible de dicha infección fue, literalmente, la desfiguración de los sitios servidos por el servidor web. En lugar de su contenido usual, se mostró el siguiente resguardo:

Cómo se veía un sitio web en un servidor infectado con Código Rojo. <a href="https://www.kaspersky.com/about/press-releases/2001_a-new-generation-of--fileless-network-worm-has-unleashed-global-chaos" target="_blank">Fuente</a>

Cómo se veía un sitio web en un servidor infectado con Código Rojo. Fuente

De acuerdo con Kaspersky, la desfiguración no fue permanente: 10 horas después del exitoso ataque, el gusano restauró el contenido normal del sitio web. Otras acciones dependían de la fecha. Del 1 al 19 de cada mes, el gusano se propagaba mediante solicitudes maliciosas enviadas a direcciones IP aleatorias. Del 20 al 27, varias direcciones IP fijas fueron atacadas mediante DDoS, incluida la del sitio web de la administración presidencial de Estados Unidos. Desde el 28 y hasta fin de mes, Código Rojo tomaba un nada merecido descanso.

La vista desde 2022

Todavía ocurren incidentes parecidos hoy en día, pero suelen estar asociados con vulnerabilidades de día cero que se detectan más frecuentemente cuando se investiga un ataque activo. Un típico ejemplo es una serie de vulnerabilidades en el servidos de correo de Microsoft Exchange que se explotó de manera activa al momento de la detección. Más de 30.000 organizaciones alrededor del mundo se vieron afectadas y los administradores de servicios de correo de muchas empresas se vieron obligados a instalar un parche y a realizar una auditoría en caso de que ya se hubiera producido una infección.

Este ejemplo no solo muestra que los ataques se han vuelto mucho más sofisticados, sino también que las defensas han progresado. Código Rojo no explotó una vulnerabilidad de día cero, sino una que se detectó y cerró un mes antes de la pandemia. Pero en aquel entonces, la lentitud en la instalación de actualizaciones, la falta de herramientas para instalaciones automáticas y la poca conciencia de los usuarios corporativos jugaron un papel muy importante. Otra diferencia importante entre Código Rojo y los ataques modernos es la falta de monetización. Actualmente, un ataque al servidor de una empresa vulnerable daría pie, indudablemente, al robo o cifrado de datos, además de una demanda de rescate. Además, los cibercriminales de hoy en día rara vez desfiguran los sitios hackeados; al contrario, es más probable que tomen todas las medidas posibles para ocultar sus huellas en una infraestructura de una empresa TI.

Una amarga lección

Hay que decirlo: Código Rojo abandonó la escena bastante rápido. En agosto de 2001 apareció una versión ligeramente modificada. Código Rojo II era capaz de infectar sistemas que ya había sido “visitados” por la primera variante del gusano. Sin embargo, en términos generales, a principios de los 2000 hubo muchos otros ataques en escenarios perecidos. Para septiembre de 2001 vimos la epidemia del gusano Nimda, el cual también aprovechó las vulnerabilidades parcheadas en Microsoft IIS durante mucho tiempo. En 2003, el gusano Blaster se extendió por todas partes.

Finalmente, se corrió la voz de que los parches para las vulnerabilidades críticas en el software corporativo deben ser instaladas cuanto antes: cuando se lanza una actualización, los cibercriminales estudian cuidadosamente y comienzan a explotar la vulnerabilidad de inmediato, con la esperanza de que algunos usuarios no hayan instalado la actualización. Pero incluso ahora, no se puede decir que el problema está resuelto. Existen ejemplos más recientes, como el ataque WannaCry de 2017.

Sin embargo, lo que se puede decir es que Código Rojo, así como muchos otros programas maliciosos responsables de infectar cientos de miles de sistemas en todo el mundo, ayudaron a dar forma a los enfoques de seguridad corporativa que nos guían hoy en día. A diferencia de hace 21 años, ahora dependemos totalmente de los sistemas de TI para todo, desde las comunicaciones hasta los pagos, sin mencionar la infraestructura crítica. Hemos aprendido cómo defendernos ante los ataques cibernéticos, pero todavía tenemos que producir una bala de plata para todos los problemas comerciales en el ciberespacio. A medida que la ciberseguridad evoluciona, inevitablemente debemos reconocer que la seguridad perfecta no es algo que se mantenga fijo, sino una lucha constante.

Más probado. Más premiado.

Consejos