تعطل في OpenBSD و DragonFly BSD و Electron بسبب شهادة جذر IdenTrust القديمة

تسبب إهمال شهادة جذر IdenTrust (DST Root CA X3)، المستخدمة للتوقيع المتبادل لشهادة جذر Let's Encrypt CA، في حدوث مشكلات في التحقق من شهادة Let's Encrypt في المشاريع التي تستخدم الإصدارات الأقدم من OpenSSL وGnuTLS. أثرت المشكلات أيضًا على مكتبة LibreSSL، التي لم يأخذ مطوروها في الاعتبار الخبرة السابقة المرتبطة بالفشل الذي حدث بعد أن أصبحت شهادة جذر AddTrust الخاصة بـ Sectigo (Comodo) CA قديمة.

دعونا نتذكر أنه في إصدارات OpenSSL حتى الفرع 1.0.2 ضمنًا وفي GnuTLS قبل الإصدار 3.6.14، كان هناك خطأ لم يسمح بمعالجة الشهادات الموقعة بشكل صحيح إذا أصبحت إحدى الشهادات الجذرية المستخدمة للتوقيع قديمة ، حتى لو تم الحفاظ على سلاسل الثقة الصالحة الأخرى (في حالة Let's Encrypt، فإن تقادم شهادة جذر IdenTrust يمنع التحقق، حتى لو كان النظام يدعم شهادة الجذر الخاصة بـ Let's Encrypt، والتي تكون صالحة حتى عام 2030). جوهر الخطأ هو أن الإصدارات الأقدم من OpenSSL وGnuTLS قامت بتحليل الشهادة كسلسلة خطية، بينما وفقًا لـ RFC 4158، يمكن أن تمثل الشهادة رسمًا بيانيًا دائريًا موزعًا موجهًا مع مراسي ثقة متعددة يجب أخذها في الاعتبار.

كحل بديل لحل الفشل، يُقترح حذف شهادة "DST Root CA X3" من مساحة تخزين النظام (/etc/ca-certificates.conf و/etc/ssl/certs)، ثم تشغيل الأمر "update" -ca-certificates -f -v” "). في CentOS وRHEL، يمكنك إضافة شهادة "DST Root CA X3" إلى القائمة السوداء: تفريغ الثقة —filter "pkcs11:id=%c4%a7%b1%a4%7b%2c%71%fa%db%e1%". 4b%90 %75%ff%c4%15%60%85%89%10" | يفتح x509 | Sudo Tee /etc/pki/ca-trust/source/blacklist/DST-Root-CA-X3.pem sudo update-ca-trust extract

