
يكتشف ويستغل ثغرة اجتياز الدليل CVE-2025-55752 في Apache Tomcat عبر Rewrite Valve، مما يتيح رفع ملفات JSP عبر PUT وتنفيذ الأكواد عن بُعد.
🚨🚨 CVE-2025-55752 — Apache Tomcat: تجاوز حماية الدليل عبر Rewrite Valve → تنفيذ أوامر عن بُعد (RCE)🚨🚨 الملخص
CVE-2025-55752 هو انحدار أمني في Apache Tomcat تم تقديمه أثناء إصلاح الخطأ #60013. عند استخدام Rewrite Valve، يقوم Tomcat بتطبيق تطبيع المسار قبل فك ترميز URL. هذا الترتيب غير الصحيح يتيح لـ URIs المصممة بعناية تجاوز فحوصات الوصول المنفذة في StandardContextValve.java للمسارات المحمية مثل /WEB-INF/ و /META-INF/. إذا كان الخادم يقبل طلبات HTTP PUT (أو يعرض أي نقطة نهاية لرفع الملفات قابلة للكتابة)، يمكن للمهاجم رفع ملفات خبيثة (مثل .jsp أو جلسات متسلسلة) وتحقيق تنفيذ أوامر عن بُعد (RCE).
🚨 الإصدارات المتأثرة
الفروع الأقدم منتهية الدعم (EOL) من Tomcat التي تضمنت تغيير إعادة الكتابة/التطبيع قد تكون متأثرة أيضًا. تحقق من إصدارك المحدد/بناء المورد الخاص بك.
🚨 التأثير
PUT (أو نقاط نهاية أخرى قابلة للكتابة) أو عندما تسمح تطبيقات الويب برفع الملفات دون تحقق كافٍ.🚨🚨 التفاصيل الفنية (موجزة)
StandardContextValve لـ /WEB-INF/ و /META-INF/.PUT أو لديه نقطة نهاية لرفع الملفات تضع الملفات تحت جذر مستندات تطبيق الويب، يمكن للمهاجم كتابة .jsp أو محتوى قابل للتنفيذ آخر في موقع يخدمه/ينفذه الخادم، مما يؤدي إلى RCE.استراتيجيات المعالجة والدفاع
فوري (موصى به)
قم بترقية Tomcat إلى إصدار مدعوم ومُصلح في أقرب وقت ممكن:
إذا لم تكن الترقية الفورية ممكنة (تخفيفات مؤقتة)
عطّل HTTP PUT على مستوى الخادم أو الموصل أو الوكيل العكسي (على سبيل المثال، عبر إعدادات خادم الويب أو قواعد جدار الحماية).
قم بتقوية / إزالة قواعد Rewrite التي تسمح بإعادة الكتابة العشوائية إلى مواقع قابلة للكتابة؛ على وجه التحديد قم بإزالة القواعد التي تعيد كتابة أو تعيد توجيه معلمات الاستعلام إلى مسارات الملفات.
قم بتقوية معالجة رفع الملفات في تطبيقات الويب:
/WEB-INF/ أو /META-INF/ أو أي classpath للتطبيق.قم بتصفية/حظر URIs الاستغلالية على المحيط (WAF / وكيل عكسي) عن طريق حظر الحمولات المشفرة المشبوهة والأنماط التي تحاول تجاوز حمايات /WEB-INF أو /META-INF.
الحد الأدنى من الامتيازات لمخازن الملفات: تأكد من أن عملية تطبيق الويب لا يمكنها الكتابة إلى الدلائل التي يخدمها أو ينفذها الحاوية.
نظرة عامة على الوظيفة
تقوم هذه الأداة بالكشف على مرحلتين بناءً على وصف CVE-2025-55752 الرسمي:
تحاول استغلال الترتيب غير الصحيح لتطبيع URL قبل فك الترميز في Rewrite Valve الخاص بـ Apache Tomcat، مما يسمح بتجاوز المسار إلى المواقع المحمية مثل /WEB-INF أو /META-INF.
تحاول رفع ملف JSP اختباري عبر HTTP PUT، ثم تتحقق مما إذا كان يمكن تجاوز آليات الحماية للوصول إلى الملف المرفوع.
تحقق مما إذا كان تجاوز المسار إلى الدلائل المحمية ممكنًا:
python3 cve_2025_55752_detector.py http://target:8080 --check
محاولة رفع ملف JSP واختبار تجاوز الوصول:
python3 cve_2025_55752_detector.py http://target:8080
🔧 تخصيص اسم الملف ومحتوى الحمولة:
python3 cve_2025_55752_detector.py http://target:8080 --filename exploit.jsp --payload "<% out.println('PWNED'); %>"