Nimbuspwn ، ثغرة أمنية في المرسل الشبكي الذي يسمح بتشغيل الأوامر كجذر

الكثير صدر باحثو الأمن مايكروسوفت الخبر الذي حددت اثنين من نقاط الضعف (CVE-2022-29799، CVE-2022-29800) في خدمة المرسل الشبكي Nimbuspwn الاسم الرمزي الذي يسمح لمستخدم غير متميز بتنفيذ أوامر عشوائية كجذر.

networkd المرسل en تستخدم من قبل العديد من توزيعات Linux، بما في ذلك Ubuntu ، التي تستخدم عملية خلفية systemd-networkd لتكوين إعدادات الشبكة وتؤدي وظائف مشابهة لـ NetworkManager-dispatcher ، أي أنها تتعامل مع تنفيذ البرنامج النصي عندما تتغير حالة اتصال الشبكة ، على سبيل المثال ، يتم استخدامه لبدء VPN بعد إنشاء اتصال الشبكة الرئيسية.

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

اكتشفنا نقاط الضعف من خلال الاستماع إلى الرسائل على System Bus أثناء إجراء مراجعات التعليمات البرمجية والتحليل الديناميكي على الخدمات التي تعمل كجذر ، ولاحظنا نمطًا غريبًا في وحدة systemd تسمى networkd-dispatcher.

تعمل عملية الخلفية المرتبطة بمرسل الشبكة كجذر ويستمع إلى الأحداث من خلال D-Bus. ترسل خدمة systemd-networkd معلومات حول الأحداث المتعلقة بتغيير حالة اتصالات الشبكة. تكمن المشكلة في أن المستخدمين الذين لا يتمتعون بامتيازات يمكنهم رفع حدث حالة غير موجود والبدء في تنفيذ البرنامج النصي الخاص بك ، والذي سيعمل كجذر.

تم تصميم systemd-networkd لتشغيل البرامج النصية فقط وحدة تحكم النظام الموجودة في الدليل / etc / networkd-dispatcher وليست قابلة للاستبدال بواسطة المستخدم ، ولكن بسبب الضعف (CVE-2022-29799) كان من الممكن أن رمز معالجة مسار الملف قد تم إيقاف تشغيله من الدليل الأساسي حدود وتنفيذ النصوص التعسفية.

على وجه الخصوص ، عند تكوين مسار الملف إلى البرنامج النصي ، تم استخدام قيم حالة التشغيل وحالة الإدارة المرسلة عبر D-Bus ، حيث لم تتم إزالة الأحرف الخاصة. يمكن للمهاجم إنشاء حالته الخاصة باستخدام الأحرف "../" في الاسم وإعادة توجيه مكالمة مرسل d network إلى دليل آخر.

الثغرة الثانية (CVE-2022-29800) مرتبط بحالة السباق: بين التحقق من معلمات البرنامج النصي (المملوكة من قبل الجذر) وتنفيذها ، كانت هناك فترة زمنية قصيرة ، كافية لاستبدال الملف وتخطي التحقق من البرنامج النصي المملوك من قبل الجذر. أيضًا ، لم يتحقق المرسل الشبكي من الروابط الرمزية ، حتى عند تنفيذ البرامج النصية عبر العملية الفرعية.

تم إنشاء الدليل "/ tmp / nimbuspwn" وإنشاء ارتباط رمزي "/tmp/nimbuspwn/poc.d" يشير إلى الدليل "/ sbin" والذي يستخدم لاجتياز فحص للملفات القابلة للتنفيذ التي يمتلكها الجذر.

بالنسبة للملفات التنفيذية "/ sbin" ، يتم إنشاء الملفات التي تحمل الاسم نفسه في الدليل "/ tmp / nimbuspwn" ، على سبيل المثال ، بالنسبة لملف "/ sbin / vgs" ، يتم إنشاء ملف قابل للتنفيذ "/ tmp / nimbuspwn / vgs" ، مملوكة لمستخدم بدون امتيازات ، حيث يتم وضع الكود الذي يريد المهاجم تنفيذه.

يتم إرسال إشارة D-Bus إلى عملية المرسل الشبكي مع حالة التشغيل مضبوطة على "../../../tmp/nimbuspwn/poc". لإرسال إشارة في مساحة الاسم "org.freedesktop.network1" ، استخدمت القدرة على توصيل وحدات التحكم الخاصة بك بـ systemd-networkd ، على سبيل المثال ، عن طريق معالجة gpgv أو epmd ، أو يمكنك استخدام حقيقة أن systemd-networkd ليست كذلك يعمل بشكل افتراضي (على سبيل المثال ، على Linux mint).

عند تلقي الإشارة ، ينشئ Networkd-dispatcher قائمة بالملفات القابلة للتنفيذ التي يملكها المستخدم الجذر والمتاحة في الدليل "/etc/networkd-dispatcher/../../../tmp/nimbuspwn/poc.d" ، الذي تشير إليه في الواقع "/ sbin".

بمجرد استلام قائمة الملفات ، ولكن لم يتم تنفيذ النص البرمجي بعد ، تتم إعادة توجيه الرابط الرمزي من "/tmp/nimbuspwn/poc.d" إلى "/ tmp / nimbuspwn" وسيتم تنفيذ networkd-dispatcher كـ جذر. النص الذي وضعه المهاجم.

المشكلة ثابت في إصدار networkd المرسل 2.2، على الرغم من عدم وجود معلومات حول إصدار التحديثات عن طريق التوزيعات.

أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.


تعليق ، اترك لك

اترك تعليقك

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

*

*

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

  1.   luix قال

    لقد قيل ألف مرة ومرة: النظام هو القمامة. زائدة عن الحاجة ، سيئة التصميم ، محملة زائدة ، عرضة للخطأ. من المؤسف أنه تم تضمينه في توزيعة المفضلة لدي (دبيان)