Ataque CPDoS que hace que las páginas servidas a través de CDN sean inaccesibles

Investigadores de las universidades de Hamburgo y Colonia
han desarrollado una nueva técnica para atacar redes de entrega de contenido y servidores proxy de almacenamiento en caché: CPDoS (Denegación de servicio envenenada por caché). El ataque permite denegar el acceso a la página mediante envenenamiento de caché.

El problema está relacionado con el hecho de que las CDN no solo almacenan en caché las solicitudes completadas con éxito, sino también situaciones en las que el servidor http devuelve un error. Como regla general, en caso de problemas con la formación de solicitudes, el servidor emite un error 400 (Solicitud incorrecta), la única excepción es IIS, que emite un error 404 (No encontrado) para encabezados demasiado grandes. El estándar solo permite almacenar en caché los errores 404 (No encontrado), 405 (Método no permitido), 410 (Desaparecido) y 501 (No implementado), pero algunas CDN también almacenan en caché las respuestas 400 (Solicitud incorrecta), que dependen de la solicitud enviada. .

Los atacantes pueden provocar que se devuelva un error "400 Bad Request" en el recurso original enviando una solicitud con encabezados HTTP especialmente diseñados. La CDN no tiene en cuenta estos encabezados, por lo que la información sobre la imposibilidad de acceder a la página se almacenará en caché y todas las demás solicitudes válidas del usuario antes de que expire el tiempo de espera pueden generar un error, a pesar de que el sitio de origen devuelve el contenido. sin ningún problema.

Para obligar al servidor HTTP a devolver un error, se han propuesto tres opciones de ataque:

  • HMO (anulación del método HTTP): un atacante puede anular el método de solicitud original a través de los encabezados "X-HTTP-Method-Override", "X-HTTP-Method" o "X-Method-Override" admitidos por algunos servidores, pero no considerado en la CDN. Por ejemplo, puede cambiar el método "GET" original al método "DELETE" que está prohibido en el servidor o al método "POST" que no es aplicable para estática;

    Ataque CPDoS que hace que las páginas servidas a través de CDN sean inaccesibles

  • HHO (HTTP Header Oversize): un atacante puede elegir el tamaño del encabezado de tal manera que exceda el límite del servidor de origen, pero no esté sujeto a las restricciones de CDN. Por ejemplo, Apache httpd limita el tamaño del encabezado a 8 KB, mientras que Amazon Cloudfront CDN permite encabezados de hasta 20 KB;
    Ataque CPDoS que hace que las páginas servidas a través de CDN sean inaccesibles

  • HMC (metacarácter HTTP): un atacante puede sustituir caracteres especiales (\n, \r, \a) en la solicitud, que se consideran no válidos en el servidor de origen, pero se ignoran en la CDN.

    Ataque CPDoS que hace que las páginas servidas a través de CDN sean inaccesibles

El CDN CloudFront utilizado en Amazon Web Services (AWS) resultó ser el más susceptible al ataque. Amazon ahora ha solucionado el problema prohibiendo el almacenamiento en caché de errores, pero a los investigadores les llevó más de tres meses agregar la protección. El problema también afectó a Cloudflare, Varnish, Akamai, CDN77 y
Rápidamente, pero el ataque a través de ellos se limita a servidores de destino que utilizan IIS, ASP.NET, Frasco и Juega 1. Se observaEl 11% de los dominios del Departamento de Defensa de EE. UU., el 16% de las URL de la base de datos HTTP Archive y alrededor del 30% de los 500 sitios más grandes según la clasificación de Alexa podrían ser atacados.

Como solución alternativa para bloquear un ataque en el sitio, puede utilizar el encabezado "Cache-Control: no-store", que prohíbe el almacenamiento en caché de las respuestas. Algunas CDN, como
CloudFront y Akamai, puede desactivar el almacenamiento en caché de errores en el nivel de configuración del perfil. Para protección, también puede utilizar firewalls para aplicaciones web (WAF, Web Application Firewall), pero deben implementarse en el lado CDN frente a los hosts de almacenamiento en caché.

Fuente: opennet.ru

Añadir un comentario