
بيئة مختبرية قائمة على Docker لدراسة CVE-2024-4577، وهي ثغرة حقن وسائط في PHP-CGI، مع Apache و PHP 8.1.2 في وضع CGI.
مخطط البيئة
حاوية نظام التشغيل: ubuntu:22.04 (تعمل تحت Windows WSL2).
طبقة خادم الويب: Apache2 مع فرض mod_actions وmod_cgi وmod_cgid عموميًا في ملف apache2.conf الرئيسي.
مفسّر اللغة: PHP 8.1.2 يعمل حصريًا في وضع CGI/FastCGI (Server API).
بنية الملفات: دليل app/ وظيفي يستضيف كود التنفيذ (index.php) وأصل تحدٍّ مُحاكى.
آليات الثغرة الجوهرية المدروسة
الثغرة المستهدفة (CVE-2024-4577): مشكلة حقن وسائط (argument injection) تستهدف الأنظمة التي تمر فيها المعاملات غير الموثّقة مباشرةً إلى محرك php-cgi القابل للتنفيذ.
قيد ترميز نظام التشغيل: نجح المختبر في إظهار مسار معالجة CGI القديم، وهو ما يُبرز اختلافًا بين المنصات. يعتمد الاستغلال في العالم الحقيقي على خاصية Best-Fit Mapping في Windows (حيث تفسّر صفحات الترميز مثل CP936 أو CP950 الشرطات الناعمة كشرطات عادية بعد فحوصات تطبيق الويب). ولأن الحاوية تعمل على أساس Ubuntu/UTF-8، فإنها تظل محصّنة بطبيعتها ضد تقنية تحويل المحارف المحددة هذه.
