PT-2026-41772 · Git+2 · Parse-Nested-Form-Data
CVSS v3.1
8.2
عالية
| المتجه | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L |
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات
parse-nested-form-data الأقدم من 1.0.1الوصف
تقوم الدالة
parseFormData() بمعالجة أسماء حقول FormData المكتوبة بين قوسين أو بالترميز النقطي وتحويلها إلى كائنات متداخلة دون تصفية مفاتيح الخصائص المحجوزة. يمكن للمهاجم استخدام اسم حقل FormData يبدأ بـ proto أو يحتوي على . proto . في منتصف المسار لإجبار المحلل على الانتقال إلى Object.prototype وتعيين خصائص هناك. ينتج عن ذلك تلوث النموذج الأولي (prototype pollution)، حيث تتلوث سلسلة النماذج الأولية لكل كائن عادي في العملية قيد التشغيل. تكمن المشكلة في الدالة handlePathPart() الموجودة في ملف src/index.ts، والتي تفشل في رفض المفاتيح المحجوزة أثناء معالجة مقطع المسار من نوع الكائن. قد يؤدي ذلك إلى تلف حالة التطبيق، أو تغيير تدفق التحكم، أو رفض الخدمة في التطبيقات التي تعالج FormData التي يتحكم فيها المهاجم، مثل خوادم HTTP.التوصيات
قم بالتحديث إلى الإصدار 1.0.1.
كحل مؤقت، تحقق من صحة أسماء الحقول للتأكد من أنها لا تحتوي على
proto أو constructor أو prototype قبل استدعاء الدالة parseFormData().استغلال
إصلاح
Prototype Pollution
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾
تصنيف نقاط الضعف
المعرّفات ذات الصلة
المنتجات المتأثرة
Parse-Nested-Form-Data