1. Descripción técnica
Distributed Denial of Service (DDoS) es una técnica de interrupción de disponibilidad en la que múltiples fuentes coordinadas generan más tráfico, conexiones u operaciones de las que un servicio y su infraestructura pueden procesar. La diferencia respecto de Denial of Service es la distribución del origen, no un mecanismo de agotamiento completamente distinto.
Un ataque puede saturar el enlace de red, agotar tablas de estado en firewalls o balanceadores, consumir conexiones del sistema operativo o forzar operaciones costosas en la aplicación. Una botnet es una fuente frecuente de tráfico distribuido, pero también existen ataques de reflexión y amplificación que utilizan servicios de terceros sin incorporarlos a una botnet.
1.1. Mecanismo
// renderizando diagrama…
2. Impacto y variantes
El impacto principal es la pérdida total o parcial de disponibilidad. También puede aumentar costes de transferencia y cómputo, ocultar otras actividades dentro del volumen de eventos o afectar servicios que comparten un mismo enlace o proveedor.
2.1. Ataques volumétricos
Buscan saturar la capacidad de tránsito mediante grandes cantidades de bits o paquetes. Los floods UDP e ICMP pertenecen a esta categoría. La reflexión combina una dirección de origen falsificada con servicios que responden a la víctima; existe amplificación cuando la respuesta es considerablemente mayor que la solicitud.
2.2. Ataques de protocolo o agotamiento de estado
Consumen recursos de los dispositivos que mantienen estado. En un SYN Flood, el objetivo reserva información para conexiones TCP que no terminan el handshake. El límite puede agotarse aunque el ancho de banda todavía no esté completamente ocupado.
2.3. Ataques de capa de aplicación
Generan solicitudes que parecen tráfico válido, pero fuerzan operaciones costosas o mantienen recursos ocupados. HTTP Flood y Slowloris son ejemplos distintos: el primero aumenta la cantidad o el coste de las peticiones; el segundo conserva muchas conexiones incompletas.
Los ataques multivectoriales combinan estas categorías y pueden cambiar de mecanismo cuando se activa una contramedida.
3. Condiciones necesarias
- El atacante dispone de múltiples fuentes o de servicios capaces de reflejar tráfico.
- Existe una ruta de red hacia la superficie atacada.
- La carga supera algún límite finito del objetivo o de una dependencia anterior.
- La mitigación no filtra, distribuye o absorbe suficiente tráfico antes de alcanzar ese límite.
La ralentización de un sitio no confirma por sí sola un DDoS. Un pico legítimo, un fallo de base de datos o una mala configuración pueden producir síntomas equivalentes.
4. Validación y detección
La investigación debe correlacionar telemetría de red, balanceadores, servidores y dependencias. Se comparan los datos con una línea base y se determina qué recurso se agota.
Indicadores habituales:
- incremento anómalo de bits por segundo, paquetes por segundo o solicitudes por segundo;
- crecimiento de conexiones incompletas, estados TCP o colas;
- concentración en una ruta, operación o patrón de solicitud costoso;
- distribución geográfica o por sistemas autónomos incompatible con el uso normal;
- aumento simultáneo de latencia, timeouts y respuestas
5xx.
El origen aparente no siempre identifica al atacante. En ataques con spoofing o reflexión, las direcciones observadas pueden pertenecer a sistemas intermediarios.
5. Mitigación
La respuesta debe actuar antes del recurso que se está agotando:
- coordinar filtrado y scrubbing con el ISP o proveedor anti-DDoS cuando el enlace está saturado;
- usar Anycast, CDN o capacidad distribuida para absorber tráfico volumétrico;
- aplicar SYN cookies, límites de estado y endurecimiento del stack para ataques de protocolo;
- introducir rate limiting, caché, colas, circuit breakers y límites de coste en la aplicación;
- filtrar tráfico por señales verificadas y evitar bloqueos amplios que produzcan la misma indisponibilidad;
- impedir spoofing mediante filtrado de entrada y salida en redes bajo control administrativo;
- conservar métricas y capturas representativas para ajustar las reglas durante el incidente.
El blackholing puede proteger infraestructura compartida, pero descarta también tráfico legítimo hacia el destino. Es una medida de contención, no una restauración del servicio.
6. Ejemplos conservados de laboratorio
Los siguientes comandos proceden de la nota original y sólo deben ejecutarse en un laboratorio propio y aislado. Representan tráfico desde una única máquina, por lo que son ejemplos de DoS y no demuestran por sí mismos un ataque distribuido.
- Ping Flood (DoS simple):
ping -f -s 65500 192.168.1.10Envío de pings masivos con tamaño máximo.
- UDP Flood con hping3:
hping3 --flood --udp -p 80 192.168.1.10Envía tráfico UDP continuo al puerto 80.
- SYN Flood con hping3:
hping3 -S -p 80 --flood 192.168.1.10Envía miles de SYN sin completar el handshake TCP.
- Slowloris (Python script):
Script que abre muchas conexiones HTTP incompletas para agotar recursos del servidor web.
7. Clasificación
| Campo | Valor |
|---|---|
| Objetivo | Disponibilidad |
| Origen | Múltiples fuentes coordinadas o reflectores |
| Recursos afectados | Ancho de banda, estado de red, cómputo o dependencias |
| Resultado | Degradación o interrupción del servicio |