Blaster, Sasser y la Era de los Gusanos de Red (2003-2004)
Entre 2003 y 2004, SQL Slammer, Blaster y Sasser demostraron que un gusano podía paralizar internet en minutos sin intervención humana. Explotaban vulnerabilidades de Windows conocidas y parcheadas, pero millones de sistemas seguían expuestos. La respuesta de Microsoft fue Windows XP SP2, que cambió las reglas para siempre.
El contexto: internet sin firewall
Para entender por qué 2003 y 2004 fueron los años más destructivos en la historia de los gusanos informáticos, hay que entender cómo estaba configurado el sistema operativo dominante del planeta.
Windows XP, lanzado en octubre de 2001, traía un componente llamado Internet Connection Firewall. Existía. Estaba instalado. Pero venía desactivado por defecto. Microsoft lo incluyó como herramienta opcional, no como protección esencial. La razón era pragmática: activarlo rompía compatibilidad con software corporativo, juegos en red y aplicaciones P2P. En un mercado donde la facilidad de uso era el argumento de venta principal, bloquear conexiones entrantes se consideraba un obstáculo.
El resultado: cientos de millones de máquinas con Windows XP conectadas a internet con todos los puertos abiertos. Servicios como RPC (Remote Procedure Call), LSASS (Local Security Authority Subsystem Service) y SQL Server escuchaban conexiones entrantes sin filtro. Cada una de esas máquinas era un objetivo perfecto para cualquier exploit remoto.
La brecha entre la publicación de un parche y su aplicación masiva (el "patch gap") era de semanas o meses. Las empresas probaban parches antes de desplegarlos. Los usuarios domésticos no sabían que existían. Windows Update existía, pero las actualizaciones automáticas no estaban habilitadas por defecto hasta XP SP2.
Este era el terreno. Los gusanos de 2003 y 2004 lo recorrieron a velocidad sin precedentes.
SQL Slammer: 376 bytes que paralizaron internet (enero 2003)
El 25 de enero de 2003, a las 05:30 UTC, un paquete UDP de 376 bytes comenzó a propagarse por internet. En 10 minutos, aproximadamente 75.000 servidores Microsoft SQL Server 2000 estaban infectados. En 30 minutos, el tráfico generado por el gusano había saturado enlaces troncales de internet en todo el mundo.
SQL Slammer (también conocido como Sapphire) no era un programa complejo. Era un único paquete UDP de 376 bytes dirigido al puerto 1434 (SQL Server Resolution Service). Contenía un exploit para la vulnerabilidad MS02-039, un buffer overflow en el servicio de resolución de SQL Server 2000 que Microsoft había parcheado seis meses antes, en julio de 2002.
Anatomía del ataque
El mecanismo era brutal en su eficiencia:
- El paquete UDP llegaba al puerto 1434 de un servidor SQL Server sin parchear
- El buffer overflow se ejecutaba, dando control al código del gusano
- El código (376 bytes, residente solo en memoria) generaba direcciones IP aleatorias
- Enviaba copias de sí mismo a esas direcciones por UDP, tan rápido como el ancho de banda lo permitiera
- No escribía nada en disco. No modificaba archivos. Solo existía en memoria RAM
SQL Slammer - Cadena de propagación
[Servidor infectado]
│
├──→ UDP:1434 → IP aleatoria 1 → ¿SQL Server sin parche? → INFECTADO
├──→ UDP:1434 → IP aleatoria 2 → ¿SQL Server sin parche? → INFECTADO
├──→ UDP:1434 → IP aleatoria 3 → No responde → siguiente
├──→ UDP:1434 → IP aleatoria 4 → ¿SQL Server sin parche? → INFECTADO
└──→ ... (miles de paquetes por segundo)
Cada servidor infectado repite el mismo patrón inmediatamente.
Duplicación cada 8,5 segundos. Saturación global en ~15 minutos.
La velocidad era posible por tres factores:
- UDP, no TCP: sin handshake de tres vías, sin esperar confirmación. Disparar y olvidar.
- 376 bytes: un único paquete. No hacía falta fragmentar ni ensamblar.
- Solo memoria: no perdía tiempo escribiendo en disco ni instalando persistencia.
Impacto global
SQL Slammer no tenía payload destructivo. No borraba datos, no robaba información, no instalaba backdoors. Su único efecto era propagarse. Pero la avalancha de tráfico UDP que generaba saturó routers y enlaces troncales en todo el mundo:
| Sistema afectado | Impacto |
|---|---|
| Bank of America | 13.000 cajeros automáticos fuera de servicio |
| Sistemas 911 (Seattle, Washington) | Llamadas de emergencia no podían procesarse |
| Continental Airlines | Sistema de check-in caído, vuelos retrasados |
| Corea del Sur | Internet del país prácticamente inaccesible durante horas |
| Akamai (CDN) | Monitorización DNS interrumpida |
| 5 de los 13 root DNS servers | Inaccesibles durante el pico del ataque |
El gusano alcanzó su tasa máxima de infección en aproximadamente 10 minutos. Después se auto-limitó: la cantidad de tráfico que generaba era tan masiva que los propios enlaces de red se congestionaban, impidiendo que los paquetes del gusano llegaran a nuevos objetivos. Slammer se ahogó en su propio éxito.
Lecciones ignoradas
SQL Slammer debería haber sido una llamada de atención definitiva. El parche existía desde hacía seis meses. El exploit era conocido. La vulnerabilidad estaba documentada. Y aun así, 75.000 servidores seguían expuestos.
La industria tomó nota. Los administradores de sistemas se apresuraron a parchear. Los análisis post-mortem llenaron conferencias de seguridad durante meses. Pero la lección fundamental (que los sistemas conectados a internet necesitan firewalls y parches automáticos) no se aprendió a nivel de sistema operativo. No todavía.
Siete meses después, Blaster demostraría que la lección no se había aprendido.
Blaster/MSBlast: el gusano con mensaje para Bill Gates (agosto 2003)
El 11 de agosto de 2003, el gusano Blaster (también conocido como MSBlast o Lovesan) comenzó a propagarse explotando la vulnerabilidad MS03-026, un buffer overflow crítico en la interfaz DCOM RPC de Windows. Microsoft había publicado el parche el 16 de julio. Habían pasado 26 días.
La vulnerabilidad: DCOM RPC
DCOM (Distributed Component Object Model) era el mecanismo de Windows para la comunicación entre procesos en red. El servicio RPC (Remote Procedure Call) escuchaba en el puerto TCP 135 y estaba activo por defecto en Windows 2000, XP y Server 2003. No se podía desactivar sin romper funcionalidad crítica del sistema.
La vulnerabilidad MS03-026 era un buffer overflow clásico en la interfaz DCOM del servicio RPC. Un atacante podía enviar un paquete especialmente diseñado al puerto 135 y ejecutar código arbitrario con privilegios de SYSTEM (el nivel más alto de Windows).
Propagación y síntomas
Blaster escaneaba rangos de direcciones IP en el puerto TCP 135 buscando sistemas vulnerables. Al encontrar uno, enviaba el exploit y, si tenía éxito, descargaba el archivo msblast.exe (6.176 bytes) mediante TFTP desde la máquina atacante.
Los usuarios infectados veían un síntoma inconfundible: un cuadro de diálogo del sistema anunciando que Windows se reiniciaría en 60 segundos. No había forma de cancelarlo. El contador avanzaba y el sistema se reiniciaba. Al volver a conectarse a internet, el ciclo se repetía.
Blaster - Flujo de infección
1. Gusano escanea → TCP:135 (DCOM RPC)
2. Encuentra sistema vulnerable
3. Envía exploit MS03-026 → buffer overflow → ejecución de código
4. Descarga msblast.exe (6.176 bytes) vía TFTP
5. msblast.exe se instala como servicio de Windows
6. Crea entrada en registro: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
"windows auto update" = msblast.exe
7. Comienza a escanear nuevas IPs desde el rango de la víctima
8. El crash del servicio RPC provoca reinicio con cuenta regresiva de 60 segundos
El mensaje dentro del binario era directo:
"I just want to say LOVE YOU SAN!! billy gates why do you make this possible? Stop making money and fix your software!!"
El ataque DDoS planificado
Blaster contenía una función adicional: el 16 de agosto de 2003, todas las máquinas infectadas debían lanzar un ataque de denegación de servicio distribuido (DDoS) contra windowsupdate.com. La idea era irónica: impedir que los usuarios descargaran el parche que los protegía.
Microsoft reaccionó desactivando el dominio windowsupdate.com (que era un redirect) y manteniendo activo windowsupdate.microsoft.com, que Blaster no atacaba. El DDoS se neutralizó sin impacto significativo.
Jeffrey Lee Parson y las variantes
El Blaster original (Blaster.A) no fue atribuido a un autor identificado. Sin embargo, una variante (Blaster.B) fue rastreada hasta Jeffrey Lee Parson, un joven de 18 años de Hopkins, Minnesota. Parson había modificado el código original de Blaster.A, añadiendo un backdoor que reportaba a su sitio web personal. Fue arrestado el 29 de agosto de 2003 y condenado a 18 meses de prisión.
El caso Parson ilustró un patrón recurrente: el exploit original era sofisticado, pero las variantes las creaban adolescentes modificando el código con cambios mínimos.
Impacto de Blaster
Las cifras oficiales hablan de más de 500.000 sistemas infectados, aunque estimaciones independientes sitúan el número entre 8 y 16 millones. El impacto fue especialmente severo en redes corporativas donde los parches se desplegaban con lentitud:
| Sector | Impacto |
|---|---|
| Redes corporativas | Departamentos IT desbordados, redes saturadas por escaneo |
| Usuarios domésticos | Reinicios cíclicos, incapacidad de usar internet |
| Infraestructura crítica | Sistemas SCADA y control industrial con Windows sin parchear afectados |
| ISPs | Soporte técnico colapsado durante semanas |
Blaster forzó a Microsoft a replantear su modelo de seguridad. Internamente, el incidente aceleró el desarrollo de Windows XP SP2, que llegaría un año después.
Sasser: el golpe final que aterrizó aviones (abril 2004)
El 30 de abril de 2004, ocho meses después de Blaster, el gusano Sasser comenzó a propagarse explotando una vulnerabilidad diferente pero con un patrón casi idéntico. Esta vez el objetivo era el servicio LSASS (Local Security Authority Subsystem Service) de Windows, a través de la vulnerabilidad MS04-011, otro buffer overflow. Microsoft había publicado el parche el 13 de abril. Habían pasado 17 días.
LSASS: otro servicio crítico expuesto
LSASS era el servicio responsable de la autenticación de usuarios en Windows. Gestionaba logins, tokens de seguridad y políticas de contraseñas. Como el servicio RPC que Blaster explotó, LSASS estaba activo por defecto y escuchaba en puertos de red sin protección de firewall.
La vulnerabilidad MS04-011 permitía ejecutar código remoto enviando un paquete malformado al puerto TCP 445 (SMB/CIFS). El exploit causaba un buffer overflow en el proceso lsass.exe.
Propagación sin intervención humana
Sasser no necesitaba que el usuario hiciera absolutamente nada. No llegaba por email. No requería descargar un archivo. No hacía falta visitar una web. Bastaba con tener un Windows 2000 o XP conectado a internet sin el parche MS04-011 y sin firewall.
Sasser - Flujo de infección
1. Gusano escanea IPs aleatorias → TCP:445 (SMB)
2. Envía exploit MS04-011 → buffer overflow en lsass.exe
3. Abre un shell remoto en la víctima (puerto TCP 9996)
4. Descarga el ejecutable del gusano vía FTP (puerto 5554)
5. Se instala como avserve.exe o avserve2.exe
6. Crea entrada en registro para persistencia
7. Inicia FTP server en puerto 5554 para distribuir copias
8. Comienza a escanear nuevas IPs
9. El crash de lsass.exe provoca: "El sistema se apagará en 60 segundos"
El síntoma visible era familiar para quien hubiera vivido Blaster: un cuadro de diálogo informando que lsass.exe había fallado y que el sistema se reiniciaría en 60 segundos. La cuenta regresiva era inevitable. Algunos usuarios descubrieron que ejecutar shutdown -a en la línea de comandos cancelaba el reinicio temporalmente, pero el gusano volvía a provocar el crash.
Impacto: aviones en tierra, hospitales paralizados
Sasser infectó millones de sistemas en todo el mundo. A diferencia de SQL Slammer, que afectó principalmente a servidores, Sasser atacaba estaciones de trabajo comunes con Windows XP. Eso significaba que los sistemas afectados estaban en todas partes:
| Organización | Impacto |
|---|---|
| Delta Air Lines | 40 vuelos cancelados, múltiples retrasados. Sistemas de check-in caídos |
| Agence France-Presse (AFP) | Comunicaciones por satélite interrumpidas durante horas |
| Hospitales (varios, Europa) | Sistemas administrativos y de programación caídos |
| British Coastguard | Sistemas de mapeo electrónico fuera de servicio |
| Goldman Sachs | Oficinas afectadas en múltiples países |
| Comisión Europea | Servidores de email caídos |
| Deutsche Post | 300.000 terminales afectadas |
| Sampo Bank (Finlandia) | 130 sucursales cerradas |
La cancelación de vuelos de Delta Air Lines fue el momento en que la cobertura mediática se disparó. Un gusano informático creado por un adolescente estaba aterrizando aviones comerciales.
Sven Jaschan: 17 años, desde su habitación
El 7 de mayo de 2004, la policía alemana arrestó a Sven Jaschan, un estudiante de 17 años de Rotenburg an der Wümme, Baja Sajonia. Jaschan había creado Sasser (y también Netsky, otro gusano prolífico) desde su habitación en casa de sus padres.
Microsoft había ofrecido una recompensa de 250.000 dólares por información que llevara al autor de Sasser. La pista la dio un compañero de clase de Jaschan que reclamó la recompensa.
Jaschan fue juzgado como menor de edad (había creado Sasser antes de cumplir 18 años, tres días antes de su arresto). La sentencia: 21 meses de libertad condicional. No pisó la cárcel.
El desenlace añadió una capa de absurdo a la historia. Tras cumplir su condena, Jaschan fue contratado por Securepoint, una empresa alemana de seguridad informática. El creador del gusano que aterrizó aviones y cerró hospitales pasó a trabajar defendiendo redes.
La anatomía compartida: por qué funcionaban
SQL Slammer, Blaster y Sasser eran gusanos diferentes que explotaban vulnerabilidades diferentes. Pero compartían una arquitectura de propagación que los hacía devastadoramente efectivos:
| Característica | SQL Slammer | Blaster | Sasser |
|---|---|---|---|
| Fecha | Enero 2003 | Agosto 2003 | Abril 2004 |
| Vulnerabilidad | MS02-039 (SQL Server) | MS03-026 (DCOM RPC) | MS04-011 (LSASS) |
| Puerto | UDP 1434 | TCP 135 | TCP 445 |
| Patch gap | 6 meses | 26 días | 17 días |
| Interacción usuario | Ninguna | Ninguna | Ninguna |
| Tamaño | 376 bytes | 6.176 bytes | ~15 KB |
| Persistencia en disco | No (solo RAM) | Sí (registro + archivo) | Sí (registro + archivo) |
| Payload destructivo | No | DDoS contra windowsupdate.com | No |
| Autor identificado | No | Variante B: Jeffrey Lee Parson (18 años) | Sven Jaschan (17 años) |
El patrón común era claro:
- Servicio de red activo por defecto: Windows exponía servicios críticos sin preguntar al usuario.
- Sin firewall: Windows XP no filtraba conexiones entrantes por defecto.
- Patch gap: el tiempo entre la publicación del parche y su aplicación masiva era demasiado largo.
- Propagación autónoma: no requería ingeniería social, phishing ni interacción humana.
Estos gusanos eran la consecuencia inevitable de un sistema operativo diseñado para la comodidad, no para la seguridad, conectado a una red global sin protección perimetral básica.
MITRE ATT&CK: técnicas de la era de los gusanos de red
Los gusanos de 2003-2004 representan las técnicas de explotación de red en su forma más pura:
| Técnica MITRE | ID | Uso en estos gusanos |
|---|---|---|
| Exploit Public-Facing Application | T1190 | SQL Slammer explotaba SQL Server 2000 expuesto a internet. Blaster y Sasser atacaban servicios Windows accesibles desde la red |
| Exploitation of Remote Services | T1210 | Los tres gusanos explotaban vulnerabilidades en servicios remotos (RPC, LSASS, SQL Server Resolution) para ejecutar código sin autenticación |
| Endpoint Denial of Service | T1499 | Slammer saturaba la red con tráfico UDP. Blaster provocaba reinicios cíclicos. Sasser crasheaba lsass.exe causando reinicios forzados |
La diferencia con el malware moderno es que estas técnicas se aplicaban de forma indiscriminada, escaneando internet entero. El malware actual usa T1190 y T1210 de forma dirigida, contra objetivos específicos identificados mediante reconocimiento previo.
Windows XP SP2: la respuesta que cambió las reglas (agosto 2004)
El 25 de agosto de 2004, Microsoft lanzó Windows XP Service Pack 2. No era una actualización menor. Era una reconfiguración fundamental de la postura de seguridad de Windows.
Cambios clave
Windows Firewall activado por defecto: el cambio más importante. El antiguo Internet Connection Firewall, que existía pero nadie activaba, fue reemplazado por Windows Firewall, habilitado automáticamente. Por primera vez, las conexiones entrantes no solicitadas eran bloqueadas por defecto.
Data Execution Prevention (DEP): protección a nivel de hardware y software que impedía la ejecución de código en regiones de memoria marcadas como datos. Los buffer overflows que SQL Slammer, Blaster y Sasser usaban dependían de ejecutar código inyectado en el stack. DEP hacía ese tipo de explotación significativamente más difícil.
Security Center: un panel centralizado que mostraba el estado del firewall, las actualizaciones automáticas y el antivirus. Si alguno estaba desactivado, Windows mostraba un icono de alerta persistente en la bandeja del sistema. Era imposible ignorarlo.
Automatic Updates habilitadas: Windows Update pasó a estar configurado por defecto para descargar e instalar actualizaciones automáticamente. El patch gap se redujo drásticamente.
El coste de la seguridad
XP SP2 fue controvertido. El firewall rompió aplicaciones corporativas que dependían de conexiones entrantes. DEP causó crashes en software legítimo mal programado. Algunas empresas retrasaron el despliegue durante meses por problemas de compatibilidad.
Pero la alternativa era peor. La oleada de Slammer, Blaster y Sasser había demostrado que un Windows conectado a internet sin firewall era un sistema comprometido en cuestión de minutos. Pruebas del SANS Internet Storm Center mostraron que un Windows XP SP1 sin firewall conectado directamente a internet era infectado en un promedio de 20 minutos. En algunos casos, menos de 4.
XP SP2 no eliminó todas las vulnerabilidades de Windows. Pero cerró la era de los gusanos de propagación masiva por red. Después de agosto de 2004, este tipo de epidemias ya no volverían a ser tan devastadoras.
Excepto una.
El preludio de algo peor
En noviembre de 2008, un nuevo gusano apareció explotando la vulnerabilidad MS08-067 en el servicio Windows Server. Se llamaba Conficker. Infectaría entre 9 y 15 millones de sistemas, demostrando que incluso con Windows Firewall habilitado, la combinación de redes corporativas mal segmentadas, USB infectados y credenciales débiles podía crear una epidemia de proporciones masivas.
Pero esa es la historia del próximo capítulo.
Línea temporal completa
| Fecha | Evento |
|---|---|
| Julio 2002 | Microsoft publica parche MS02-039 (SQL Server) |
| 25 enero 2003 | SQL Slammer infecta 75.000 servidores en 10 minutos |
| 16 julio 2003 | Microsoft publica parche MS03-026 (DCOM RPC) |
| 11 agosto 2003 | Blaster/MSBlast comienza a propagarse |
| 16 agosto 2003 | Blaster intenta DDoS contra windowsupdate.com (neutralizado) |
| 29 agosto 2003 | Jeffrey Lee Parson arrestado por Blaster variante B |
| 13 abril 2004 | Microsoft publica parche MS04-011 (LSASS) |
| 30 abril 2004 | Sasser comienza a propagarse |
| 1 mayo 2004 | Delta Air Lines cancela 40 vuelos por Sasser |
| 7 mayo 2004 | Sven Jaschan (17 años) arrestado en Alemania |
| 25 agosto 2004 | Microsoft lanza Windows XP SP2 con firewall por defecto |
| 8 julio 2005 | Jaschan condenado a 21 meses de libertad condicional |
Conclusión: la seguridad no puede ser opcional
La era de los gusanos de red de 2003-2004 dejó una lección que parece obvia en retrospectiva: la seguridad no puede depender de que el usuario la active manualmente. Cuando millones de sistemas están conectados a una red global con servicios expuestos y sin protección perimetral, la explotación masiva no es un riesgo. Es una certeza.
SQL Slammer demostró que un exploit podía propagarse más rápido que cualquier respuesta humana. Blaster demostró que 26 días de patch gap eran suficientes para infectar medio millón de máquinas. Sasser demostró que un adolescente de 17 años podía aterrizar aviones comerciales desde su habitación.
La respuesta de Microsoft (Windows Firewall por defecto, DEP, actualizaciones automáticas) fue tardía pero efectiva. XP SP2 marcó el punto de inflexión entre un Windows diseñado para la comodidad y un Windows diseñado para sobrevivir en internet.
Pero los atacantes también aprendieron. Si los puertos están cerrados, hay que encontrar otra puerta. La era de los gusanos de red dio paso a la era del malware que llega por email, por web, por USB. Y en 2008, Conficker combinaría todas esas vías en un gusano que haría que Blaster y Sasser parecieran ejercicios de prácticas.
Preguntas frecuentes
Libros recomendados
Artículos relacionados
Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.