بعض الأعطال التي رأيناها حدثت بعد انتهاء صلاحية شهادة جذر IdenTrust:

  • في OpenBSD، توقفت الأداة المساعدة syspatch، المستخدمة لتثبيت تحديثات النظام الثنائي، عن العمل. أصدر مشروع OpenBSD اليوم بشكل عاجل تصحيحات للفرعين 6.8 و6.9 تعمل على إصلاح المشكلات في LibreSSL من خلال التحقق من الشهادات الموقعة بشكل مشترك، والتي انتهت صلاحية إحدى الشهادات الجذرية في سلسلة الثقة الخاصة بها. كحل بديل لهذه المشكلة، يوصى بالتبديل من HTTPS إلى HTTP في /etc/installurl (وهذا لا يهدد الأمان، حيث يتم التحقق من التحديثات أيضًا عن طريق التوقيع الرقمي) أو تحديد نسخة متطابقة بديلة (ftp.usa.openbsd. org، ftp.hostserver.de، cdn.openbsd.org). يمكنك أيضًا إزالة شهادة جذر DST Root CA X3 منتهية الصلاحية من الملف /etc/ssl/cert.pem.
  • في DragonFly BSD، تتم ملاحظة مشكلات مماثلة عند العمل مع DPorts. عند بدء تشغيل مدير الحزم pkg، يظهر خطأ في التحقق من الشهادة. تمت إضافة الإصلاح اليوم إلى الفرعين الرئيسيين DragonFly_RELEASE_6_0 وDragonFly_RELEASE_5_8. كحل بديل، يمكنك إزالة شهادة DST Root CA X3.
  • عملية التحقق من شهادات Let's Encrypt في التطبيقات المستندة إلى النظام الأساسي Electron معطلة. تم إصلاح المشكلة في التحديثات 12.2.1، 13.5.1، 14.1.0، 15.1.0.
  • تواجه بعض التوزيعات مشكلات في الوصول إلى مستودعات الحزم عند استخدام مدير حزم APT المرتبط بالإصدارات الأقدم من مكتبة GnuTLS. تأثر Debian 9 بالمشكلة، حيث استخدم حزمة GnuTLS غير المصححة، مما أدى إلى حدوث مشكلات عند الوصول إلى deb.debian.org للمستخدمين الذين لم يقوموا بتثبيت التحديث في الوقت المناسب (تم تقديم الإصلاح gnutls28-3.5.8-5+deb9u6 في 17 سبتمبر). كحل بديل، يوصى بإزالة DST_Root_CA_X3.crt من الملف /etc/ca-certificates.conf.
  • تعطل عمل برنامج acme-client في مجموعة التوزيع الخاصة بإنشاء جدران الحماية OPNsense، وتم الإبلاغ عن المشكلة مسبقًا، لكن المطورين لم يتمكنوا من إصدار التصحيح في الوقت المناسب.
  • أثرت المشكلة على حزمة OpenSSL 1.0.2k في RHEL/CentOS 7، ولكن منذ أسبوع تم إنشاء تحديث لحزمة ca-certificates-7-7.el2021.2.50_72.noarch لـ RHEL 7 وCentOS 9، والتي منها IdenTrust تمت إزالة الشهادة، أي. تم حظر مظهر المشكلة مقدما. تم نشر تحديث مماثل قبل أسبوع لـ Ubuntu 16.04 وUbuntu 14.04 وUbuntu 21.04 وUbuntu 20.04 وUbuntu 18.04. نظرًا لإصدار التحديثات مسبقًا، فإن مشكلة التحقق من شهادات Let's Encrypt أثرت فقط على مستخدمي الفروع الأقدم من RHEL/CentOS وUbuntu الذين لا يقومون بتثبيت التحديثات بانتظام.
  • عملية التحقق من الشهادة في grpc معطلة.
  • فشل إنشاء النظام الأساسي لصفحات Cloudflare.
  • مشاكل مع خدمات الويب أمازون (AWS).
  • يواجه مستخدمو DigitalOcean مشاكل في الاتصال بقاعدة البيانات.
  • لقد تعطل النظام الأساسي السحابي Netlify.
  • مشاكل في الوصول إلى خدمات Xero.
  • فشلت محاولة إنشاء اتصال TLS بواجهة برمجة تطبيقات الويب الخاصة بخدمة MailGun.
  • أعطال في إصدارات macOS وiOS (11، 13، 14)، والتي من الناحية النظرية لا ينبغي أن تتأثر بالمشكلة.
  • فشلت خدمات Catchpoint.
  • حدث خطأ أثناء التحقق من الشهادات عند الوصول إلى PostMan API.
  • لقد تعطل جدار حماية Guardian.
  • صفحة الدعم monday.com معطلة.
  • لقد تحطمت منصة Cerb.
  • فشل التحقق من وقت التشغيل في Google Cloud Monitoring.
  • مشكلة تتعلق بالتحقق من الشهادة في Cisco Umbrella Secure Web Gateway.
  • مشاكل في الاتصال بوكلاء Bluecoat وPalo Alto.
  • يواجه OVHcloud مشكلات في الاتصال بـ OpenStack API.
  • مشاكل في إنشاء التقارير في Shopify.
  • هناك مشاكل في الوصول إلى Heroku API.
  • تعطل Ledger Live Manager.
  • خطأ في التحقق من الشهادة في أدوات مطور تطبيقات Facebook.
  • مشاكل في Sophos SG UTM.
  • مشاكل التحقق من الشهادة في cPanel.

المصدر: opennet.ru

إضافة تعليق