كيف تتعامل المتصفحات مع بروتوكول SSL المبطل /TLS الشهادات؟

تفاصيل برامج المتصفح الحالية للتحقق من حالة إبطال SSL /TLS الشهادات ، بما في ذلك اختبار عبر المستعرضات.

المُقدّمة

التحقق من حالة إبطال SSL /TLS شهادات مقدمة من HTTPS مواقع الويب مشكلة مستمرة في أمان الويب. ما لم يتم تكوين خادم للاستخدام تدبيس OCSP، فإن فحص الإبطال عبر الإنترنت بواسطة متصفحات الويب يعد بطيئًا ويضر بالخصوصية. نظرًا لأن استعلامات OCSP عبر الإنترنت تفشل كثيرًا وتكون مستحيلة في بعض المواقف (مثل البوابات المقيدة) ، فإن المتصفحات تقوم عمومًا بتطبيق فحص OCSP في وضع "فشل بسيط" ، مما يجعلها غير فعالة في ردع مهاجم مصمم. (للحصول على سجل أكثر اكتمالاً لهذه المشكلة ، يرجى قراءة مقالة SSL.com ، تحسين تحميل الصفحة: تدبيس OCSP).

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

تقدم هذه المقالة ملخصات عالية المستوى لاستراتيجيات التحقق من الصحة التي تستخدمها متصفحات سطح المكتب الرئيسية (الكروم, برنامج فايرفوكس, سفاريو حافة) ، ويقارن استجابات هذه المتصفحات ببعض العينات الشهادات الملغاة باستضافة SSL.com.

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

جوجل كروم

يعتمد Chrome على مجموعات CRL لفحص الإبطال. CRLSet هي ببساطة قائمة بالشهادات التي تم إلغاؤها والتي يتم دفعها إلى المتصفح كتحديث برنامج. بحسب ال موقع مشاريع Chromium، العمليات التي تنشئ بها Google CRLSets هي عمليات ملكية ، ولكن أيضًا

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

البيان أعلاه يشير إلى أن على الأقل بعض يمكن أن تنتهي شهادات الكيانات النهائية التي تم إلغاؤها ذات الأولوية المنخفضة في CRLSets ، لكنها تعتبر اعتبارًا ثانويًا.

يمكنك التحقق من إصدار CRLSet المثبت حاليًا في مثيل Chrome بالانتقال إلى chrome://components/:

إصدار CRLSet

ملحوظة: يستخدم متصفح Opera المستند إلى Chromium أيضًا CRLsets لفحص الإبطال. يمكنك التحقق من الإصدار المثبت بالانتقال إلى opera://components. كما أشار أقل من، الإصدار الحالي من متصفح Microsoft Edge يعتمد أيضًا على Chromium ويستخدم CRLSets.

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


موزيلا فايرفوكس

مثل Google ، تحتفظ Mozilla بقائمة مركزية من الشهادات الملغاة ، تسمى OneCRL. OneCRL هي قائمة بالشهادات الوسيطة التي تم إبطالها بواسطة CA في برنامج جذر Mozilla ، ويتم دفعها إلى مستخدمي Firefox في تحديثات التطبيق. بخصوص شهادات الكيان النهائي ، Mozilla خطة الإلغاء يلاحظ أنه "في المستقبل ، بمجرد أن يعمل التنفيذ الأولي ، قد ننظر في تغطية شهادات EE باستخدام OneCRL ، وربما التركيز في البداية على فئات محددة (مثل شهادات EV)."

يمكن تنزيل OneCRL ككائن JSON هنا، أو عرضها كصفحة ويب على crt.sh.

بخلاف Chrome ، تستعلم الإعدادات الافتراضية لـ Firefox أيضًا مستجيبي OCSP لتأكيد صحة SSL /TLS الشهادات. (يمكنك تغيير هذا الإعداد في تفضيلات أمان Firefox.)

الاستعلام عن خوادم المستجيب OCSP

