Está en la página 1de 36

Sistemas Distribuidos de Denegacin de Servicio

http://www.fi.upm.es/~flimon/DDoS/ Pgina 1 de 36
20/11/2003
Sistemas Distribuidos
de
Denegacin de Servicio
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag1.html Pgina 2 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
Introduccin
Atques bsicos
Denegacin de Servicio
Sistemas Distribuidos de Denegacin Servicio
Intrusin Distribuida
Conclusiones
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag2.html Pgina 3 de 36
20/11/2003
Introduccin
Ref. histrica: Mito de Casandra

Informtico: Sabe lo que puede pasar. Avisa
Usuario: Le da igual. Eso no puede ser verdad
Cuando ocurre algo: A por el informtico!

Mucho dinero y tiempo en infraestructura de alertas
Globalizacin real a travs de Internet
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag3.html Pgina 4 de 36
20/11/2003
Ataques bsicos
Aos 80: el SS.OO. proporciona mecanismos suficientes para controlar lo que ocurra en
una mquina: last, who, ps, ...

Aparecen herramientas de borrado de huellas, y publicaciones electrnicas como alt.2600 y
Phrack.

Elaboracin de Troyanos sustitutos de programas bsicos del sistema operativo.

Distribucin de los root kit para diversas plataformas.

Aparicin de mecanismos de verificacin de autenticidad del software mediante checksum
(RPM de Red Hat) o mecanismos ms sofisticados.

Restablecer la confianza en un sistema asaltado: complejo, por no decir que imposible.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag4.html Pgina 5 de 36
20/11/2003
Denegacin de Servicio
Elaboracin de mtodos sofisticados: Spoofing, Hijacking o Smurfing.

Al estar mejor defendidos los sistemas, ya no es tan importante el entrar en ellos como el
imposibilitar su acceso.

DoS: impedir que los usuarios puedan acceder a un determinado sistema.

Precedente: mail bombing.

Coordinacin: telefnica, IRC. Lo que implicaba una capacidad limitada frente a grandes
sistemas.
TCP/IP v4 carece de mecanismos de seguridad para este tipo de ataques. Cuando se dise
se pensaba slo en ataques contra la infraestructura de comunicaciones.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/spoofing.html Pgina 6 de 36
20/11/2003
Spoofing
Falsificacin de la direccin IP origen del ataque.

Se emiten tramas IP con una direccin IP de origen falso, ya sea real o inventada.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/hijacking.html Pgina 7 de 36
20/11/2003
Hijacking
Secuestro de la comunicacin entre dos sistemas suplantando a uno de ellos.

Necesario estar situado en la ruta de comunicacin.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/smurfing.html Pgina 8 de 36
20/11/2003
Smurfing
Amplificacin de peticiones broadcast.

Envo de trama ICMP con IP origen la vctima y como destino la direccin broadcast de la
red atacada.

Por cada trama transmitida, contestarn a la vctima todos aquellos sistemas que tengan
habilitado el contestar a peticiones destinadas a broadcast.

FA (Factor de Amplificacin): relacin entre tramas recibidas por la vctima y tramas
transmitidas.


Ejemplo: /usr/sbin/ping -s <direccin_IP_broadcast> 0 <n>

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag5.html Pgina 9 de 36
20/11/2003
Denegacin de Servicio: Por qu?
Posibilidad: millones de ordenadores integrados en Internet con escasa o nula seguridad.
Ideal!

Calidad del software: programadores con escasa experiencia, menores plazos de desarrollo,
software ms complejo e insuficiente esfuerzo en control de calidad.

Prestaciones vs Seguridad: los propios usuarios reclaman prestaciones y no mejores niveles
de seguridad.

Personal no cualificado: imposible formar buenos administradores de sistemas en poco
tiempo. Se contrata personal sin cualificacin ni experiencia.

Defensa legal: Generalmente se internacionalizan los problemas, lo que suele traducirse en
indefensin legal.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag6.html Pgina 10 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
Escenario: sofisticados mecanismos de coordinacin y en ocasiones de comunicacin,
posibilidad de involucrar miles de ordenadores.

Resultados: ataques casi imposibles de repeler con los medios actuales.

Hiptesis?: realidad desde finales de 1999.

Nombres: Trinoo, Tribal Flood Network, TFN2K, Stacheldraht, Shaft, Mstream.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag7.html Pgina 11 de 36
20/11/2003
Trinoo
17/AGO/99: red Trinoo de 227 ordenadores colapsa durante 2 das la red de la Universidad
de Minnessota.


Atacante: controla a uno o ms maestros.

Maestro: controla gran cantidad de demonios.

Demonio: recibe la orden de realizar ataques contra una o ms vctimas.

