CVE-2024-32962
تجاوز التحقق من توقيع XML بسبب التحقق غير السليم من التوقيع / انتحال التوقيع
- تم النشر
- 02/05/2024
- محدث
- 13/02/2025
- تخصيص CNA
- GitHub_M
- الأدلة المرصودة
- 08/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:Nمنخفض · الثلاثين يومًا القادمة
- المئوية
- 55.7%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
xml-crypto هي مكتبة توقيع رقمي وتشفير XML لـ Node.js. في الإصدارات المتأثرة، لا يتحقق التكوين الافتراضي من تفويض الموقّع، بل يتحقق فقط من صحة التوقيع وفقًا للقسم 3.2.2 من مواصفة w3 xmldsig-core-20080610. ونتيجة لذلك، وبدون خطوات تحقق إضافية، يسمح التكوين الافتراضي لممثل خبيث بإعادة توقيع مستند XML، ووضع الشهادة في عنصر `<KeyInfo />`، واجتياز فحوصات التحقق الافتراضية لـ `xml-crypto`. وبالتالي، يثق `xml-crypto` افتراضيًا بأي شهادة مقدمة عبر عنصر `<KeyInfo />` الخاص بمستند XML الموقّع رقميًا. يفضّل `xml-crypto` استخدام أي شهادة مقدمة عبر عنصر `<KeyInfo />` الخاص بمستند XML الموقّع رقميًا حتى إذا تم تكوين المكتبة لاستخدام شهادة معينة (`publicCert`) لأغراض التحقق من التوقيع. يمكن للمهاجم تزييف التحقق من التوقيع عن طريق تعديل مستند XML واستبدال التوقيع الموجود بتوقيع تم إنشاؤه بمفتاح خاص خبيث (تم إنشاؤه بواسطة المهاجم) وإرفاق شهادة ذلك المفتاح الخاص بعنصر `<KeyInfo />`. هذه الثغرة هي مزيج من التغييرات التي أُدخلت في `4.0.0` في طلب السحب 301 / الالتزام `c2b83f98` وقد تمت معالجتها في الإصدار 6.0.0 عبر طلب السحب 445 / الالتزام `21201723d`. يُنصح المستخدمون بالترقية. يمكن للمستخدمين غير القادرين على الترقية إما التحقق من الشهادة المستخرجة عبر `getCertFromKeyInfo` مقابل الشهادات الموثوقة قبل قبول نتائج التحقق، أو تعيين `getCertFromKeyInfo` الخاص بـ `xml-crypto` إلى `() => undefined` لإجبار `xml-crypto` على استخدام `publicCert` أو `privateKey` مكوّن بشكل صريح للتحقق من التوقيع.
المصادر
1يحاكي هجومًا يستغل CVE-2024-32962 لتزوير رسائل SAML والحصول على أذونات غير مصرح بها، مما يوضح تأثير الثغرة.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.