ومع ذلك ، نظرًا لأن حالات فشل استعلام OCSP شائعة جدًا ، فإن Firefox (مثل المتصفحات الأخرى) يطبق سياسة "فشل بسيط". إذا كنت ترغب في ذلك ، يمكنك طلب فحص OCSP صارم بالانتقال إلى about:config والتبديل security.OCSP.require إلى true.


أبل سفاري

تمت تغطية نهج Apple الحالي للإلغاء من قبل Bailey Basile في حديثها WWDC لعام 2017 ، تطبيقاتك ومعايير أمان الشبكة المتطورة. تجمع Apple معلومات إبطال الشهادة من المراجع المصدقة الموثوقة على أجهزتها وتجمعها جميعًا في حزمة واحدة يتم استردادها بشكل دوري بواسطة برنامج عميل Apple (يبدو أنها خطة مألوفة حتى الآن؟).

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

يتوفر رابط لقائمة إبطال Apple ورمز لتحليلها هنا.


مايكروسوفت الحافة

يحتفظ Windows بقائمة بالشهادات الباطلة أو التي تم إدراجها في القائمة السوداء في ملف يسمى disallowedcert.stl. هذا دخول بلوق يوفر معلومات حول تفريغ محتويات الملف باستخدام PowerShell. crt.sh كما يوفر معلومات حول ما إذا كانت شهادة معينة مدرجة في disallowedcert.stl.

مثل Firefox ، تم تعيين Windows للتحقق من إبطال الشهادة افتراضيًا. يمكن عرض هذا الإعداد وتغييره بتنسيق خصائص إنترنت لوحة التحكم:

ومع ذلك ، فإن الإصدار الحالي (المستند إلى Chromium) من Edge ، مثل Chrome ، يعتمد على مجموعات CRLS لفحص الإبطال ويظهر من اختباراتنا أقل من لتكون مستقلة عن إعدادات التحقق من الإبطال في خصائص الإنترنت. (ملحوظة: في إصدار سابق من هذه الاختبارات ، تم إجراؤه في سبتمبر 2019 ، Internet Explorer وإصدار ما قبل Chromium من Edge فعل اتبع هذه الإعدادات في خصائص الإنترنت.)


الاختلاف بين المتصفحات

نظرًا لأن SSL.com يحتفظ بمجموعة من خوادم الويب التي تستضيف عينات من الشهادات الملغاة ، فقد قررنا اختبارها مقابل مجموعة من متصفحات سطح المكتب ، وقد تم إجراء هذا الاختبار الصغير غير العلمي في 23 فبراير 2020. المتصفحات المستخدمة هي:

  • Chrome 88.0.4324.182 ، إصدار CRLSet 6444 (macOS 10.15.7)
  • Chrome 88.0.4324.182، CRLSet الإصدار 6444 (Windows 10 Pro)
  • Edge 88.0.705.74 ، إصدار CRLSet 6444 (Windows 10 Enterprise)
  • Firefox 86.0 - استعلامات OCSP على (macOS 10.15.7)
  • Firefox 86.0 - إيقاف تشغيل استعلامات OCSP (macOS 10.15.7)
  • سفاري 14.0.3 (ماك 10.15.1)

بالإضافة إلى ذلك ، قمنا باختبار Chrome و Edge في Windows مع تعطيل التحقق من الإبطال عبر الإنترنت في لوحة تحكم خصائص الإنترنت ، وفحصنا (لمتصفح Chrome و Firefox و Edge) ما إذا كانت الشهادة ذات الصلة قد تم إبطالها باستخدام برنامج متصفح معين في crt.sh.

  كروم (ماك) كروم (ويندوز) الحافة (ويندوز) Firefox (Mac) (تشغيل OCSP) Firefox (Mac) (إيقاف تشغيل OCSP) سفاري (ماك)
تم إبطال- rsa-dv.ssl.com تم إبطاله لم يتم إبطاله لم يتم إبطاله تم إبطاله لم يتم إبطاله تم إبطاله
تم إبطال- rsa-ev.ssl.com تم إبطاله تم إبطاله تم إبطاله تم إبطاله لم يتم إبطاله تم إبطاله
تم إبطال- ecc-dv.ssl.com تم إبطاله لم يتم إبطاله لم يتم إبطاله تم إبطاله لم يتم إبطاله تم إبطاله
أبطل-ecc-ev.ssl.com تم إبطاله تم إبطاله تم إبطاله تم إبطاله لم يتم إبطاله تم إبطاله

مناقشة النتائج

جوجل كروم: على نظام التشغيل Windows ، أظهر Chrome بشكل غير صحيح اثنتين من الشهادات الملغاة (تم إبطال- rsa-dv.ssl.com و تم إبطال- ecc-dv.ssl.com) صالحة والبعض الآخر تم إبطاله. لم يغير تعطيل التحقق من الصحة في نظام التشغيل هذه الاستجابة. ومن المثير للاهتمام ، أنه لم يتم إبراز أي من الشهادات الأربع في CRLSet في crt.sh في وقت الاختبار ، مما يقترح المزيد من الأسئلة حول عمليات التحقق من الإبطال في Chrome. في نظام التشغيل macOS ، أظهر Chrome بشكل صحيح جميع الشهادات الأربع على أنها ملغاة ، مما يوضح الاختلافات القائمة على النظام الأساسي في سلوك Chrome.

إيدج: الإصدار الحالي (المستند إلى Chromium) من Edge يعكس Chrome في العرض تم إبطال- rsa-dv.ssl.com و تم إبطال- ecc-dv.ssl.com صحيح. مثل Chrome ، أظهر Edge نفس النتائج سواء تم تمكين التحقق من الصحة في نظام التشغيل أم لا. لم يتم عرض أي من الشهادات الأربع على النحو الوارد في disallowedcert.stl on crt.sh.

فايرفوكس: كما هو متوقع من تركيز OneCRL المعلن على الشهادات الوسيطة ، لم يتعرف Firefox إلا على جميع الشهادات الأربع على أنها ملغاة مع تمكين استعلامات OCSP في تفضيلات المتصفح ، ولكنه قبلها جميعها باعتبارها صالحة إذا تم تعطيل استعلامات OCSP. (ملحوظة: تم إصدار جميع شهادات الكيانات النهائية الأربعة التي تم إلغاؤها من وسيطات صالحة وغير ملغاة.) كما هو الحال مع Chrome ، crt.sh لا يظهر أي من الشهادات كما تم إبطالها في OneCRL.

سفاري: تعرف Safari على macOS بشكل صحيح على الشهادات الأربع التي تم إبطالها. crt.sh لا تعرض معلومات إبطال Apple ، ولم نتحقق مما إذا كانت هذه الشهادات المحددة مدرجة على أنها مُلغاة من قِبل Apple.

وفي الختام

يبدو أن النتائج تشير إلى أن الإلغاء لا يزال يمثل مشكلة بالنسبة لمتصفحات الويب لسطح المكتب (تمثل الأجهزة المحمولة عالمًا مختلفًا تمامًا ، ولكن هذا موضوع لمقال آخر). كان تمكين فحص OCSP عبر الإنترنت (بطيئًا وغير آمن) ضروريًا للتعرف على الشهادات على أنها ملغاة في Firefox ، بينما فشل Chrome و Edge في التعرف على شهادتين ملغيتان على Windows سواء تم تمكين التحقق من الإبطال في نظام التشغيل أم لا.

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

 

يوفر SSL.com مجموعة متنوعة من SSL /TLS شهادات الخادم لمواقع HTTPS.

قارن SSL /TLS شهادات

اشترك في النشرة الإخبارية لـ SSL.com

لا تفوت المقالات والتحديثات الجديدة من SSL.com

نحن نحب ملاحظاتك

شارك في استبياننا وأخبرنا بأفكارك حول عملية الشراء الأخيرة.