Tipo de ataque: inundacin por tramas UDP.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag7.html Pgina 12 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag8.html Pgina 13 de 36
20/11/2003
Trinoo (caractersticas)
Atacante > Maestro: 27665/TCP

Maestro > Demonio: 27444/UDP

Demonio > Maestro: 31335/UDP

Comunicaciones protegidas por claves simtricas.

El Maestro mantiene una lista de Demonios activos cifrada mediante Blowfish.

Ataque: se enlaza el servicio chargen de un sistema con el servicio echo de otra. Esta
operacin se repite hasta que se logra colapsar la red.


Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag8.html Pgina 14 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag9.html Pgina 15 de 36
20/11/2003
Tribal Flood Network (TFN)
Estructura:


Atacante: controla a uno o ms clientes.

Cliente: controla gran cantidad de demonios.

Demonio: recibe la orden de realizar ataques contra una o ms vctimas.

Tipo de ataque: Generacin masiva de tramas ICMP, SYN o UDP, as como Smurfing.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag9.html Pgina 16 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/syn.html Pgina 17 de 36
20/11/2003
SYN
Las trams SYN, o tramas de sincronizacin, son el inicio de una comunicacin TCP:

En el caso de ataques por inundacin de tramas SYN, se envan solicitudes de conexin
SYN hasta colapsar la cola de solicitudes.

Esto implica que el sistema atacado no puede llegar a atender a los clientes reales.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag10.html Pgina 18 de 36
20/11/2003
TFN (caractersticas)
Atacante > Cliente: Conexin shell remoto a puerto TCP, UDP, ICMP, sesin SSH, o simple
Telnet a un puerto TCP determinado.

Cliente > Demonio: mediante tramas ICMP_ECHOREPLY

El acceso a los clientes no esta protegido.

Tanto los clientes como los demonios necesitan ejecutar con privilegios de root por utilizar
sockets del tipo SOCK_RAW.

Cada cliente dispone de un fichero con las direcciones de los demonios. En las ltimas
versiones apareca cifrado mediante Blowfish.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag11.html Pgina 19 de 36
20/11/2003
Tribal Flood Network 2000 (TFN2K)
Estructura: similar a TFN, aunque cambia la terminologa.


Atacante: controla a uno o ms clientes.

Maestro: controla gran cantidad de demonios.

Agente: recibe la orden de realizar ataques contra una o ms vctimas.

Tipo de ataque: Generacin masiva de tramas ICMP, SYN o UDP, as como Smurfing.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag11.html Pgina 20 de 36
20/11/2003
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag12.html Pgina 21 de 36
20/11/2003
TFN2K (caractersticas)
Atacante > Maestro:
Utilizacin aleatoria de tramas TCP, UDP o ICMP.

Maestro > Agente:
Utilizacin aleatoria de tramas TCP, UDP o ICMP.
Comunicacin cifrada mediante algoritmo CAST-256 [RFC-2612]. La clave se define en
tiempo de compilacin.
La informacin cifrada se codifica en Base-64.
Las tramas buenas se mezclan con tramas falsas a direcciones IP aleatorias.
El maestro falsifica su direccin IP en las tramas que enva.

Los comandos nunca son confirmados.

Los comandos se codifican en un byte, viajando los parmetros en la zona de datos de la
trama.

Los agentes intentan ocultarse cambiando el nombre del proceso para pasar
desapercibidos.

Error de codificacion?:
Al codificar en Base-64 siempre se aade una secuencia de entre 1 y 16 ceros, que en B64
aparece como 0x41 (A).
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag12.html Pgina 22 de 36
20/11/2003
Longitud de los paquetes UDP es 3 bytes superior a la declarada en las cabeceras.
Longitud de las tramas TCP es siempre 0, segn aparece en las cabeceras.
Los checksum de las tramas TCP y UDP son incorrectos.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag13.html Pgina 23 de 36
20/11/2003
Stacheldraht
Estructura: similar a los anteriores


Se considera la competencia a TFN2K.

Cliente: controla a uno o ms clientes.

Conductor: controla gran cantidad de demonios.

Agente: recibe la orden de realizar ataques contra una o ms vctimas.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag13.html Pgina 24 de 36
20/11/2003
Tipo de ataque: Generacin masiva de tramas ICMP, SYN o UDP, as como Smurfing.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag14.html Pgina 25 de 36
20/11/2003
Stacheldraht (caractersticas)
Cliente > Conductor: 16660/TCP
Aplicacin Stacheldraht Term.
Acceso mediante password.
Cifrada mediante clave simtrica y Blowfish.

Conductor <> Agente: 65000/TCP, ICMP_ECHOREPLY

Novedad: posibilidad de actualizacin de los agentes.

Cada agente mantiene una lista de conductores que le pueden controlar. Cifrada con
Blowfish. Si no existe utiliza una lista por defecto.

