Educational Docker lab for CVE-2026-109618 and CVE-2026-109619.
Pre-auth RCE (CVSS 9.2) in PHP 8.4.x. Fixed in 8.4.27.
- Docker Desktop
- Python 3.9+
docker compose up -d --buildOpen: http://127.0.0.1/
python poc/php2shell_poc.py --port 80 --container Php2Shell --cmd "id"Expected:
[4/4] RCE OK:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Php2Shell-Lab/
├── Dockerfile
├── docker-compose.yml
├── apache.conf
├── README.md
├── LICENSE
├── .gitignore
├── .dockerignore
├── www/
│ ├── index.php
│ └── assets/style.css
├── poc/
│ └── php2shell_poc.py
├── img/
│ └── img1.jpg
└── out/
- Upgrade to PHP 8.4.27+
- Set
session.upload_progress.enabled=Offas temporary mitigation - Restrict
multipart/form-databody sizes at the reverse proxy
PoC based on 9bie's public exploit (Calif/Wiz discovery).
MIT — Author: IhsanSencan
