Se ha revelado información sobre la vulnerabilidad «HTTP/2 Bomb», que afecta a varias implementaciones del protocolo HTTP/2 y permite provocar una denegación de servicio mediante el agotamiento de toda la memoria disponible del proceso. El problema ha sido confirmado en servidores HTTP como nginx, Apache httpd (CVE-2026-49975), Microsoft IIS, Envoy (CVE-2026-47774) y Cloudflare Pingora en configuración por defecto.
La vulnerabilidad utiliza un método similar a una bomba zip, aplicada a la funcionalidad de compresión de encabezados en HTTP/2. La idea es que la solicitud puede contener miles de encabezados comprimidos, como «Cookie», sin datos adjuntos, cada uno de los cuales en la solicitud se representa con un índice de un solo byte en HPACK, pero que servidor requiere asignación de memoria completa para todo el encabezado. El nivel de consumo de memoria en varios servidores HTTP varía desde aproximadamente 70 bytes por cada byte en el índice para nginx, IIS y Pingora, hasta 4000 bytes en Apache httpd y 5700 en Envoy. En un ataque desde una computadora de consumo con un canal de 100Mbps, se requieren aproximadamente 10 segundos para agotar 32 GB de memoria atacando servidor con Envoy 1.37.2, 18 segundos con Apache httpd 2.4.67 y 45 segundos con nginx 1.29.7.
Para bloquear la vulnerabilidad, en la versión 1.29.8 de nginx se trasladó la directiva max_headers del proyecto freenginx, que por defecto permite el procesamiento de no más de 1000 encabezados. En Envoy, la corrección
se incluye en las versiones 1.35.11 y 1.36.7, en las cuales se implementaron los límites mutable_max_request_headers_kb y max_headers_count. En Apache httpd, la corrección se propone en la versión del módulo mod_http2 2.0.41, que aún no se ha incluido en los lanzamientos de Apache httpd. Para
Microsoft IIS y Cloudflare Pingora, las correcciones aún están ausentes.
Como solución alternativa de protección, se puede deshabilitar el uso del protocolo HTTP/2 y establecer un límite en la cantidad de memoria disponible para los procesos de trabajo.
Fuente: opennet.ru
