PT-2026-53025

CVE-2026-50029

·

تاريخ النشر

2026-06-26

·

تاريخ التحديث

2026-08-17

الوصف من

CVSS 3.1
5.3
متوسطة
المقاييسAV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات js-toml الأقدم من 1.1.2
الوصف
يقوم المترجم التحويلي بالتحقق بشكل غير صحيح من وجود مفتاح ما بالفعل في حاوية أنشأها المحلل النحوي باستخدام if (object[key]) بدلاً من if (key in object). وعندما يُعيَّن لمفتاح ما قيمة أولية كاذبة — مثل false أو 0 أو 0n أو 0.0 أو -0 أو ”“ — يتم تجاوز فحص تكرار المفتاح. وهذا يسمح بالكتابة فوق القيمة بصمت بواسطة جدول فرعي لاحق، أو جدول فرعي ذي مفتاح منقط، أو مصفوفة من الجداول التي تستخدم الاسم نفسه، مما ينتهك مواصفات TOML 1.0.0 التي تنص على أن تعريف مفتاح عدة مرات غير صالح.
ويؤدي ذلك إلى حدوث خلط في أنواع البنية في القيمة التي تُرجعها الدالة load()، حيث يتم تحويل قيمة بدائية كاذبة (مثل القيمة المنطقية false) إلى كائن صحيح. ونتيجةً لذلك، قد تقوم التطبيقات المضيفة التي تعتمد على هذه القيم في عمليات التوجيه المنطقي (على سبيل المثال، if (config.flag)) بتنفيذ الفرع الصحيح عن غير قصد. توجد هذه المشكلة في الدالتين Interpreter.tryCreatingObject() وInterpreter.getOrCreateArray().
التوصيات
تحديث js-toml إلى الإصدار 1.1.2.
قابلية الاستغلال
استغلال
إصلاح
المورّدون
المنتجات المتأثرة
تصنيف نقاط الضعف
المعرّفات ذات الصلة
GHSA-M34P-749J-X6M6
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