
Воспроизводимый Proof-of-Concept для CVE-2021-3007 (десериализация HTTP в Laminas/Zend, RCE) с отдельным эксплойт-скриптом, шаблоном Nuclei и уязвимой средой на базе Docker для авторизованного тестирования безопасности.
Этот репозиторий содержит полностью воспроизводимое доказательство концепции (Proof-of-Concept) и шаблон эксплойта для Nuclei для уязвимости CVE-2021-3007 — критической уязвимости десериализации PHP в Zend\Http\Response\Stream (laminas-http < 2.14.2), которая позволяет записывать произвольные файлы через контролируемые злоумышленником сериализованные объекты.
Данный шаблон использует реальную логику эксплуатации (а не детекцию по версии) и включает среду Docker и отладочный вывод для верификации.
CVE-2021-3007/ ├── CVE-2021-3007.yaml -> Шаблон эксплойта для Nuclei ├── docker-compose.yml -> Уязвимая тестовая среда ├── Dockerfile ├── vulnerable-app/ │ ├── index.php -> Уязвимая конечная точка с unserialize() │ └── composer.json -> Уязвимая зависимость ├── exploit.php -> Автономный скрипт эксплойта └── README.txt
Запустите уязвимое приложение
docker-compose up -d
Проверка: curl http://127.0.0.1:8080
Ручная проверка эксплойта (опционально)
docker exec -it cve-2021-3007-vulnerable php /var/www/html/exploit.php
http://localhost/index.php test.txt proof
Запустите шаблон Nuclei и соберите отладочные логи
nuclei -u http://127.0.0.1:8080
-t CVE-2021-3007.yaml
-debug -vv
-o nuclei-debug-CVE-2021-3007.log
Отладочный лог содержит полные HTTP-запросы, данные полезной нагрузки и ответы, подтверждающие эксплуатацию.
docker-compose down -v
Данное PoC удовлетворяет требованиям программы Nuclei Rewards Program:
Файлы для PR-заявки:
Только для образовательного и авторизованного тестирования безопасности.