PT-2026-68815
CVE-2026-71498
·
تاريخ النشر
2026-08-06
·
تاريخ التحديث
2026-10-20
الوصف من
CVSS 3.1
5.1
متوسطةالمقاييسAV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات node-re2 الأقدم من 1.26.1
الوصف
تحدث قراءة خارج النطاق عند تمرير
Buffer الذي تشكل بايتاته الأخيرة تسلسل UTF-8 متعدد البايتات مقطوعًا. يفشل الربط الأصلي في التحقق من صحة حجم المخزن المؤقت المتبقي عند فك تشفير نقطة الرمز الأخيرة، مما قد يؤدي إلى قراءة ما يصل إلى 3 بايتات بعد نهاية المخزن المؤقت المخصص. يحدث هذا لأن الدالة getUtf8CharSize() تستنتج طول الحرف من البايت الأول دون التحقق من البايتات المتبقية الفعلية.يمكن أن تؤدي هذه المشكلة إلى الكشف عن محتويات ذاكرة الهيب المجاورة عند استخدام الدالتين
replace() وsplit(). بالإضافة إلى ذلك، في حين أن تجميع الأنماط عبر منشئ RE2 قد يؤدي إلى قراءة خارج النطاق، إلا أنه لا يؤدي إلى الكشف عن الذاكرة حيث يتم رفض المدخلات غير الصحيحة. تتأثر المدخلات من نوع Buffer فقط؛ أما المدخلات من نوع السلسلة فهي ليست معرضة للخطر حيث يتم إعادة ترميزها إلى UTF-8 صحيح التكوين.التوصيات
قم بتحديث node-re2 إلى الإصدار 1.26.1 أو أحدث.
كحل مؤقت، قم بتمرير سلاسل نصية بدلاً من كائنات
Buffer، أو تحقق من أن مدخلات Buffer مكتوبة بتنسيق UTF-8 صحيح قبل استدعاء replace() أو split() أو منشئ RE2. وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