A medida que trasladamos cada vez más aspectos de nuestra vida diaria a Internet, los ciberatacantes no dejan de esforzarse por degradar el nivel de servicio que ofrecen las aplicaciones de las que dependemos. Sus motivaciones son numerosas y van desde la venganza hasta influir en el precio de las acciones de las empresas afectadas o crear una cortina de humo que distraiga a los equipos de seguridad de las violaciones de datos.
En un blog anterior , describimos cómo en el pasado los equipos de seguridad tuvieron que desarrollar continuamente nuevas defensas contra ataques de denegación de servicio (DoS) volumétricos y DoS distribuidos (DDoS) en los niveles de red y transporte ( capas 3 y 4 ), que agotan el ancho de banda disponible de los servidores al inundarlos con solicitudes de conexión TCP/UDP. Ahora los atacantes han añadido una nueva herramienta a su arsenal: ataques DoS y DDoS que utilizan solicitudes HTTP o llamadas API para agotar los recursos a nivel de aplicação ( capa 7 ).
Las protecciones DoS tradicionales contra ataques de red y volumétricos no son efectivas contra ataques de Capa 7 porque a nivel de aplicação las solicitudes maliciosas a menudo parecen iguales a las legítimas. Además, los ataques HTTP en la capa 7 pueden ser dañinos a una tasa y un volumen de solicitudes mucho menores que los ataques a nivel de red. La protección DoS de capa 7 debe ser más sensible ante un conjunto completamente nuevo de requisitos:
NGINX App Protect Denial of Service (DoS) aborda todos estos desafíos para garantizar una protección de día cero optimizada, fácil de implementar y que proporcione una configuración de políticas adaptable y sin intervención.
NGINX App Protect DoS utiliza un proceso de varios pasos para detectar y mitigar ataques DoS de capa 7:
El primer paso del proceso es capturar el comportamiento del usuario y de la aplicação durante un momento en el que sabemos que el sitio no está bajo ataque, para crear un modelo estadístico del sitio que capture una línea de base del comportamiento típico. NGINX App Protect DoS rastrea 320 métricas de usuarios y aplicaciones para obtener una vista integral de la implementación de su aplicación. También actualiza dinámicamente el modelo estadístico del sitio a medida que observa el tráfico. Esto lo libera de la necesidad de ajustar manualmente los umbrales del sistema y, al mismo tiempo, garantiza que NGINX App Protect DoS tenga en cuenta los cambios en los patrones de tráfico que inevitablemente ocurren con el tiempo.
Una clase de métricas rastreadas se refiere a las características de la solicitud HTTP: el método HTTP, el valor del encabezado User-Agent
y otros como los que se muestran en el gráfico.
Muchas herramientas de mitigación de DoS de capa 7 prestan atención únicamente a los patrones de tráfico del cliente. Para una detección de ataques superior, puede configurar NGINX App Protect DoS para que también verifique activamente el estado del servicio. Realiza un seguimiento de múltiples métricas de rendimiento del servidor, como el tiempo de respuesta y la proporción de solicitudes abandonadas. El empeoramiento de los valores de estas métricas indica que una aplicação está “bajo estrés”, posiblemente debido a un ataque. Hay otro beneficio en el seguimiento de las métricas del servidor: una vez que NGINX App Protect DoS determina que hay un ataque en curso, el patrón de respuestas a los controles de estado ayuda a identificar cuándo comenzó el ataque.
Cuando NGINX App Protect DoS determina que hay un ataque en curso, basándose en las desviaciones del modelo estadístico del sitio y los cambios en la respuesta del servidor (si está configurado), deja de actualizar el modelo estadístico del sitio y, en su lugar, analiza cómo los valores de las métricas actuales difieren de las líneas de base establecidas. Las diferencias probablemente apuntan a una anomalía global.
Luego, NGINX App Protect DoS inicia dos procedimientos que se ejecutan en paralelo:
Analizar el comportamiento de usuarios individuales para detectar quién creó o contribuyó a la anomalía.
NGINX App Protect inicialmente trata a todos los usuarios como sospechosos y analiza su comportamiento. Es poco probable que cada usuario sea un atacante, pero medir el comportamiento de todos ellos permite a NGINX App Protect crear una imagen estadística que revela quién contribuyó y quién no al ataque. Los actores maliciosos detectados se identifican utilizando su dirección IP o el encabezado X-Forwarded-For
en sus solicitudes.
Generar una lista de reglas que describen el tráfico de ataques sin bloquear a los usuarios legítimos: firmas en tiempo real para la protección contra ataques de día cero. Las firmas generadas durante ataques anteriores se pueden reutilizar.
Las firmas generadas identifican los atributos HTTP asociados con el ataque, como en este ejemplo:
http.request.method eq GET y http.user_agent contiene Chrome y http.uri_parameters eq6 y http.accept_header_exists eq falso y http.headers_count eq 7
El objetivo principal al defenderse de un ataque de Capa 7 es atraparlo antes de que pueda causar algún daño.
Como se muestra en el siguiente diagrama, puede configurar una estrategia de mitigación conservadora o estándar. Con ambas estrategias, la primera capa de defensa es bloquear las solicitudes de los actores maliciosos que fueron identificados por la dirección IP y el encabezado X-Forwarded-For
en el paso anterior. La siguiente capa de defensa bloquea las solicitudes que coinciden con las firmas generadas en el paso anterior.
Finalmente, si ha configurado la mitigación estándar y NGINX App Protect DoS detecta que las dos primeras capas de defensa son insuficientes, aplica una limitación de velocidad global durante un breve período.
Cuando NGINX App Protect DoS aplica una limitación de velocidad global, existe la posibilidad de que se bloqueen las solicitudes de usuarios legítimos: un falso positivo. NGINX App Protect DoS puede reducir los falsos positivos basándose en el hecho de que un ataque DoS típico se crea utilizando scripts ejecutados por un controlador de botnet (malware en computadoras infectadas), no directamente por humanos. A diferencia de los navegadores web, muchos de estos scripts simples no pueden manejar adecuadamente una redirección HTTP, y aún menos pueden procesar JavaScript. Estas diferencias de capacidad entre scripts y navegadores ayudan a NGINX App Protect DoS a determinar cuál de ellos está generando el tráfico sospechoso.
Entonces, en lugar de limitar la velocidad de las solicitudes de todos los clientes, NGINX App Protect DoS primero envía una redirección HTTP y luego un fragmento de JavaScript para procesar. Los bots con scripts no pueden responder con éxito, pero un navegador puede hacerlo, lo que permite que NGINX App Protect DoS bloquee el tráfico de los scripts y al mismo tiempo permita el tráfico del navegador.
Reconocemos que algunos usuarios se sienten incómodos al confiar en el aprendizaje adaptativo debido a la posibilidad de que haya una gran cantidad de falsos positivos, pero hemos descubierto que es la forma más eficaz de mitigar los ataques DoS de capa 7. NGINX App Protect DoS reduce los falsos positivos al combinar múltiples enfoques: analizar el comportamiento del usuario, verificar el estado del servicio y medir la eficacia de las tácticas de mitigación. Juntos, los tres enfoques brindan visibilidad y protección integrales sin necesidad de alterar manualmente la configuración en respuesta a los ataques.
Quizás te preguntes por qué necesitas protección DoS de capa 7 si tu WAF ya protege contra bots. Si bien es cierto que los ataques DDoS de capa 7 generalmente son lanzados por bots, su propósito no es el mismo que el de otras actividades de bots. Los bots generalmente intentan obtener información sin interrumpir el servicio, mientras que interrumpir el servicio es precisamente el objetivo de los ataques Dos y DDoS de capa 7.
Otra diferencia es que las herramientas anti-bots estándar intentan distinguir entre “bots buenos” y “bots malos”, una tarea desafiante que generalmente requiere supervisión humana para evitar falsos positivos. Por otro lado, a NGINX App Protect DoS no le importa si el tráfico es generado por bots o algún otro mecanismo: se concentra en distinguir entre atacantes y usuarios legítimos en función de su comportamiento. Debido a que NGINX App Protect DoS utiliza técnicas antibots solo cuando ha determinado que los bots están participando en un ataque DoS de capa 7, genera significativamente menos falsos positivos que el software antibots estándar. Además, los métodos de mitigación de DoS de NGINX App Protect son eficientes en términos de CPU, lo que le permite continuar protegiendo sus aplicaciones durante el curso de un ataque DoS de capa.
NGINX App Protect DoS rastrea más de 320 métricas relacionadas con el comportamiento del usuario y la aplicación, lo que da como resultado un modelo estadístico multifactorial que proporciona la protección más precisa posible. Sus algoritmos únicos reducen en gran medida los falsos positivos. Estas características permiten que NGINX App Protect DoS mitigue ataques DoS altamente distribuidos, donde cada solicitud de ataque parece completamente legal y un solo atacante podría incluso generar menos tráfico que el usuario legítimo promedio. Con su tecnología adaptativa, NGINX App Protect DoS protege las infraestructuras modernas no solo contra los ataques actuales sino también contra aquellos que evolucionarán en el futuro.
Si desea obtener más información sobre cómo garantizar la protección contra ataques DoS, consulte nuestro resumen de soluciones . Vea también estos blogs relacionados:
Pruebe NGINX App Protect DoS usted mismo: comience hoy mismo una prueba gratuita de 30 días o contáctenos para analizar sus casos de uso .
"Esta publicación de blog puede hacer referencia a productos que ya no están disponibles o que ya no reciben soporte. Para obtener la información más actualizada sobre los productos y soluciones F5 NGINX disponibles, explore nuestra familia de productos NGINX . NGINX ahora es parte de F5. Todos los enlaces anteriores de NGINX.com redirigirán a contenido similar de NGINX en F5.com.