Peridicamente el agente enva trama ICMP_ECHOREPLY con ID 666 y datos "skillz" a
todos los conductores conocidos.

Los conductores contestan mediante trama ICMP_ECHOREPLY con ID 667 y datos
"ficken".

Este dilogo peridico permite detectarlo.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag15.html Pgina 26 de 36
20/11/2003
Shaft
Estructura: similar a los anteriores


Se considera contemporneo a TFN.

Cliente: controla a uno o ms clientes.

Conductor: controla gran cantidad de demonios.

Agente: recibe la orden de realizar ataques contra una o ms vctimas.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag15.html Pgina 27 de 36
20/11/2003
Tipo de ataque: Generacin masiva de tramas ICMP, SYN o UDP, as como Smurfing.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag16.html Pgina 28 de 36
20/11/2003
Shaft (caractersticas)
Cliente > Conductor: 20432/TCP

Conductor > Agente: 18753/UDP

Agente > Conductor: 20433/UDP

Novedad: utilizacin de tickets para control sobre los agentes.

Password y Ticket deben ser correctos para que un agente acepte peticiones.

Intenta camuflarse como un proceso normal dentro del sistema.

Especial interes por disponer de estadsticas: capacidad de generacin de paquetes de los
agentes.

Existe un cliente por defecto en los fuentes:
#define MASTER "23:/33/75/28"
Restando 1 al valor decimal de cada carcter ...
23:/33/75/28 = 129.22.64.17 (electrochem1.echem.cwru.edu)
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag17.html Pgina 29 de 36
20/11/2003
Mstream
ltima en aparecer: 2 trimestre 2000

Estructura: similar a los anteriores


Cliente: controla a uno o ms clientes.

Conductor: controla gran cantidad de demonios.

Agente: recibe la orden de realizar ataques contra una o ms vctimas.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag17.html Pgina 30 de 36
20/11/2003
Tipo de ataque: Stream.
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/stream.html Pgina 31 de 36
20/11/2003
Stream
Agente > Vctima: enva TCP ACK a puertos aleatorios y direccin de remitente falsa
(normalmente de otra red).

Vctima: contesta TCP RST al remitente a travs del router.

Router > Vctima: ICMP indicando que el destinatario no existe.

Se consigue un elevado consumo de ancho de banda.

Ataque con nico origen: pocos efectos.

Ataque con mltiples orgenes: saturacin de la red.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag18.html Pgina 32 de 36
20/11/2003
Mstream (caractersticas)
Cliente > Conductor: 6723/TCP
Acceso mediante password.

Conductor > Agente: 7983/UDP

Agente > Conductor: 9325/UDP

Los agentes deben ejecutar el modo root por usar sockets tipo SOCK_RAW.

Cada conductor mantienen una lista de agentes activos.
Codificacion de Caesar: 50 car. desplazamiento
138.100.14.35 > cej`cbb`cf`eg
Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag19.html Pgina 33 de 36
20/11/2003
Deteccin de DDoS
Solucin definitiva: no existe.

Hardware: limitando anchos de banda por servicio.

Gestin de red: estableciendo filtros de entrada.

Administracin de sistemas: herramientas de auditora

National Infrastructure Protection Center (FBI): find_ddos
U. Washington: gag y dds

Administracin de sistemas: "todos jugamos"

RAZOR: Zombie Zapper

Prevencin de riesgos:

SANS Institute: Gua sobre medidas de prevencin

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag20.html Pgina 34 de 36
20/11/2003
Intrusin Distribuida
DDoS: avance significativo ... pero incompleto.

Cmo se realiza el proceso de siembra de demonios?

Sera posible automatizar el proceso?

Si esto fuera factible:

Rastreo sistemtico de sistemas que cumplan determinadas caractersticas. [Ya ocurre!]

Siembra masiva en trminos de segundos.

Posterior DDoS ... unos segundos ms tarde.

Conclusin: "Donde ahora no hay nada ... ahora esta todo"

Este es el "estado del arte" en estos momentos.

Y en el futuro?:

Hacer que estas herramientas sean amigables ... aptas para todos los pblicos.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag21.html Pgina 35 de 36
20/11/2003
Conclusiones
No existe defensa activa eficaz.

Actuar a posteriori no es til.

Slo una frmula: prevencin.

Recomendaciones del CERT/CC

Mantener actualizados los sistemas informticos.

Filtro de puertos y servicios no utilizados.

Implantacin de software antivirus y deteccin de intrusin.

Creacin de los Centros de Emergencia de Datos.

Sistemas Distribuidos de Denegacin de Servicio
http://www.fi.upm.es/~flimon/DDoS/pag22.html Pgina 36 de 36
20/11/2003
Gracias!
Presentacin:
http://www.fi.upm.es/~flimon/DDoS


Artculo:
http://www.fi.upm.es/~flimon/ddos.pdf