PT-2026-125882
CVE-2026-110910
·
تاريخ النشر
2026-10-27
·
تاريخ التحديث
2026-11-05
الوصف من
CVSS 4.0
6.3
متوسطةالمقاييسAV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
اسم البرنامج المصاب والإصدارات المتأثرة
qs الإصدارات من 6.12.0 إلى 6.12.5
qs الإصدارات من 6.13.0 إلى 6.13.3
qs الإصدارات من 6.14.0 إلى 6.14.2
qs الإصدارات من 6.15.0 إلى 6.15.3
qs الإصدارات من 6.16.0 إلى 6.16.1
Description
عند استخدام
qs.stringify مع تفعيل خيار allowEmptyArrays بقيمة true ، يفشل البرنامج في ترميز مفاتيح المصفوفات الفارغة. يحدث هذا لأن فرع allowEmptyArrays في lib/stringify.js يعيد المفتاح مبكرًا، متجاوزًا دالتي encoder و formatter. إذا كان المفتاح المقدم من المستخدم يحتوي على رموز خاصة مثل & (أو المحدد المخصص) أو = أو # ، يتم التعامل مع هذه الرموز كبنية لسلسلة الاستعلام (query string) بدلاً من بيانات. يسمح هذا للمهاجم بحقن معاملات إضافية في سلسلة الاستعلام المتسلسلة أو إنهاء السلسلة مبكرًا باستخدام رمز # ، مما يحول ما تبقى من عنوان URL إلى جزء مجزأ (fragment). تؤثر هذه المشكلة تحديدًا على المفاتيح التي تكون قيمها مصفوفات فارغة، ولا تحدث عندما يتم تعيين encode إلى false أو encodeValuesOnly إلى true.Recommendations
تحديث qs إلى الإصدار 6.12.6 للتثبيتات على فرع 6.12.x.
تحديث qs إلى الإصدار 6.13.4 للتثبيتات على فرع 6.13.x.
تحديث qs إلى الإصدار 6.14.3 للتثبيتات على فرع 6.14.x.
تحديث qs إلى الإصدار 6.15.4 للتثبيتات على فرع 6.15.x.
تحديث qs إلى الإصدار 6.16.2 للتثبيتات على فرع 6.16.x.
تحديث qs إلى الإصدار 6.17.0 أو أحدث.
كإجراء تخفيف مؤقت، تجنب تعيين
allowEmptyArrays: true عند معالجة الكائنات التي تحتوي على مفاتيح مشتقة من مدخلات غير موثوقة.قابلية الاستغلال
استغلال
إصلاح
التأثيرات
المورّدون
المنتجات المتأثرة
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