Mitigar un ataque DDoS de capa 7 es distinto de detener una inundación volumétrica. No hay un solo filtro que separe lo bueno de lo malo, porque toda petición de ataque es, por diseño, una petición válida. La mitigación eficaz es una pila de controles, cada uno de los cuales eleva el coste de una petición abusiva sin tocar a los usuarios reales.
1. Pon un proxy inverso delante de tu origen
La base. Enruta el tráfico a través de un proxy inverso mediante un cambio de DNS para que ninguna petición llegue directa a tu servidor. Esto hace dos cosas: te da un sitio donde inspeccionar y filtrar el tráfico antes de que te cueste nada, y oculta la IP de tu origen para que los atacantes no puedan saltarse todos los demás controles golpeando el servidor directamente. Si tu IP de origen ya es pública, cámbiala después de mudarte tras el proxy.
2. Desafía las sesiones sospechosas
Un desafío de prueba-de-navegador, un test ligero de JavaScript o cookie, es el control L7 más eficaz por sí solo. Los navegadores reales lo resuelven de forma invisible; las herramientas de ataque comunes que no ejecutan un navegador completo fallan y nunca llegan a tu aplicación. Reserva un CAPTCHA más duro para el tráfico de mayor sospecha, porque supone fricción para los usuarios reales.
3. Limita la tasa por cliente
Limita a qué velocidad y cuántas conexiones puede hacer una sola dirección. Dos límites resuelven dos problemas: un límite de tasa de peticiones defiende contra inundaciones rápidas, y un límite de conexiones defiende contra ataques lentos que mantienen sockets abiertos sin enviar apenas nada. Ajústalos por encima de tu usuario legítimo más activo y descarta, en vez de encolar, cuando se superen.
4. Ejecuta un WAF
Un Web Application Firewall puntúa las peticiones contra reglas y bloquea patrones malformados o abusivos por endpoint. Atrapa el tráfico de inyección y sondeo que a menudo acompaña a una inundación, y te deja escribir reglas específicas por endpoint para las rutas que los atacantes prefieren. Mantén una lista blanca de falsos positivos para que una regla nunca bloquee una integración legítima.
5. Usa controles de reputación, con cuidado
Cuando un ataque está concentrado, bloquear o desafiar por país, ASN o rango de IP compra alivio inmediato. Úsalo como un bisturí temporal, no como un muro permanente: geobloquear un país entero también bloquea a los usuarios reales de ese país, así que prefiere una lista de permitidos solo cuando tu audiencia sea genuinamente regional.
6. Banea a los reincidentes automáticamente
Las fuentes que siguen incumpliendo tus límites deben descartarse en el edge por un tiempo, con el baneo doblándose en cada reincidencia, para que un bot persistente quede fuera de la ecuación antes de costarte nada más. Esto deja libres los controles caros de arriba para centrarse en el tráfico que aún es ambiguo.
El orden importa
Filtros baratos primero, caros al final: origen oculto, luego desafío, luego límites de tasa, luego puntuación del WAF. Para cuando una petición llega a tu aplicación ya ha sobrevivido a varias comprobaciones.
Qué no hacer
- No confíes solo en una lista de bloqueo de IP: los atacantes rotan IPs más rápido de lo que puedes listarlas.
- No pongas CAPTCHA a todo el mundo: perderás usuarios reales y conversiones.
- No olvides tus integraciones: los callbacks de pago, los webhooks y los clientes de API que no son navegadores deben ir en la lista de permitidos o se rompen bajo un desafío.
- No dejes tu IP de origen expuesta: deshace todos los demás controles.
Akarguard aplica esta pila en su edge de proxy inverso, con los modos de desafío, los límites de tasa, el WAF, las listas de reputación y el baneo automático controlables por dominio desde el panel. Para saber cómo funcionan los ataques en sí, consulta nuestra guía de ataques DDoS de capa 7.