تم العثور على ثغرة أمنية في qmail تسمح باستغلالها عن بعد

وقد أظهر باحثو الأمن Qualys امكانية استغلالها ثغرة أمنية في خادم بريد qmail ، معروف منذ 2005 (CVE-2005-1513) ، ولكن لم يتم تصحيحه منذ ذلك الحين ادعى qmail أنه من غير الواقعي إنشاء استغلال عملي التي يمكن استخدامها لمهاجمة الأنظمة في الإعدادات الافتراضية.

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

سبب المشكلة هو تجاوز في وظيفة stralloc_readyplus () ، والتي يمكن أن تحدث عند معالجة رسالة كبيرة جدًا. للعملية ، كان مطلوبًا نظام 64 بت بسعة ذاكرة افتراضية تزيد عن 4 جيجابايت.

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

في السنوات الخمس عشرة الماضية ، حلت أنظمة 15 بت على الخوادم محل أنظمة 64 بت ، وزاد مقدار الذاكرة المتوفرة وعرض النطاق الترددي للشبكة بشكل كبير.

الطرود المصاحبة لـ qmail أخذت بعين الاعتبار تعليق Bernstein و عند بدء عملية qmail-smtpd ، حدوا من الذاكرة المتاحة (على سبيل المثال ، في دبيان 10 ، تم تعيين الحد على 7 ميغا بايت).

لكن اكتشف مهندسو Qualys أن هذا لا يكفي بالإضافة إلى qmail-smtpd ، يمكن تنفيذ هجوم عن بُعد على عملية qmail المحلية ، والتي تظل غير محدودة على جميع الحزم التي تم اختبارها.

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

الاستغلال يسمح بتنفيذ أي أمر shell مع حقوق أي مستخدم على النظام ، باستثناء مستخدمي الجذر والنظام الذين ليس لديهم دليل فرعي خاص بهم في دليل "/ home"

يتم تنفيذ الهجوم عن طريق إرسال رسالة بريد إلكتروني كبيرة جدًا ، والذي يتضمن سطورًا متعددة في العنوان ، بحجم 4 غيغابايت و 576 ميغابايت تقريبًا.

عند معالجة الخط المذكور في qmail-local يحدث تجاوز عدد صحيح عند محاولة تسليم رسالة إلى مستخدم محلي. ثم يؤدي تجاوز عدد صحيح إلى تجاوز سعة المخزن المؤقت عند نسخ البيانات والقدرة على الكتابة فوق صفحات الذاكرة برمز libc.

أيضًا ، في عملية استدعاء qmesearch () في qmail-local ، يتم فتح الملف ".qmail-extension" عبر وظيفة open () ، مما يؤدي إلى الإطلاق الفعلي للنظام (". Qmail-extension" ). ولكن نظرًا لأن جزءًا من ملف "الامتداد" يتكون استنادًا إلى عنوان المستلم (على سبيل المثال ، "localuser-extension @ localdomain") ، يمكن للمهاجمين تنظيم بداية الأمر عن طريق تحديد المستخدم "localuser-؛" أمر؛ localdomain »كمتلقي الرسالة.

كشف تحليل الكود أيضًا عن ثغرتين في التصحيح الإضافي تحقق من qmail ، وهو جزء من حزمة دبيان.

  • تسمح الثغرة الأولى (CVE-2020-3811) بتجاوز التحقق من عناوين البريد الإلكتروني ، والثانية (CVE-2020-3812) تؤدي إلى تسرب معلومات محلي.
  • يمكن استخدام الثغرة الأمنية الثانية للتحقق من وجود الملفات والأدلة على النظام ، بما في ذلك تلك المتوفرة فقط للجذر (يبدأ qmail- التحقق بامتيازات الجذر) من خلال الاتصال المباشر بالمشغل المحلي.

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

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

مصدر: https://www.openwall.com/


اترك تعليقك

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

*

*

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