PT-2026-114142
CVE-2026-110816
·
تاريخ النشر
2026-10-14
·
تاريخ التحديث
2026-10-31
الوصف من
CVSS 4.0
6.3
متوسطةالمقاييسAV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
اسم البرنامج المصاب والإصدارات المتأثرة
qs الإصدارات من 6.7.0 إلى 6.16.0
Description
عند استخدام
qs.stringify مع تعيين arrayFormat على القيمة comma ، قد يظهر خطأ من نوع TypeError: Cannot convert object to primitive value. يحدث هذا عندما لا يمكن تحويل عنصر المصفوفة إلى سلسلة نصية، مثل كائن ذو نموذج أولي فارغ (null-prototype object) أو كائن يحتوي على خاصية toString غير قابلة للاستدعاء. ينبع المشكلة من استخدام Array.prototype.join في lib/stringify.js ودالة String() في utils.encode داخل lib/utils.js عندما يتم تفعيل encodeValuesOnly ، حيث لا يقوم أي منهما بمعالجة فشل تحويل السلسلة النصية.يمكن لمهاجم غير مصرح له إثارة هذا الخطأ من خلال تقديم مدخلات مصممة خصيصًا يتم إعادة تسلسلها لاحقًا. اعتمادًا على البيئة، يمكن أن يؤدي ذلك إلى خطأ داخلي في الخادم 500، أو إذا تم استدعاء الدالة خارج حدود معالجة الأخطاء (كما هو الحال في معالج
async في Express 4)، فقد يؤدي ذلك إلى توقف العملية بالكامل.Recommendations
تحديث qs إلى الإصدار 6.16.1 أو إصدار أحدث.
كإجراء تخفيف مؤقت، تجنب استخدام
arrayFormat: 'comma' عند تسلسل البيانات التي قد تكون متأثرة بمدخلات مستخدمين غير موثوقين.قابلية الاستغلال
استغلال
إصلاح
التأثيرات
المورّدون
المنتجات المتأثرة
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