Los ataques de denegación de servicio distribuidos (DDoS) son cada vez más comunes como forma de sabotaje por parte de activistas, delincuentes, jugadores e incluso gobiernos. A medida que los proveedores de servicios implementan la infraestructura 5G y las empresas se someten a la transformación digital, se espera que crezca el tamaño y la superficie objetivo de los posibles ataques. Este aumento del riesgo, combinado con la tendencia al cambio organizativo hacia arquitecturas definidas por software eficientes y rentables, hace que la mitigación de DDoS para entornos de nube/NFV sea ahora más importante que nunca.
Este documento presenta información sobre los mecanismos de ataque DDoS y describe cómo la solución de mitigación de DDoS por software de F5 puede aumentarse con FPGA PAC N3000 SmartNIC de Intel, lo que permite mitigar los ataques DDoS de una magnitud hasta 300 veces mayor mediante la descarga a la solución FPGA integrada en SmartNIC.
En este mundo interconectado y dependiente de lo digital, los ciberataques pueden tener efectos negativos significativos en empresas, proveedores de servicios y entidades gubernamentales. Mientras que las organizaciones de noticias se centran en los piratas informáticos que roban información confidencial para usarla en chantajes y extorsiones, muchos actores maliciosos simplemente pretenden causar daño financiero.[1] En un ataque de denegación de servicio (DoS), los atacantes atacan un servicio conectado a Internet (por ejemplo, un sitio web o un servidor de correo) y provocan que se bloquee o deje de responder. Un ataque DoS puede ser el resultado de una solicitud especialmente diseñada que provoca un mal funcionamiento del software del servidor.
En los últimos años, mejores prácticas de codificación y técnicas de regresión han hecho que los ataques DoS simples sean menos efectivos. Como resultado, los ataques de denegación de servicio distribuido (DDoS) se han vuelto más comunes; se espera que esta tendencia continúe a medida que los proveedores de servicios implementen infraestructura 5G y edge computing. Los ataques DDoS suelen ser orquestados por individuos maliciosos y distribuidos a través de una red de bots coordinada de dispositivos informáticos comprometidos en red. A estos dispositivos se les puede ordenar que envíen tráfico de ataque a un dispositivo o servicio víctima.[1] Si bien el impacto de un solo dispositivo comprometido es mínimo según la mayoría de los estándares de rendimiento de procesamiento, un ataque coordinado por miles o incluso decenas de miles de dispositivos de una gran botnet puede alcanzar niveles de rendimiento que muchos proveedores de servicios no pueden absorber.
Para las empresas que dependen de su presencia en línea, las degradaciones en la calidad del servicio y los tiempos de inactividad son perjudiciales para el resultado final. El comercio electrónico es particularmente vulnerable a las interrupciones; las interrupciones del servicio pueden costar miles o millones de dólares por minuto. Los ataques que no provocan una interrupción pueden degradar el rendimiento, lo que genera una pérdida real de ingresos si los clientes frustrados se cambian a otro proveedor de comercio electrónico.[2]
El aumento de la velocidad de conexión a Internet de los consumidores y la mayor ubicuidad de los dispositivos en la nube aumentan el potencial de los ataques DDoS. Los dispositivos conectados suponen una preocupación especial, y mantenerlos protegidos es imperativo para conservar la seguridad y la fiabilidad de los servicios en línea. Junto con el aumento del potencial de estos ataques, muchas organizaciones corren un mayor riesgo de sufrir ataques DDoS ya que disponen de arquitecturas centradas en el software. La mayoría de las protecciones basadas en software contra los DDoS carecen de la capacidad y el rendimiento necesarios para defenderse de los ataques a gran escala. Afortunadamente, las SmartNIC (la última generación de tarjetas de interfaz de red) pueden cambiar esta situación al quitar la carga que las funciones de red y seguridad suponen para las soluciones de software y aliviar la presión sobre las CPU disponibles.
En este informe se define una serie de mecanismos de ataque, utilizando pruebas de situaciones de ataques reales, antes de mostrar cómo la solución de mitigación de DDoS por software de F5, F5® BIG IP® Advanced Firewall Manager™, Virtual Edition (BIG-IP AFM VE) puede aumentarse con el PAC 3000 SmartNIC de Intel. Mostraremos cómo esta solución combinada (solución BIG-IP Virtual Edition para SmartNIC) es capaz de mitigar ataques DDoS de una magnitud hasta 300 veces superior que una solución equivalente de solo software.
Los ataques sin estado se pueden utilizar contra protocolos con estado, pero no requieren que el atacante rastree el estado en busca de conexiones maliciosas. Son populares porque requieren recursos mínimos y funcionan con suplantación de dirección IP de origen. La forma clásica y más utilizada de ataque comienza con una solicitud falsa a un servidor para abrir una conexión con estado, que el cliente infractor (a menudo un nodo de botnet) nunca reconocerá.[1] El ataque de inundación TCP SYN es un ejemplo específico. Durante la configuración de una conexión TCP, el protocolo de enlace de tres vías comienza con el cliente transmitiendo un paquete SYN. Cuando el servidor recibe un paquete SYN del cliente, inmediatamente asigna memoria para una estructura de datos de socket TCP que contiene la tupla, el número de secuencia y el estado de la sesión. Luego, el servidor responde al cliente con un paquete SYN-ACK.
Figura 1 – Protocolo de enlace TCP de tres vías completo
En circunstancias normales, la pérdida de paquetes o una comunicación lenta podrían provocar que el paquete SYN-ACK se retrase o se pierda por completo. El servidor debe decidir cuánto tiempo mantener el socket en un estado medio abierto antes de transmitir un reinicio y liberar la memoria para otras tareas.[3] Una técnica DDoS popular es generar una avalancha de paquetes SYN para engañar al servidor víctima y lograr que asigne sockets TCP y memoria a miles de sesiones falsas. Una tasa de ataque de miles de paquetes SYN por segundo hace que un servidor web consuma rápidamente toda su memoria. En este ejemplo, el atacante malicioso tiene la ventaja: sabe que ninguna de las sesiones se utilizará, por lo que no hay necesidad de reservar memoria para rastrear las sesiones. Esto permite al atacante dedicar todos los recursos del sistema a transmitir paquetes SYN falsos adicionales.
Figura 2: Inundación de SYN utilizando una dirección IP de origen falsa
Los protocolos sin estado son fáciles de explotar porque funcionan bien utilizando direcciones de origen falsificadas.[4] Debido a que los protocolos sin estado no requieren un protocolo de enlace, la transmisión de un solo paquete diseñado a un servidor inicia una respuesta inmediata, utilizando recursos mínimos en el dispositivo adversario y ocultando la identidad del adversario.[5] Los paquetes de respuesta de datos de la víctima se reenvían a la IP falsificada, que podría ser una dirección diferente de la víctima; en gran cantidad, estos paquetes pueden ralentizar o deshabilitar una conexión a Internet o un servidor, lo que aumenta la eficacia del ataque.
Una categoría independiente de ataques sin estado, conocida como ataques de amplificación, incluye inundaciones de DNS e inundaciones de NTP. Ambos ataques utilizan la falsificación de direcciones como parte del vector de ataque. Los ataques de amplificación son especialmente dañinos porque la respuesta del servidor puede ser una orden de magnitud superior que la solicitud original.
Figura 3: Diagrama de ataque reflexivo DDoS basado en DNS
En 2018, GitHub, un popular servicio de gestión de código preferido entre los desarrolladores, sufrió el mayor ataque DDoS registrado. Durante el pico del ataque, el servicio vio tráfico entrante a una velocidad de 1,3 terabytes por segundo (Tbps). Este fue un ataque DDoS de Memcached que aprovechó el efecto de amplificación utilizando el popular sistema de almacenamiento en caché de bases de datos, Memcached. Durante el ataque, el atacante inundó los servidores Memcached con solicitudes falsificadas y pudo amplificar el ataque por un factor de 50.000.[6]
Figura 4: Un ataque de amplificación de DNS orquestado por una red de robots
Aunque los ataques sin estado representan un tipo común de amenaza DDoS, su simplicidad los hace fáciles de detectar y prevenir o mitigar.
Los ataques DDoS con estado tienen más éxito y son más difíciles de prevenir. Los ataques con estado completan un saludo en tres pasos con la víctima y, a partir de ahí, se comportan como un usuario legítimo. Esta categoría de vector de ataque puede engañar a los antiguos mecanismos de prevención de DDoS, y requiere más potencia de cálculo y memoria en la máquina atacante. La clave para lanzar un ataque con éxito reside en comportarse como una solicitud legítima. La dificultad para mitigar estos ataques radica en la clasificación adecuada para diferenciar las solicitudes de usuarios reales de las maliciosas.
Un ejemplo simple de un ataque con estado implica emular el comportamiento de usuarios legítimos para crear un volumen de tráfico suficientemente grande utilizando una gran cantidad de atacantes (por ejemplo, una botnet). Estos ataques volumétricos tienen éxito cuando la víctima no puede consumir o procesar todas las solicitudes, o cuando la conexión a Internet del servicio está saturada hasta su capacidad. Debido a que el tráfico está diseñado para emular el comportamiento de los usuarios legítimos, es mucho más difícil detectar y diferenciar el tráfico malicioso del legítimo. Para los servicios que involucran algún tipo de mecanismo de protocolo de enlace (por ejemplo, desafío-respuesta, codificación secreta o intercambio de cookies), un ataque volumétrico puede ser la única forma de explotar a la víctima a menos que se encuentre una debilidad en el esquema de respuesta que permita una generación trivial de una respuesta válida.[7]
Una categoría de ataques avanzados con estado se dirige a servicios concretos a nivel de aplicación. Un ejemplo, que ataca el protocolo HTTP, se conoce como «Slowloris». Este ataque comienza con un atacante malicioso que envía múltiples solicitudes parciales HTTP «GET» al servidor web para saturar el máximo de conexiones simultáneas disponibles. El ataque funciona porque el protocolo HTTP mantendrá una conexión abierta mientras un cliente envía un comando de solicitud, que a su vez puede dividirse en múltiples paquetes. El cliente malicioso enviará periódicamente solicitudes HTTP parciales al servidor (con hasta varios minutos de tiempo de inactividad entre ellas) sin terminar nunca la solicitud.
Figura 5: Ataque RUDY utilizando una solicitud HTTP POST lenta
Un método similar a Slowloris es el ataque “Are You Dead Yet” o “RUDY”, que utiliza comandos HTTP “POST” para enviar lentamente respuestas de datos a un servidor web desprevenido.[8] Ambos métodos requieren recursos mínimos para ejecutarse y, dado que el tiempo de espera predeterminado para mantener abierta una conexión HTTP es de 5 minutos en muchos servidores web, también requieren un ancho de banda mínimo.[1]
Un ataque de inundación de fragmentos también puede ser un ataque con estado efectivo. Esta técnica se puede coordinar con muchos puertos y direcciones de origen dirigidos a un solo destino. El punto final bajo ataque guardará el estado de cada paquete de fragmentos mientras intenta volver a componer cada uno de ellos. Cada combinación única de puerto y dirección de origen requerirá la asignación de otro búfer de fragmentación por parte del sistema atacado. La capacidad de los distintos sistemas maliciosos de originar paquetes fragmentados puede superar los recursos del sistema atacado al intentar mantener el estado de todas las transacciones fragmentadas.
Dado que los ataques con estado dependen de generar respuestas válidas para la víctima, normalmente no es posible falsificar la dirección de origen del atacante. Una excepción a esta regla es si el atacante puede comprometer un enrutador o medio de red a través del cual circula tráfico legítimo. En este caso, el atacante puede falsificar la dirección de origen y generar respuestas con estado válidas cuando detecta la respuesta de la víctima, básicamente siguiendo el rastro para rastrear el estado de la conexión.[7]
Para caracterizar la eficacia de las soluciones de F5 para mitigar diferentes tipos de ataques DDoS, se configuró un entorno de prueba utilizando sistemas de prueba IXIA. Un IXIA XT80 generó un buen tráfico de clientes «legítimos» y respuestas del servidor, y un IXIA XGS12 generó un tráfico de ataque de clientes «malos». La prueba se configuró para establecer una línea de base estable de tráfico cliente-servidor legítimo mientras se incrementaba el tráfico de ataque para identificar el nivel en el que el tráfico de ataque comenzaba a interferir con la entrega correcta del tráfico legítimo. Esto permitió una caracterización reproducible y poder comparar la eficacia de la mitigación. En cada prueba, se consideró que los ataques DDoS habían afectado al sistema con éxito al observarse una caída del 10 % en el tráfico legítimo respecto a la línea de referencia establecida.
La línea de referencia de tráfico legítimo se configuró al 20 % de la capacidad del sistema BIG-IP VE, que era una VE de alto rendimiento de 8vCPU con el módulo BIG-IP AFM aprovisionado. Dado que este sistema es capaz de realizar transacciones de 40 Gbps, la línea de referencia de tráfico legítimo se mantuvo en 8 Gbps.
BIG-IP AFM VE mitiga los ataques DDoS estableciendo umbrales permitidos para varias clasificaciones de tráfico (por ejemplo, UDP, fragmentos, TCP SYN, etc.). Una vez que se ha superado el umbral para un tipo de tráfico concreto, el sistema puede configurarse para descartar todo el tráfico que coincida con esa clasificación. Esto libera al sistema de los costes adicionales asociados al procesamiento de ese tipo de tráfico. Si bien las soluciones DDoS basadas en software pueden proporcionar algunas ventajas en comparación con un sistema sin protección, las limitaciones en la capacidad del software para procesar paquetes a velocidad de línea significan que la mitigación por software no puede prevenir completamente los efectos de un ataque DDoS.
El siguiente paso de la prueba fue establecer la tasa de tráfico DDoS necesaria para empezar a interrumpir el tráfico legítimo con la solución de solo software en su sitio. Esto se hizo para poder comparar el rendimiento entre una solución de solo software y la solución BIG-IP VE para SmartNIC. La configuración del sistema de arquitectura para la prueba de BIG-IP AFM puede verse en la Figura 6.
Figura 6: Configuración del sistema de arquitectura para la prueba de BIG-IP AFM VE (solo software)
Los datos de rendimiento de la mitigación de DDoS de BIG-IP AFM VE se recogieron para tres tipos diferentes de ataques DDoS con el fin de permitir un análisis más completo. Los tipos de ataque para esta simulación incluyeron:
La Figura 7 muestra el volumen de tráfico, en Gbps, que es necesario para que cada uno de estos tipos de ataque afecte al tráfico legítimo cuando se utiliza BIG-IP AFM VE (solo software).
Figura 7: Tasas de DDoS necesarias para afectar negativamente al tráfico legítimo utilizando BIG-IP AFM VE (solo software)
No todos los ataques DDoS son iguales. Algunos están más distribuidos por el sistema que otros, y algunos ataques requieren más inspección y análisis de paquetes antes de poder identificarlos. Esto hace que la eficacia de los ataques DDoS varíe, como puede verse en el gráfico anterior. Estos tres métodos de ataque simulados demuestran que el tráfico legítimo puede verse afectado por los ataques DDoS con rendimientos relativamente bajos cuando se utilizan soluciones solo de software.
La solución BIG-IP VE para SmartNIC consta de AFM VE de alto rendimiento de 8vCPU (igual que para la prueba de solo software) integrado con Intel FPGA PAC N3000 SmartNIC. Esto permite descargar la protección DDoS a SmartNIC. La solución FPGA integrada en esta SmartNIC ha sido programada para detectar y bloquear automáticamente más de 100 tipos diferentes de ataques DDoS conocidos, al mismo tiempo que utiliza análisis de comportamiento para mitigar amenazas desconocidas y en evolución.
Mediante la supervisión de las tasas de recepción de paquetes para todos los perfiles de tráfico programados dentro del tráfico de entrada, y la comparación con los umbrales aceptables configurados, la solución FPGA puede determinar cuándo se ha superado un umbral. Cuando esto ocurre, la solución FPGA aplica las políticas apropiadas para eliminar el tráfico que excede los máximos configurados. Esto evita que el subsistema de la CPU procese tráfico de paquetes que en última instancia se descartará debido a la política de mitigación de DDoS. Gracias a que la solución FPGA es capaz de clasificar el tráfico de paquetes a velocidad de línea (a diferencia del subsistema de la CPU), la solución habilitada para SmartNIC ofrece notables ventajas respecto a la solución de solo software.
Para el siguiente paso de esta demostración, la solución habilitada para SmartNIC se sometió a los mismos tres ataques DDoS en el entorno de prueba. Al igual que antes, el objetivo era identificar la tasa de tráfico DDoS necesaria para impactar en el flujo de tráfico legítimo. La figura 8 muestra la configuración del sistema de arquitectura para la prueba de BIG-IP VE para SmartNIC.
Figura 8: Configuración del sistema de arquitectura para la prueba de BIG-IP VE para SmartNIC
Los resultados de esta prueba se muestran en la Figura 9.
Figura 9: Tasas de DDoS necesarias para afectar negativamente al tráfico legítimo utilizando la solución BIG-IP VE para SmartNIC
Se observó que la solución DDoS de solo software de F5 (BIG-IP AFM VE) puede proporcionar cierto nivel de protección contra los ataques a pequeña escala antes de que el tráfico legítimo se vea afectado negativamente, pero esta solución no pudo evitar los impactos negativos de los ataques más grandes. La integración de BIG-IP AFM VE con FPGA PAC N3000 SmartNIC de Intel para que resultó en la solución BIG-IP VE para SmartNIC supuso notables mejoras de rendimiento. Al delegar la responsabilidad de mitigar las amenazas DDoS de BIG-IP AFM VE a FPGA dentro de la SmartNIC, la solución combinada fue capaz de soportar ataques de una magnitud de entre 41 y 381 veces mayor, incluyendo ataques con tasas de 30 Gbps y superiores. Para las organizaciones y los proveedores de servicios que dan prioridad a la nube, esta solución ofrece la protección de alto rendimiento de un hardware de diseño específico, al mismo tiempo que ofrece la flexibilidad y agilidad de los entornos de nube. Además, como FPGA puede reprogramarse, es posible mejorar otras funciones de red y seguridad a medida que evolucionan las amenazas.
1 GRAMO. D. Hakem Beitollahi, Análisis de contramedidas conocidas contra ataques distribuidos de denegación de servicio, Computer Communications, 2012.
2 HW Chuan Yue, "Protección contra sobrecargas teniendo en cuenta las ganancias en sitios web de comercio electrónico", Journal of Network and Computer Aplicações, vol. 32, págs. 347–356, 2009.
3 AM Christos Douligeris, "Ataques DDoS y mecanismos de defensa: clasificación y estado del arte", Computer Networks, vol. 44, n.º 5, págs. 643-666, 2004.
4 GD Hakem Beitollahi, "Análisis de contramedidas conocidas contra ataques distribuidos de denegación de servicio", Computer Communications, vol. 35, n.º 11, págs. 1312-1332, 2012.
5 M. Prince, "En lo profundo de un ataque DDoS de amplificación de DNS", CloudFlare, 30 de octubre de 2012. [En línea]. Disponible: https://blog.cloudflare.com/deep-inside-a-dns-amplification-ddos-attack/ . [Consultado el 1 de noviembre de 2015].
6 US-CERT, "Ataques de amplificación basados en UDP", 19 de agosto de 2015. [En línea]. Disponible: https://www.us-cert.gov/ncas/alerts/TA14-017A .
7 YTWD Shigang Chen, "Ataques DDoS con estado y filtrado dirigido", Journal of Network and Computer Aplicações, vol. 30, n.º 3, págs. 823-840, 2007.
8 https://www.incapsula.com/ddos/attack-glossary/rudy-ru-dead-yet.html, "RUDY (¿RU-Muerto-Todavía?)" [En línea]. Disponible: https://www.incapsula.com/ddos/attack-glossary/rudy-ru-dead-yet.html . [Consultado el 9 de diciembre de 2015].