PT-2026-80854 · Npm · Webpack-Dev-Middleware
CVSS v4.0
8.3
عالية
| المتجه | AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N |
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات webpack-dev-middleware من 5.3.4 إلى 5.x
إصدارات webpack-dev-middleware من 6.1.2 إلى 6.x
إصدارات webpack-dev-middleware من 7.1.0 إلى 7.x
الوصف
يفشل البرنامج في التحقق بشكل كافٍ من صحة عناوين URL قبل إرجاع الملفات المحلية، مما يسمح بالوصول المحتمل إلى الملفات الموجودة على جهاز المطور. يحدث هذا في الدالة
getFilenameFromUrl() عندما يتم تكوين publicPath بدون شرطة مائلة في النهاية. يمكن للمهاجم صياغة طلب يتم فيه تضمين تسلسل من النقاط داخل جزء من المسار (على سبيل المثال، /assets../.env)، متجاوزًا بذلك آلية الحماية من اجتياز المسار. ثم يقوم النظام بتقسيم المسار عند إزاحة ثابتة، مما يؤدي إلى اجتياز المسار الذي يحل إلى دليل واحد أعلى من مسار الإخراج. تؤثر هذه المشكلة بشكل خاص على البيئات التي تعتمد فيها البرمجيات الوسيطة على نظام الملفات الفعلي، مثل عندما يتم تعيين المتغير writeToDisk إلى true أو يتم توفير outputFileSystem مخصص. إذا كان خادم التطوير مكشوفًا على شبكة أو يسمح بطلبات عبر الأصول، فيمكن للمهاجم استخراج ملفات حساسة مثل كلمات المرور أو شفرة المصدر.التوصيات
بالنسبة لإصدارات webpack-dev-middleware من 5.3.4 إلى 5.x، ومن 6.1.2 إلى 6.x، ومن 7.1.0 إلى 7.x، قم بتعيين المتغير
writeToDisk على false أو تجنب استخدام outputFileSystem مخصص لمنع الوصول إلى نظام الملفات الفعلي.كإجراء تخفيفي مؤقت، تأكد من أن تكوين
publicPath ينتهي بشرطة مائلة في النهاية لمنع تجاوز الإزاحة عن طريقاستغلال
إصلاح
Memory Corruption
Path traversal
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾
المعرّفات ذات الصلة
المنتجات المتأثرة
Webpack-Dev-Middleware