شارك أندري كونوفالوف طريقة لتعطيل الإغلاق

أندري كونوفالوف مهندس برمجيات جوجل ، كشف النقاب عن طريقة لتعطيل الحماية عن بعد من تأمين متوفرة في نواة Linux المتوفرة في Ubuntu. مع ماذا يوضح أن طرق الحماية غير فعالة، بالإضافة إلى أنه يذكر أيضًا أن الأساليب التي كشف عنها نظريًا يجب أن تعمل مع نواة Fedora والتوزيعات الأخرى أيضًا (ولكن لم يتم اختبارها).

لأولئك الذين ليسوا على دراية بـ Lockdown ، يجب أن يعلموا أنه أحد مكونات نواة Linux وتتمثل مهمتها الرئيسية في تقييد وصول المستخدم الجذر إلى نواة النظام وهذه الوظيفة تم نقله إلى وحدة LSM تحميل اختياري (Linux Security Module) ، والذي ينشئ حاجزًا بين UID 0 والنواة، مما يحد من بعض الوظائف منخفضة المستوى.

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

حول التأمين

يقيد القفل وصول الجذر إلى النواة ويمنع مسارات تجاوز التمهيد الآمن لـ UEFI.

على سبيل المثال ، في وضع القفل ، الوصول إلى / dev / mem ، / dev / kmem ، / dev / port ، / proc / kcore ، debugfs ، وضع التصحيح kprobes ، mmiotrace ، tracefs ، BPF ، PCMCIA CIS ، من بين أمور أخرى ، بعض الواجهات هي محدودة وكذلك سجلات ACPI و MSR لوحدة المعالجة المركزية.

بينما يتم قفل مكالمات kexec_file و kexec_load ، يُحظر وضع السكون ، واستخدام DMA لأجهزة PCI محدود ، واستيراد رمز ACPI من متغيرات EFI محظور ، والتلاعب بمنافذ الإدخال / الإخراج ، بما في ذلك تغيير رقم المقاطعة و I / O منفذ للمنفذ التسلسلي.

كما قد يعرف البعض ، آلية تمت إضافة الإغلاق في Linux kernel 5.4 ، ولكن لا يزال يتم تنفيذه على شكل رقع أو استكماله برقع على الحبات المزودة بالتوزيعات.

هنا ، أحد الاختلافات بين المكونات الإضافية المتوفرة في التوزيعات وتطبيق kernel المضمن هو القدرة على تعطيل القفل المقدم عندما يكون هناك وصول مادي إلى النظام.

يستخدم Ubuntu و Fedora مجموعة المفاتيح البديل + سيسرق + X لتعطيل القفل. ومن المفهوم أن الجمع البديل + سيسرق + X لا يمكن استخدامه إلا من خلال الوصول المادي إلى الجهاز وفي حالة حدوث هجوم عن بُعد والوصول إلى الجذر ، لن يتمكن المهاجم من تعطيل القفل.

يمكن تعطيل التأمين عن بعد

أثبت أندريه كونوفالوف ذلك الطرق المتعلقة بلوحة المفاتيح لـ التأكد من عدم فاعلية التواجد المادي للمستخدم.

هو كشف أن أسهل طريقة لتعطيل القفل ستكون محاكاة صحافة البديل + سيسرق + X من خلال / ديف / uinput، ولكن تم حظر هذا الخيار في البداية.

لكن طريقتان أخريان على الأقل للاستبدال البديل + سيسرق + X.

  • تتضمن الطريقة الأولى استخدام الواجهة مشغل sysrq: للمحاكاة ، ما عليك سوى تمكين هذه الواجهة بكتابة "1" / proc / sys / kernel / sysrq ثم كتابة "x" / proc / sysrq-Trigger.
    تم إصلاح هذه الفجوة في تحديث نواة Ubuntu لشهر ديسمبر وفي Fedora 31. وتجدر الإشارة إلى أن المطورين ، كما في حالة / ديف / uinput، حاولوا في البداية منع هذه الطريقة ، لكن المنع لم ينجح بسبب خطأ في الكود.
  • الطريقة الثانية هي محاكاة لوحة المفاتيح عبر USB / IP ثم إرسال تسلسل Alt + SysRq + X من لوحة المفاتيح الافتراضية.
    في النواة ، يتم تمكين USB / IP الذي توفره Ubuntu افتراضيًا والوحدات النمطية usbip_core y vhci_hcd اللازمة مع التوقيع الرقمي المطلوب.
    يمكن للمهاجم إنشاء جهاز USB افتراضي عن طريق تشغيل وحدة تحكم شبكة على واجهة الاسترجاع وتوصيلها كجهاز USB بعيد باستخدام USB / IP.

تم الإبلاغ عن الطريقة المحددة لمطوري Ubuntu ، ولكن لم يتم إصدار حل بعد.

مصدر: https://github.com


اترك تعليقك

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

*

*

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