En años recientes, los eventos Distribuidos de Denegación de Servicio (DDoS) se han convertido en una amenaza siempre presente, con el tráfico de ataque llegando a niveles medidos en terabits por segundo (Tbps). Una de las herramientas clave en manos de los ciberdelincuentes que buscan aumentar el ancho de banda de sus ataques es el reflejo basado en UDP. Por ejemplo, el ataque de DDoS a GitHub en 2018, utilizó un servicio de capa de aplicación llamado Memcached para dirigir durante el pico 1,35 Tbps de tráfico UDP reflejado en los servidores de GitHub. En 2020, la industria tomó conocimiento de un ataque de DDoS que utilizó un paquete de servicios de UDP como reflectores (CLDAP, DNS y SMTP) para alcanzar tasas de cable de hasta 2,5 Tbps.
En Black Lotus Labs, aprovechamos la visibilidad de nuestra red para identificar servicios que están siendo potencialmente manipulados para lanzar ataques, tales como instancias Memcached, CLDAP y DNS, y luego trabajamos para confirmar si están abiertos para ser utilizados como reflectores. Según nuestros datos del primer trimestre de 2021, vemos que cada uno de estos servicios se utiliza activamente para lanzar ataques de DDoS significativos actualmente.
Memcached, el gran reflector de BAF
El interés de Black Lotus Labs por Memcached radica en su Factor de amplificación de ancho de banda (BAF) extraordinariamente alto. Un BAF es la relación entre los bytes de respuesta reflejados en el objetivo y los bytes de solicitud enviados al reflector por el atacante; un BAF de 5 significa que por cada byte enviado al reflector, dirige 5 bytes al objetivo. De día, Memcached es un servicio de almacenamiento en caché distribuido que trabaja arduamente, diseñado para ayudar a que su página web se cargue más rápidamente. Generalmente se implementa para dar soporte a clústeres de servidores web para eliminar llamadas innecesarias a la base de datos en caché, no hay ninguna razón por la que Memcached deba estar expuesto a la internet pública. Ahora bien, si usted no expondría su base de datos de backend a la Internet pública, ¿por qué lo haría con su servicio de caché de backend? Si bien no todas las instancias de Memcached que interactúan con internet están abiertas para su uso en ataques de reflexión, determinamos que una cantidad de estos podría ser utilizada para reflexión en un ataques de DDoS.
Determinar si una instancia equis de Memcached constituye o no un reflector abierto es una cuestión sencilla: ¿responden a comandos de protocolo sobre UDP? Memcached da soporte a su servicio de almacenamiento de caché con un protocolo al que se puede acceder a través de TCP o UDP, y solo UDP puede usarse para este tipo de ataque. Tal como se podría esperar de un servicio de almacenamiento de caché, este protocolo presenta comandos tales como Set and Get. Set le permite almacenar bloqueos de datos arbitrarios bajo una llave determinada. Contrariamente, Get le permite ir a buscar los datos nuevamente por llave. La llave puede ser totalmente pequeña mientras que los datos almacenados en ella pueden ser de hasta 1 MB con configuración out-of-the-box (lista para su uso). Esto significa que un paquete de solicitud muy pequeño, medido en decenas de bites puede generar una respuesta significativamente mayor. En el caso de Memcached, el BAF es 10.000 a 51.000x. Esta es una amplificación de ancho de banda elevada al extremo: una conexión a Internet de 100 Mbps podría producir un volumen de ataque que oscile desde 125 Gbps a más de 630 Gbps. Hace algunos años, luego de una serie de ataques notables a Memcached, la comunidad de internet realizó un esfuerzo concertado por mitigar los más de 35.000 servidores Memcached disponibles públicamente. Aun así, y tal como lo muestra el siguiente mapa de calor, actualmente todavía hay más de 1.500 servicios abiertos de Memcached expuestos en Internet, con China y Estados Unidos albergando la mayor parte geográficamente.
Distribución global de los servicios de Memcached expuestos en Internet
Cómo funciona la reflexión de UDP
Si bien otros servicios de reflector UDP no tienen el mismo BAF que Memcached, la reflexión funciona igual para todos los servicios UDP. Veamos la estructura de un ataque de reflexión de UDP. En la siguiente figura, tenemos tres componentes: el iniciador del ataque, el servicio reflector y el sistema objetivo.
Reflexión de UDP con suplantación (Spoofing) de IP
Como muestra la figura anterior, la reflexión se basa en engañar al servicio de reflector para que envíe la carga útil de respuesta al sistema objetivo en lugar de volver al sistema que inició el ataque. Este acto de reflexión depende de la suplantación de IP; la gran debilidad de UDP es que permite que ocurra la suplantación de identidad. Para falsificar o suplantar una dirección IP en la comunicación UDP, solo tiene que colocar la dirección IP del sistema de destino como dirección de origen en el encabezado del paquete IP. Con UDP, no hay nada inherente al protocolo que lo impida.
¿Por qué UDP permite la suplantación de identidad mientras que TCP no la permite? Considere lo siguiente: Si el servicio Memcached solo está abierto a la comunicación TCP, aún podría emitir el mismo comando Get para buscar la bomba de datos grande, pero no podría falsificar o suplantar la dirección de retorno. Esto se debe a que habría tenido que completar con éxito el protocolo de enlace de tres vías de TCP para establecer una conexión antes de enviar paquetes con comandos Memcached reales. TCP requiere que se intercambien varios paquetes administrativos para establecer la conexión antes de cualquier comunicación real; esta es la conexión (handshake) de tres vías. Completado el apretón de manos (handshake), ambos lados de la comunicación saben con precisión quién está en el otro extremo de la conexión. Cuando un paquete TCP que contiene el comando Get aparece en la instancia de Memcached, si su dirección de origen no se alinea con el estado de la conexión, no recibirá servicio.
Por otro lado, UDP ni siquiera se molesta en rastrear conexiones. Es como contestar el teléfono antes de la era del identificador de llamadas; a menos que quisiera arriesgarse a perder la llamada de un amigo, estaba obligado a responder cada vez que sonaba, dejándolo vulnerable a todo tipo de llamadas de broma y llamadas de ventas agresivas. De la misma manera, cada paquete UDP que llegue debe tomarse al pie de la letra. UDP simplemente no tiene la capacidad de examinar la dirección de origen y decir: «Pero, no estaba hablando con esta persona. ¿Y esto de dónde salió?”
Como esta deficiencia pertenece al propio UDP, cualquier servicio implementado sobre este se puede utilizar como un reflector abierto. Para confirmar que un servicio UDP se puede usar como reflector, todo lo que se requiere es probar que el servicio responde a las consultas, tal como vimos con Memcached.
Principales servicios UDP que lanzan ataques
Si bien observamos más de 1.500 servidores Memcached abiertos para su uso en ataques reflectantes, Memcached no es el único protocolo reflectante principal para el abuso. Los protocolos como LDAP sin conexión (CLDAP), NTP, SSDP, DNS y muchos otros se pueden aprovechar para la reflexión. Al analizar los últimos meses de nuestros datos, algunos de ellos tienen una clasificación mucho más alta que Memcached por el tamaño del ataque más grande observado. Esto se espera debido a la tendencia general de disminución de los reflectores Memcached que están disponibles para abuso.
Distribución de los mayores ataques de UDP observados en el primer trimestre de 2021
LDAP sin conexión
LDAP sin conexión, en particular, representa una amenaza significativa dada la combinación de un factor de amplificación de ancho de banda de 50-70 veces y una disponibilidad generalizada debido a su uso asociado en Directorio activo. Analizamos las direcciones IP observadas que reciben una solicitud de reflexión potencial de 67 bytes en el puerto UDP 389 y que respondieron con datos en UDP 389 en algún momento durante el trimestre. Utilizando esta metodología, Black Lotus Labs descubrió más de 281.000 direcciones IP únicas que parecen responder a las solicitudes de reflexión de CLDAP.
Adicionalmente, CLDAP fue aprovechado en varios ataques recientes a gran escala, como por ejemplo el ataque de 2.3 Tbps contra Amazon en 2020 o más recientemente como descubrimos el ataque del 4 de mayo de 2021 contra unos de los proveedores de servicios de internet del gobierno belga: Belnet.
Durante el período del ataque a Belnet, Black Lotus Labs observó que más del 78% del tráfico destinado a Belnet hizo la transición de la norma esperada de HTTP/HTTPS casi íntegramente a CLDAP. Si bien observamos cierto aumento en otros protocolos reflectantes, ninguno parece haber generado tanto tráfico de ataque por ancho de banda como CLDAP.
Porcentaje de tráfico Belnet por protocolo
DNS en sí como vector de reflexión
Además del abuso con CLDAP, DNS es otro protocolo que resulta a menudo aprovechado sobre UDP y sobre el cual los ataques de reflexión pueden potencialmente ser utilizados para un uso abusivo. Si bien algunos resolvedores de DNS abiertos limitarán los tipos de consultas de las que a menudo se abusa para la reflexión, esta metodología no es una solución perfecta para detener todos los tipos de ataques de DNS reflectantes.
Cuando los atacantes buscan lanzar un ataque reflexivo con DNS, necesitan un dominio y un tipo de registro que les devuelva una respuesta de magnitud. Algunos de los tipos de registro más comunes que devuelven grandes valores son ANY, SRV y TXT. Luego de eliminar A/AAAA, que es el volumen más grande de consultas de DNS que vemos habitualmente, las consultas ANY constituyen una parte significativa de las consultas restantes que observamos en internet.
Porcentaje de las consultas de DNS del tipo ANY
¿Qué más podemos hacer?
Depurar las fuentes de DDoS reflectivas en toda la internet es una cuestión complicada que requiere de un esfuerzo comunitario continuo. Las organizaciones que exponen servicios en Internet deben tener en cuenta cómo se pueden usar para participar en ataques de DDoS reflectantes y, o bien no exponerlos o implementar medidas para mitigarlos. Los proveedores de servicios de Internet, los proveedores de seguridad gerenciada y los investigadores de seguridad también pueden ayudar informando a sus clientes cuando ven servicios reflectantes expuestos y manipulados. Tales esfuerzos han sido efectivos para reducir significativamente el número de instancias Memcached expuestas en los últimos años.
Por nuestra parte en Lumen, cuando encontramos reflectores abiertos alojados en las redes de nuestros clientes objeto del abuso, para causar daños sustanciales en Internet, nos comunicamos con ellos de manera proactiva para comprender mejor la intención del servicio y compartir orientación sobre cómo remediar el peligro.
Si desea colaborar con investigación similares, por favor contáctenos en Twitter @BlackLotusLabs.
Para más información sobre las tendencias de ataques y amenazas de DDoS, consulte el Informe trimestral de DDoS de Lumen del primer trimestre de 2021. Conozca Más
La presente información se provee “como está” sin garantía o condición de ninguna naturaleza, ya sea expresa o implícita. El uso de esta información es responsabilidad del usuario final.
Lea el post original en inglés > https://blog.lumen.com/tracking-udp-reflectors-for-a-safer-internet/
Autor:
Black Lotus Labs
La misión de Black Lotus Labs consiste en aprovechar la visibilidad de nuestra red para ayudar a proteger a los clientes y mantener una internet limpia.