CRLite ، آلية Mozilla الجديدة للتحقق من صحة شهادة TLS

شعار فايرفوكس

مؤخرا أعلنت Mozilla عن إطلاق آلية جديدة للكشف عن الشهادات إبطال يُطلق عليه "CRLite" والذي يوجد في الإصدارات الليلية من Firefox. هذه الآلية الجديدة يسمح لتنظيم التحقق إبطال فعال للشهادة مقابل قاعدة بيانات مستضافة على نظام المستخدم.

تم استخدام التحقق من الشهادة حتى الآن مع استخدام الخدمات الخارجية القائمة في بروتوكول OCSP (بروتوكول حالة الشهادة عبر الإنترنت) يتطلب وصولاً مضمونًا إلى الشبكة ، مما يؤدي إلى تأخير ملحوظ في معالجة الطلب (في المتوسط ​​350 مللي ثانية) ولديه مشكلات تتعلق بالسرية (الخوادم التي تستجيب للطلبات يحصل OCSP على معلومات حول شهادات معينة ، والتي يمكن استخدامها لتحديد المواقع التي يفتحها المستخدم).

أيضا هناك إمكانية التحقق المحلي ضد CRL (قائمة إبطال الشهادات) ، لكن عيب هذه الطريقة هو الحجم الكبير للبيانات التي تم تنزيلها: حالياً تشغل قاعدة بيانات الشهادات الباطلة حوالي 300 ميغا بايت ويستمر نموها.

يستخدم Firefox القائمة السوداء المركزية OneCRL منذ عام 2015 لحظر الشهادات التي تم اختراقها وإبطالها من قبل سلطات التصديق إلى جانب الوصول إلى خدمة التصفح الآمن من Google لتحديد أي نشاط ضار محتمل.

OneCRL ، مثل CRLSets في Chrome ، يعمل كارتباط وسيط يجمع قوائم CRL الخاصة بالمراجع المصدقة ويوفر خدمة OCSP مركزية واحدة للتحقق من الشهادات الملغاة ، مما يجعل من الممكن عدم إرسال الطلبات مباشرة إلى سلطات التصديق.

إفتراضي، إذا لم يكن من الممكن التحقق من خلال OCSP ، فإن المتصفح يعتبر الشهادة صالحة. هكذا إذا كانت الخدمة غير متاحة بسبب مشاكل في الشبكة وقيود الشبكة الداخلية أو أنه يمكن حظره من قبل المهاجمين أثناء هجوم MITM. لتجنب مثل هذه الهجمات ، يتم تنفيذ تقنية Must-Staple ، مما يسمح بتفسير خطأ الوصول إلى OCSP أو عدم إمكانية الوصول إلى OCSP على أنه مشكلة في الشهادة ، ولكن هذه الميزة اختيارية وتتطلب تسجيلًا خاصًا للشهادة.

حول CRLite

يتيح لك CRLite إحضار معلومات كاملة حول جميع الشهادات الملغاة في هيكل قابل للتجديد بسهولة 1 ميغا بايت فقط ، مما يجعل من الممكن تخزين قاعدة بيانات CRL بأكملها من جانب العميل. سيكون المتصفح قادرًا على مزامنة نسخته من البيانات الموجودة في الشهادات الملغاة على أساس يومي وستكون قاعدة البيانات هذه متاحة تحت أي ظروف.

يجمع CRLite المعلومات من شهادة الشفافية ، السجل العام لجميع الشهادات الصادرة والملغاة ونتائج فحص شهادات الإنترنت (يتم جمع قوائم CRL المختلفة لمراكز التصديق وإضافة معلومات حول جميع الشهادات المعروفة).

يتم تعبئة البيانات باستخدام مرشحات Bloom، هيكل احتمالي يسمح بتحديد خاطئ للعنصر المفقود ، لكنه يستبعد إغفال عنصر موجود (أي ، مع وجود بعض الاحتمالات ، من الممكن أن تكون هناك نتائج إيجابية خاطئة لشهادة صالحة ، ولكن الشهادات الملغاة مضمونة للكشف).

للتخلص من الإنذارات الكاذبة ، قدم CRLite مستويات تصفية تصحيحية إضافية. بعد بناء الهيكل ، يتم سرد جميع سجلات المصدر واكتشاف الإنذارات الخاطئة.

بناءً على نتائج هذا التحقق ، يتم إنشاء هيكل إضافي يتسلسل فوق الهيكل الأول ويصحح أي إنذارات خاطئة ظهرت. تتكرر العملية حتى يتم استبعاد الإيجابيات الخاطئة تمامًا أثناء التحقق.

عادةal ، لتغطية جميع البيانات بالكامل ، يكفي إنشاء 7-10 طبقات. نظرًا لأن حالة قاعدة البيانات بسبب المزامنة الدورية متأخرة قليلاً عن الحالة الحالية لـ CRL ، يتم إجراء التحقق من الشهادات الجديدة الصادرة بعد آخر تحديث لقاعدة بيانات CRLite باستخدام البروتوكول OCSP ، بما في ذلك استخدام تقنية التدبيس OCSP.

تم إصدار تطبيق Mozilla لـ CRLite بموجب ترخيص MPL 2.0 المجاني. تتم كتابة التعليمات البرمجية لإنشاء قاعدة البيانات ومكونات الخادم بلغة Python و Go. تم تحضير أجزاء العميل المضافة إلى Firefox لقراءة البيانات من قاعدة البيانات بلغة Rust.

مصدر: https://blog.mozilla.org/


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.