🗓️ Contexte

Publié le 2 juin 2026 sur le blog Calif (blog.calif.io), cet article présente la divulgation publique d’un exploit de déni de service distant baptisé HTTP/2 Bomb, découvert par l’IA Codex de OpenAI. La découverte a été réalisée par Quang Luong, avec confirmation par Jun Rong et Duc Phan.

🎯 Nature de l’attaque

L’exploit chaîne deux techniques connues depuis une décennie :

  • HPACK Indexed Reference Bomb : insertion d’un header dans la table dynamique HPACK (RFC 7541), puis émission de milliers de références indexées d’un seul octet. Chaque octet sur le réseau provoque une allocation mémoire côté serveur allant de ~70 octets (nginx, IIS, Pingora) à ~4 000 octets (Apache httpd, Envoy).
  • HTTP/2 Window Stall : annonce d’une fenêtre de contrôle de flux à zéro octet, empêchant le serveur de libérer la mémoire allouée, avec envoi de trames WINDOW_UPDATE d’un octet pour maintenir la connexion ouverte indéfiniment.

La nouveauté réside dans la source de l’amplification : contrairement aux bombes classiques qui stockent une grande valeur, ici le header est quasi vide et l’amplification provient du bookkeeping par entrée alloué par le serveur, contournant les limites de taille de header décodé.

Pour Apache et Envoy, le bypass du compteur de champs utilise le header Cookie (RFC 9113 §8.2.3 autorisant le découpage en un champ par fragment), les fragments n’étant pas comptabilisés contre la limite.

📊 Impact mesuré

Serveur Amplification Résultat démontré
Envoy 1.37.2 ~5 700:1 ~32 GB en ~10s
Apache httpd 2.4.67 ~4 000:1 ~32 GB en ~18s
nginx 1.29.7 ~70:1 ~32 GB en ~45s
Microsoft IIS (Windows Server 2025) ~68:1 ~64 GB en ~45s

Un ordinateur domestique sur une connexion 100 Mbps peut rendre un serveur vulnérable inaccessible en quelques secondes. Plus de 880 000 sites exposés ont été identifiés via Shodan.

🔗 Historique et CVEs associés

  • CVE-2016-6581 : HPACK Bomb original (Cory Benfield, 2016)
  • CVE-2025-53020 : amplification ~4000x contre Apache httpd (Gal Bar Nahum, 2025)
  • CVE-2016-8740 : trames CONTINUATION non bornées dans Apache httpd
  • CVE-2016-1546 : épuisement de threads dans Apache httpd
  • CVE-2026-49975 : vulnérabilité actuelle dans Apache httpd (fix : cookie crumbs comptabilisés contre LimitRequestFields)

🛡️ Correctifs disponibles

  • nginx : correctif dans la version 1.29.8 (directive max_headers, défaut 1000)
  • Apache httpd : correctif dans mod_http2 v2.0.41 (CVE-2026-49975, fix par Stefan Eissing le 27 mai 2026)
  • Envoy : patches publiés le 3 juin 2026 (validation en cours)
  • Microsoft IIS et Cloudflare Pingora : aucun patch disponible au moment de la publication

📌 Type d’article

Il s’agit d’une publication de recherche combinant divulgation technique détaillée, démonstration de PoC et analyse de l’impact, visant à informer les opérateurs des serveurs concernés et à documenter la méthodologie de découverte assistée par IA.

🧠 TTPs et IOCs détectés

TTP

  • T1499 — Endpoint Denial of Service (Impact)
  • T1499.002 — Service Exhaustion Flood (Impact)

IOC


🟡 Indice de vérification factuelle : 63/100 (moyenne)

  • ✅ blog.calif.io — source reconnue (Rösti community) (20pts)
  • ✅ 10012 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 5 IOCs (IPs/domaines/CVEs) (10pts)
  • ⬜ pas d’IOC vérifié (0pts)
  • ✅ 2 TTP(s) MITRE (8pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ 0/5 CVE(s) confirmée(s) (0pts)

🔗 Source originale : https://blog.calif.io/p/codex-discovered-a-hidden-http2-bomb