CVE-2022-0778
حلقة لا نهائية في BN_mod_sqrt() يمكن الوصول إليها عند تحليل الشهادات
- تم النشر
- 15/03/2022
- محدث
- 14/10/2026
- تخصيص CNA
- openssl
- الأدلة المرصودة
- 08/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:Hمرتفع · الثلاثين يومًا القادمة
- المئوية
- 99.5%
- تاريخ الموديل
- 15/10/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
دالة BN_mod_sqrt()، التي تحسب الجذر التربيعي النمطي، تحتوي على خلل يمكن أن يتسبب في تكرارها إلى ما لا نهاية عند استخدام معاملات غير أولية. داخليًا، تُستخدم هذه الدالة عند تحليل الشهادات التي تحتوي على مفاتيح عامة لمنحنيات إهليلجية بصيغة مضغوطة أو معاملات منحنيات إهليلجية صريحة مع نقطة أساس مشفرة بصيغة مضغوطة. من الممكن تحفيز الحلقة اللانهائية عن طريق صياغة شهادة تحتوي على معاملات منحنى صريحة غير صالحة. وبما أن تحليل الشهادة يحدث قبل التحقق من توقيع الشهادة، فإن أي عملية تحلل شهادة مقدمة خارجيًا قد تكون عرضة لهجوم حجب الخدمة. يمكن أيضًا الوصول إلى الحلقة اللانهائية عند تحليل مفاتيح خاصة مصممة بعناية، لأنها يمكن أن تحتوي على معاملات منحنيات إهليلجية صريحة. وبالتالي تتضمن الحالات القابلة للاستغلال ما يلي: - عملاء TLS الذين يستهلكون شهادات الخادم - خوادم TLS الذين يستهلكون شهادات العميل - مزودو الاستضافة الذين يأخذون شهادات أو مفاتيح خاصة من العملاء - سلطات الشهادات التي تحلل طلبات التصديق المقدمة من المشتركين - أي شيء آخر يحلل معاملات المنحنى الإهليلجي ASN.1 كما أن أي تطبيقات أخرى تستخدم BN_mod_sqrt() حيث يمكن للمهاجم التحكم في قيم المعاملات تكون عرضة لهذه المشكلة DoS. في إصدار OpenSSL 1.0.2، لا يتم تحليل المفتاح العام أثناء التحليل الأولي للشهادة، مما يجعل تحفيز الحلقة اللانهائية أصعب قليلاً. ومع ذلك، فإن أي عملية تتطلب المفتاح العام من الشهادة ستؤدي إلى تحفيز الحلقة اللانهائية. على وجه الخصوص، يمكن للمهاجم استخدام شهادة موقعة ذاتيًا لتحفيز الحلقة أثناء التحقق من توقيع الشهادة. تؤثر هذه المشكلة على إصدارات OpenSSL 1.0.2 و1.1.1 و3.0. وقد تمت معالجتها في الإصدارات 1.1.1n و3.0.2 الصادرة في 15 مارس 2022. تم الإصلاح في OpenSSL 3.0.2 (المتأثرة 3.0.0، 3.0.1). تم الإصلاح في OpenSSL 1.1.1n (المتأثرة 1.1.1-1.1.1m). تم الإصلاح في OpenSSL 1.0.2zd (المتأثرة 1.0.2-1.0.2zc).
المصادر
openssl/CVE-2022-0778
OpenSSL Infinite Loop Leads to DoS (CVE-2022-0778)
Vulhub vulnerability labsالشروط المعلنة
- lab image version: vulhub/openssl:1.1.1m-with-curl(openssl/CVE-2022-0778/docker-compose.yml:services.curl.image)
إثبات المفهوم لـ CVE-2022-0778 بصيغتي P12 وPEM
إثبات مفهوم لاستغلال CVE-2022-0778، يوضح حلقة لا نهائية في دالة BN_mod_sqrt الخاصة بـ OpenSSL عبر شهادة X.509 مصممة بعناية تحتوي على معاملات منحنى غير أولية، مما يتيح هجمات حجب الخدمة.
إثبات مفهوم استغلال لـ CVE-2022-0778، ثغرة رفض الخدمة في دالة BN_mod_sqrt() في OpenSSL، مع بيئة مختبرية قائمة على Docker للاختبار والتحليل.
إثبات مفهوم عن بعد لـ CVE-2022-0778 يقوم بحقن شهادة مصممة ضمن مصافحة TLS لإطلاق ثغرة رفض الخدمة OpenSSL BN_mod_sqrt().
إثبات مفهوم لاستغلال CVE-2022-0778، وهي ثغرة رفض خدمة في دالة BN_mod_sqrt الخاصة بـ OpenSSL. يتضمن تطبيقات خادم وعميل خبيثة لتحفيز حلقات لا نهائية في اتصالات TLS/HTTPS القابلة للاستغلال.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.