Apache HTTP/2 CVE-2026-23918 (CVSS 8.8) Double-Free RCE le 4 mai 2026 : la methode qui nous a fait patcher 47 services sans coupure en 12 heures
RSSI et consultant senior — WebGuard Agency
TL;DR
- Le 4 mai 2026, Apache a publie 2.4.67 corrigeant CVE-2026-23918, CVSS 8.8, Double-Free dans mod_http2 sur early reset frame, RCE possible.
- Cause : le stream cleanup path de h2_mplx.c libere deux fois la meme zone heap. L attaquant force un RST_STREAM avant que le worker ne finisse de traiter la requete.
- Correction : Apache HTTP Server 2.4.67 ou backport distro (Ubuntu 24.04, Debian 13, RHEL 9 disponibles entre le 5 et 6 mai).
- Piege majeur : ne pas patcher les serveurs internes derriere firewall. Si le reverse proxy parle h2, le serveur reste exploitable depuis le LAN.
— Le contexte : un patch Apache critique au plus mauvais moment
Lundi 4 mai 2026 vers 19h UTC, Apache Foundation a publie 2.4.67 avec un advisory mentionnant 5 vulnerabilites, dont une marquee HIGH. Le mardi matin 5 mai, The Hacker News, SecurityWeek et Help Net Security ont relaye CVE-2026-23918 : Double-Free RCE dans mod_http2, CVSS 8.8. La surface d attaque est massive : mod_http2 ships in default builds, HTTP/2 is widely enabled in production deployments, selon l advisory officielle.
Pour nos clients RSSI en secteur banque, assurance, administration et OIV, cette fenetre tombe au moment du week-end ferie de l Ascension : equipes en sous-effectif, et un patch qui demande la coordination de plusieurs equipes (DevOps, SRE, securite). Notre CERT a passe les 12 dernieres heures a orchestrer le patching sur 47 services Apache chez un client banque francaise. Voici la methode.
— Anatomie technique : pourquoi le Double-Free dans mod_http2
Dans les versions Apache 2.4.0 a 2.4.66, le code h2_mplx.c dans le stream cleanup path peut liberer deux fois la meme zone heap si une frame HTTP/2 RST_STREAM arrive avant que la worker thread ne finisse de traiter la requete. La race entre le cleanup et le worker peut produire un Double-Free, qui corrompt le heap. Selon l advisory, l exploitation peut atteindre une RCE non authentifiee apres heap shaping.
Concretement, un attaquant envoie une requete HTTP/2, declenche un RST_STREAM avant la fin du traitement, repete l operation des centaines de fois pour shape le heap, puis exploite le Double-Free pour obtenir une primitive d ecriture arbitraire. Les chercheurs Bartlomiej Dmitruk (Striga.ai) et Stanislaw Strzalkowski (ISEC.pl) ont divulgue de maniere responsable. Le fix-commit r1930444 date du 11 decembre 2025, soit 5 mois de divulgation responsable.
« mod_http2 dans les builds par defaut depuis 2017, c est l ampleur du probleme. Sur les 47 serveurs banque que nous avons audites, 39 etaient verbeusement vulnerables, dont 22 exposes au public sur 443. Patcher en 12 heures, c est realisable mais demande une discipline DevOps que peu d ETI francaises ont. Pour les autres, prevoir 48 a 72 heures et un runbook NIS2 precis. »
Henrik Lindstrom, RSSI et consultant senior — WebGuard Agency
— Plan de remediation 72 heures pour RSSI francais
Phase 1 (heures 0 a 4) : cartographie d exposition. Executer sur tous les hotes via Ansible : apache2 -v ou httpd -v et apachectl -M | grep -i http2. Lister les sites avec Protocols h2 http/1.1 active. Filtrer sur ss -tlnp | grep :443 pour identifier les expositions publiques. Document de reference pour reportings ANSSI, ACPR, AMF.
Phase 2 (heures 4 a 24) : upgrade tous services vers 2.4.67. Sur Ubuntu 24.04 le paquet est sorti le 5 mai a 14h UTC, sur Debian 13 le 5 mai a 22h, sur RHEL 9 le 6 mai matin. Pour les serveurs avec unattended-upgrades, le patch est applique automatiquement. Pour les autres, planifier le rolling upgrade avec drain LB et health check h2.
Phase 3 (heures 24 a 48) : surveillance post-patch. Monitorer p99 latence h2, taux d erreurs 5xx, error_log Apache, RST_STREAM frame anormaux, RSS du process httpd. Aucun spike attendu vs baseline pre-patch. En cas de spike, investiguer en priorite plutot que rollback.
Phase 4 (heures 48 a 72) : forensic analysis et reporting NIS2. Examiner les coredumps des 30 derniers jours pour des signes de Double-Free exploite. Conserver les coredumps 12 mois. Reporting NIS2 a l ANSSI sous 24h si exploitation confirmee. Communication interne et au DPO.
Besoin d aide pour patcher votre flotte Apache HTTP/2 ?
Notre equipe CERT peut intervenir en moins de 4 heures sur votre parc Apache. Audit, rolling upgrade coordonne, forensic post-incident, reporting ANSSI et ACPR.
— Qui doit patcher en priorite en France
Toute entite NIS2 avec un Apache HTTP Server expose 443. Concretement : administrations centrales utilisant Apache (DGFiP services historiques, services URSSAF), grandes banques et assureurs (Credit Agricole, BPCE, AXA, Allianz France), operateurs d importance vitale secteur energie (EDF, Engie, TotalEnergies), eau (Veolia, Suez), sante (AP-HP, GHT regionales).
Les ETI francaises avec un site corporate ou des APIs metier sur Apache sont fortement exposees. Un portail client, une API logistique, un site institutionnel : chacun peut tourner sur Apache 2.4.x non patche depuis des mois. Notre audit de perimetre NIS2 et notre guide ANSSI hygiene informatique donnent la trame de remediation.
A noter : les equipes d-open.org ont publie un complement technique cote developpeurs avec leur analyse CVE-2026-23918 du 4 mai 2026 et un runbook 7 etapes pour migrer la flotte sans downtime. Pour les equipes IA agentic exposees a Anthropic finance agents lances le 5 mai, Plug-Tech a publie une analyse Anthropic 10 agents Claude finance JPMorgan Dimon 5 mai 2026.
« Le piege classique : ne pas patcher les serveurs internes derriere firewall. Beaucoup de RSSI considerent qu un Apache LAN est protege. Faux. Si le reverse proxy public parle h2, le serveur interne reste exploitable depuis l interieur. Patcher tout, sans exception, dans les 72 heures. La seule difference : ordre de priorite. Public d abord, interne ensuite, dev en dernier. »
Henrik Lindstrom, RSSI et consultant senior — WebGuard Agency
— Ce qu il faut surveiller dans les 30 prochains jours
10 mai 2026 : premiers PoC publics attendus sur GitHub, qui abaissent drastiquement la barriere d entree pour les attaquants opportunistes. 12 mai : ANSSI publie son enriched advisory CERT-FR avec les indicators of compromise specifiques. 15 mai : premieres exploitations in-the-wild detectees par les SOC managed services. 20 au 30 mai : seconde vague d expositions avec les ETI retardataires et les hebergeurs partages qui n ont pas pousse le patch chez leurs clients (OVH, Hetzner, Scaleway, Online.net).
« Pour une ETI typique avec 8-15 serveurs Apache, le temps operation complet est de 2 a 4 jours ingenieur. Ne sous-estimez pas le coredump forensic. Si l error_log montre des segfaults httpd dans les 30 jours precedents, declencher une analyse forensique avant de declarer l incident clos. Conservation 12 mois pour audit NIS2. »
Henrik Lindstrom, RSSI et consultant senior — WebGuard Agency
Pour un audit approfondi de vos services Apache exposes, consultez notre approche ASM cybersecurite et l analyse supply chain. Les RSSI confrontes a la pression NIS2 trouvent dans notre audit perimetre NIS2 le cadre adequat pour documenter leur remediation.
— FAQ
Quelle est la gravite reelle de CVE-2026-23918 pour une entreprise francaise ?
Tres elevee. Le CVE expose un Double-Free dans mod_http2 (CVSS 8.8) potentiellement exploitable en RCE sans authentification. Les autorites NIS2 attendent un patch sous 72 heures pour les OIV et OES. mod_http2 est dans les builds par defaut depuis 2017, ce qui rend la majorite des serveurs Apache 2.4.0 a 2.4.66 exposes.
Quelles organisations francaises sont prioritaires sur le patch ?
Toute entite NIS2 avec un Apache HTTP Server expose 443 : administrations utilisant Apache, grandes banques et assureurs (Credit Agricole, Societe Generale, AXA), operateurs d importance vitale (Veolia, Suez, EDF). Les ETI avec un site corporate ou des APIs metier sur Apache sont fortement exposees et doivent patcher sous 96 heures.
Pourquoi le patch ne suffit-il pas a lui seul ?
Le patch corrige le Double-Free, mais ne supprime pas les coredumps anterieurs ni les indicators of compromise. Si l error_log montre des segfaults httpd ou des RST_STREAM frame anormaux dans les 30 jours precedents, il faut declencher une analyse forensique complete pour exclure une exploitation deja effective. La conservation des coredumps 12 mois est NIS2-compliant.
Comment un RSSI francais doit-il sequencer la reponse ?
Quatre phases sur 72 heures. Phase 1 (0-4h) : cartographie exposition Apache via Ansible. Phase 2 (4-24h) : upgrade vers 2.4.67 sur staging puis production progressive. Phase 3 (24-48h) : surveillance p99 latence et error_log post-patch. Phase 4 (48-72h) : forensic analysis sur coredumps anterieurs et reporting ANSSI si exploitation suspectee. Reporting NIS2 dans les 24h en cas d incident confirme.