CVE-2026-73086 in nanoid
الملخص
بحسب VulDB • 11/08/2026
nanoid هو مولّد معرفات فريدة (IDs) للسلاسل النصية، آمن ومتوافق مع عناوين URL، ومخصص لبيئة JavaScript. قبل الإصدارين 3.3.12 و5.1.11، كانت دالة `nanoid(size)` الموجودة في الملفين `index.js` و`index.cjs` تقوم بإجبار (coerce) معلمة الحجم المتأثرة من قِبل المستخدم على تحويلها إلى عدد صحيح موقّت 32 بت (signed 32-bit integer)، مما يسمح للقيمة 2147483648 بأن تتحول إلى -2147483648. وهذا يؤدي إلى إتلاف متغير `poolOffset` الخاص بمجمع مولد الأرقام العشوائية المشفر القوي المعتمد على النظام (CSPRNG) عبر العملية بأكملها داخل دالة `fillPool()`، مما يتسبب في أن تصبح رموز الجلسات اللاحقة، ورموز CSRF، ومفاتيح واجهة برمجة التطبيقات (API keys)، والمعرفات الفريدة الأخرى سلسلة نصية حتمية ثابتة وهي "uuuuuuuuuuuuuuuuuuuuu" حتى يتم إعادة تشغيل العملية. تم إصلاح هذه المشكلة في الإصدارين 3.3.12 و5.1.11.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.