الآن يمكن لجميع أولئك الذين قاموا بالتحديث بشكل عاجل أن "يبتهجوا" مرة أخرى: في 21 يوليو 2019، اكتشف الباحث زيرونز ثغرة أمنية حرجة في وكيل نقل بريد Exim (MTA) عند استخدام TLS للإصدارات من 4.80 إلى 4.92.1 شاملة، مما يسمح عن بعد تنفيذ التعليمات البرمجية مع الحقوق المميزة (CVE-2019-15846).
عالي التأثر
تظهر الثغرة الأمنية عند استخدام مكتبتي GnuTLS وOpenSSL عند إنشاء اتصال TLS آمن.
وفقًا للمطور Heiko Schlittermann، فإن ملف التكوين في Exim لا يستخدم TLS افتراضيًا، لكن العديد من التوزيعات تقوم بإنشاء الشهادات اللازمة أثناء التثبيت وتمكين الاتصال الآمن. تقوم أيضًا الإصدارات الأحدث من Exim بتثبيت الخيار tls_advertise_hosts=* وإنشاء الشهادات اللازمة.
يعتمد على التكوين. تقوم معظم التوزيعات بتمكينه افتراضيًا، لكن Exim يحتاج إلى شهادة + مفتاح للعمل كخادم TLS. من المحتمل أن تقوم Distros بإنشاء شهادة أثناء الإعداد. يحتوي Exims الأحدث على خيار tls_advertise_hosts الافتراضي هو "*" ويقوم بإنشاء شهادة موقعة ذاتيًا، إذا لم يتم توفير أي منها.
تكمن الثغرة الأمنية نفسها في المعالجة غير الصحيحة لـ SNI (إشارة اسم الخادم، وهي تقنية تم تقديمها في عام 2003 في RFC 3546 للعميل لطلب الشهادة الصحيحة لاسم المجال، توزيع معيار TLS SNI / مدونة مجموعة WEBO / Sudo Null IT News) أثناء مصافحة TLS. يحتاج المهاجم فقط إلى إرسال SNI ينتهي بشرطة مائلة عكسية ("") وحرف فارغ (" ").
اكتشف باحثون من Qualys خطأً في الدالة string_printing(tls_in.sni)، والتي تتضمن هروبًا غير صحيح من "". ونتيجة لذلك، تتم كتابة الخط المائل العكسي بدون إلغاء إلى ملف رأس التخزين المؤقت للطباعة. تتم بعد ذلك قراءة هذا الملف بحقوق مميزة بواسطة الدالة spool_read_header()، مما يؤدي إلى تجاوز سعة الكومة.
تجدر الإشارة إلى أنه في الوقت الحالي، قام مطورو Exim بإنشاء نقاط ضعف PoC من خلال تنفيذ الأوامر على خادم ضعيف عن بعد، ولكنها ليست متاحة للجمهور بعد. نظرًا لسهولة استغلال الخطأ، فهو مجرد مسألة وقت، وقصير جدًا.
يمكن الاطلاع على دراسة أكثر تفصيلا من قبل Qualys هنا.
استخدام SNI في TLS
عدد الخوادم العامة التي يحتمل أن تكون عرضة للخطر
وفقا لإحصائيات من مزود استضافة كبير شركة اي سوفت اعتبارًا من 1 سبتمبر، سيتم استخدام الإصدار 4.92 على الخوادم المستأجرة في أكثر من 70% من المضيفين.
التجريبية
عدد الخوادم
في المئة
4.92.1
6471
1.28%
4.92 376436 74.22%
4.91
58179
11.47%
4.9
5732
1.13%
4.89
10700
2.11%
4.87
14177
2.80%
4.84
9937
1.96%
إصدارات أخرى
25568
5.04%
إحصائيات شركة E-Soft Inc
إذا كنت تستخدم محرك البحث الحزام الأسود، ثم من أصل 5,250,000 في قاعدة بيانات الخادم:
حوالي 3,500,000 يستخدمون Exim 4.92 (حوالي 1,380,000 يستخدمون SSL/TLS)؛
أكثر من 74,000 يستخدمون 4.92.1 (حوالي 25,000 يستخدمون SSL/TLS).
وبالتالي، فإن عدد خوادم Exim المعروفة والتي يمكن الوصول إليها يحتمل أن تكون عرضة للخطر 1.5 مليون.
البحث عن خوادم Exim في شودان
حماية
الخيار الأبسط، ولكن غير الموصى به، هو عدم استخدام TLS، مما سيؤدي إلى إعادة توجيه رسائل البريد الإلكتروني بشكل واضح.
إذا كان من المستحيل تحديث أو تثبيت إصدار مصحح، فيمكنك تعيين قائمة التحكم بالوصول (ACL) في تكوين Exim لهذا الخيار acl_smtp_mail مع القواعد التالية:
# to be prepended to your mail acl (the ACL referenced
# by the acl_smtp_mail main config option)
deny condition = ${if eq{}{${substr{-1}{1}{$tls_in_sni}}}}
deny condition = ${if eq{}{${substr{-1}{1}{$tls_in_peerdn}}}}