وضع إدارة النظام

وضع إدارة النظام ( SMM ، ويُسمى أحيانًا الحلقة  -2 نسبةً إلى حلقات الحماية ) [ 1 ] [ 2 ] هو وضع تشغيل لوحدات المعالجة المركزية x86 ، حيث يتم تعليق جميع عمليات التنفيذ العادية، بما في ذلك نظام التشغيل . ثم يتم تشغيل نظام برمجي بديل، عادةً ما يكون موجودًا في البرامج الثابتة للحاسوب ، أو مصحح أخطاء مدعوم بالأجهزة ، بصلاحيات عالية.

صدرت هذه التقنية لأول مرة مع معالج Intel 386SL . [ 3 ] [ 4 ] في حين كانت إصدارات SL الخاصة مطلوبة في البداية لتقنية إدارة الذاكرة المفردة (SMM)، قامت Intel بدمجها في معالجاتها الرئيسية 486 و Pentium في عام 1993. وقامت AMD بتطبيق تقنية SMM من Intel مع معالجات Am386 في عام 1991. [ 5 ] وهي متوفرة في جميع المعالجات الدقيقة اللاحقة التي تعمل بمعمارية x86 . [ 6 ]

في بنية ARM، يُشار إلى وضع مستوى الاستثناء 3 (EL3) أيضًا باسم وضع المراقبة الآمنة أو وضع إدارة النظام. [ 7 ]

عملية

يُعدّ وضع إدارة النظام (SMM) وضع تشغيل مُخصّصًا لإدارة وظائف النظام الشاملة، مثل إدارة الطاقة، والتحكم في مكونات النظام، أو البرامج المُصمّمة من قِبل مُصنّعي المعدات الأصلية (OEM). وهو مُخصّص للاستخدام من قِبل البرامج الثابتة للنظام ( BIOS أو UEFI ) فقط، وليس من قِبل برامج التطبيقات أو برامج النظام العامة. وتتمثل الميزة الرئيسية لوضع إدارة النظام في توفير بيئة مُعالج مُستقلة ومعزولة بسهولة، تعمل بشفافية تامة لنظام التشغيل أو النظام التنفيذي أو تطبيقات البرامج.

لتحقيق الشفافية، يفرض نظام إدارة النظام (SMM) قواعد محددة. لا يمكن الدخول إلى نظام إدارة النظام إلا من خلال مقاطعة إدارة النظام (SMI). ينفذ المعالج رمز نظام إدارة النظام في مساحة عناوين منفصلة (SMRAM) يجب أن تكون غير قابلة للوصول إليها من أوضاع التشغيل الأخرى لوحدة المعالجة المركزية بواسطة البرامج الثابتة . [ 8 ]

يمكن لوضع إدارة النظام (SMM) معالجة ما يصل إلى 4  جيجابايت من الذاكرة في وضع العنوان الحقيقي الضخم . في معالجات x86-64 ، يمكن لـ SMM معالجة أكثر من  4  جيجابايت من الذاكرة في وضع العنوان الحقيقي. [ 9 ]

الاستخدام

في البداية، استُخدم وضع إدارة النظام لتنفيذ ميزات إدارة الطاقة والتحكم في الأجهزة، مثل إدارة الطاقة المتقدمة (APM). ومع ذلك، اعتمد مصنّعو BIOS ومصنّعو المعدات الأصلية على وضع إدارة النظام (SMM) لوظائف أحدث، مثل واجهة التكوين والطاقة المتقدمة (ACPI). [ 10 ] [ 11 ]

من استخدامات وضع إدارة النظام ما يلي:

يمكن أيضًا إساءة استخدام وضع إدارة النظام لتشغيل برامج التجسس ذات الامتيازات العالية ، كما تم توضيحه في مؤتمر بلاك هات 2008 [ 15 ] و2015. [ 16 ]

الدخول إلى SMM

يتم الدخول إلى SMM عبر SMI (مقاطعة إدارة النظام)، والتي يتم استدعاؤها بواسطة:

  • يتم إرسال إشارات من مكونات اللوحة الأم أو مجموعة الشرائح عبر دبوس SMI# مخصص في شريحة المعالج. [ 17 ] يمكن أن تكون هذه الإشارة حدثًا مستقلاً.
  • يتم تشغيل SMI البرمجي بواسطة برنامج النظام عبر منفذ إدخال/إخراج إلى موقع تعتبره منطق اللوحة الأم خاصًا (المنفذ 0B2h مشترك). [ 18 ]
  • عملية كتابة الإدخال/الإخراج إلى موقع طلب البرنامج الثابت من شريحة المعالج العمل عليه.

عند دخول وضع إدارة الذاكرة المفردة (SMM)، يبحث المعالج عن أول تعليمة عند العنوان SMBASE (محتوى سجل SMBASE) + 8000h (افتراضيًا 38000h)، باستخدام السجلين CS = 3000h و EIP = 8000h. قيمة السجل CS (3000h) ناتجة عن استخدام المعالج لعناوين الذاكرة في الوضع الحقيقي عند دخوله وضع إدارة الذاكرة المفردة. في هذه الحالة، يُضاف 0h إلى نهاية السجل CS داخليًا.

مشاكل

بحكم تصميمه، لا يستطيع نظام التشغيل تجاوز أو تعطيل واجهة إدارة النظام (SMI). ولهذا السبب، تُعدّ هذه الواجهة هدفًا لبرامج التجسس الخبيثة ( rootkits) [ 19 ] [ 20 ] ، بما في ذلك برامج التجسس التابعة لوكالة الأمن القومي الأمريكية (NSA) [ 21 ] ، والتي تحمل أسماءً رمزية خاصة بأجهزة محددة، مثل SOUFFLETROUGH لجدران الحماية من Juniper Networks [ 22 ] ، وSCHOOLMONTANA لأجهزة التوجيه من سلسلة J من نفس الشركة [ 23 ] ، وDEITYBOUNCE لأجهزة DELL [ 24 ] ، و IRONCHEF لخوادم HP Proliant [ 25 ] .

قد يؤدي تصميم كود BIOS الخاص بنظام إدارة الذاكرة (SMM) بشكل غير سليم وعدم اختباره بشكل كافٍ إلى افتراضات خاطئة وعدم عمله بشكل صحيح عند مقاطعة بعض أوضاع تشغيل x86 الأخرى مثل PAE أو وضع 64 بت الطويل . [ 26 ] وفقًا لوثائق نواة لينكس ، في حوالي عام 2004، كانت هذه التطبيقات المعيبة لميزة دعم USB القديمة سببًا شائعًا للأعطال، على سبيل المثال، على اللوحات الأم التي تعتمد على شريحة Intel E7505 . [ 12 ]

بما أن كود SMM (معالج SMI) يتم تثبيته بواسطة البرامج الثابتة للنظام ( BIOS )، فقد يكون لدى نظام التشغيل وكود SMM توقعات بشأن إعدادات الأجهزة غير المتوافقة، مثل الأفكار المختلفة حول كيفية إعداد وحدة التحكم المتقدمة القابلة للبرمجة في المقاطعات (APIC).

تستنزف عمليات إدارة الذاكرة الخاصة (SMM) وقت وحدة المعالجة المركزية (CPU) المخصص للتطبيقات ونواة نظام التشغيل وبرنامج إدارة الأجهزة الافتراضية ، ويتضاعف هذا التأثير في المعالجات متعددة النوى، حيث يؤدي كل تبادل SMI إلى تبديل جميع النوى بين الأوضاع. [ 27 ] كما توجد تكلفة إضافية مرتبطة بالتبديل بين وضع SMM والوضع العادي، إذ يجب تخزين حالة وحدة المعالجة المركزية في الذاكرة (SMRAM) ومسح أي ذاكرة تخزين مؤقتة للكتابة. قد يؤدي هذا إلى تعطيل السلوك في الوقت الحقيقي وفقدان نبضات الساعة . تُعرّف نواة نظامي التشغيل ويندوز ولينكس إعداد "مهلة SMI" - وهي فترة زمنية يجب على معالجات SMM خلالها إعادة التحكم إلى نظام التشغيل، وإلا سيتوقف النظام عن العمل أو سيتعطل . 

قد يؤدي SMM إلى تعطيل سلوك التطبيقات التي تعمل في الوقت الحقيقي والتي تتطلب توقيتًا مقيدًا.

قد يلزم استخدام محلل منطقي لتحديد ما إذا كانت وحدة المعالجة المركزية قد دخلت وضع إدارة النظام (SMM) (عن طريق فحص حالة دبوس SMIACT# الخاص بوحدة المعالجة المركزية). [ 17 ] يتطلب استعادة رمز معالج SMI لتحليله بحثًا عن الأخطاء والثغرات الأمنية والبيانات السرية استخدام محلل منطقي أو تفكيك البرامج الثابتة للنظام.

انظر أيضاً

مراجع

  1. دوماس، كريستوفر (20 يوليو 2015). "حفرة الذاكرة" (ملف PDF) . بلاك هات . مؤرشف (ملف PDF) من الأصل بتاريخ 19 مايو 2015. تم الاطلاع عليه بتاريخ 22 أغسطس 2015 .
  2. تيريشكين، ألكسندر؛ فويتشوك، رافال (29 يوليو 2009). "تقديم أدوات التجسس Ring-3" (ملف PDF) . مختبر الأشياء الخفية ، بلاك هات الولايات المتحدة الأمريكية . ص 4. مؤرشف (ملف PDF) من الأصل بتاريخ 10 مايو 2025. تم الاطلاع عليه بتاريخ 22 أغسطس 2015 . 
  3. "الذكاء الاصطناعي المصغر شرير للغاية (الجزء الأول)" . msdn.com . مايكروسوفت. 17 يوليو 2020. مؤرشف من الأصل في 24 مارس 2009. تم الاطلاع عليه في 15 أبريل 2006 .
  4. إليس، سيمسون سي، "المعالج الدقيق 386 SL في أجهزة الكمبيوتر المحمولة"، شركة إنتل، حلول الحواسيب الصغيرة، مارس/أبريل 1991، صفحة 20
  5. "ورقة بيانات AMD Am386SX/SXL/SXLV" (ملف PDF) . AMD. مؤرشفة (ملف PDF) من الأصل بتاريخ 2025-03-08 . تم الاطلاع عليها بتاريخ 2018-09-16 .
  6. شركة إنتل، "أخبار موجزة: إنتل تدعم برنامج Energy Star للحاسوب التابع لوكالة حماية البيئة"، حلول الحواسيب الصغيرة، يناير/فبراير 1993، الصفحة 1
  7. "مواصفات واجهة وضع إدارة ARM®" . documentation-service.arm.com . 2016. مؤرشف من الأصل بتاريخ 10-05-2025 . تم الاطلاع عليه بتاريخ 13-03-2021 .
  8. "دليل مطوري معمارية Intel 64 و IA-32: المجلد 3ب" (ملف PDF) . Intel. مؤرشف (ملف PDF) من الأصل بتاريخ 28 أبريل 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2007 . 
  9. دليل تطوير برامج Intel 64 و IA-32، المجلد 3، وضع إدارة النظام.
  10. "الذكاء الاصطناعي المصغر شرير للغاية (الجزء الثاني)" . msdn.com . مايكروسوفت. مؤرشف من الأصل بتاريخ 24-09-2015 . تم الاطلاع عليه بتاريخ 01-03-2014 .
  11. "وضع إدارة النظام - ويكي تطوير أنظمة التشغيل" . wiki.osdev.org . مؤرشف من الأصل بتاريخ 26-05-2017 . تم الاطلاع عليه بتاريخ 12-09-2020 .
  12. 1 2 فويتش بافليك (يناير 2004). "توثيق نواة لينكس: دعم USB القديم" . kernel.org. مؤرشف من الأصل بتاريخ 24-03-2025 . تم الاطلاع عليه بتاريخ 06-10-2013 .
  13. محادثات جوجل التقنية – كوربوت – 00:34:30 مؤرشفة في 2025-01-25 على موقع Wayback Machine .
  14. مواصفات تهيئة منصة UEFI .
  15. روبرت ماكميلان (10 مايو 2008). "المخترقون يجدون مكانًا جديدًا لإخفاء برامج التجسس الخبيثة" . إنفوورلد . مؤرشف من الأصل بتاريخ 28 أبريل 2014. تم الاطلاع عليه بتاريخ 3 يونيو 2009 .
  16. روب ويليامز (7 أغسطس 2015). "باحثون يكتشفون ثغرة أمنية في معالجات إنتل تعود إلى عام 1997" . HotHardware.com . مؤرشف من الأصل بتاريخ 18 أبريل 2025. تم الاطلاع عليه بتاريخ 8 أغسطس 2015 .
  17. 1 2 وضع إدارة النظام من إنتل، مؤرشف بتاريخ 21 يناير 2025 في أرشيف الإنترنت بواسطة روبرت ر. كولينز
  18. US 5963738 ، "نظام كمبيوتر لقراءة/كتابة تكوين النظام باستخدام تعليمات الإدخال/الإخراج"  .
  19. شون إمبلتون؛ شيري سباركس؛ كليف زو (سبتمبر 2008). "برامج SMM Rootkits: جيل جديد من البرامج الضارة المستقلة عن نظام التشغيل" (ملف PDF) . ACM. مؤرشف (PDF) من الأصل بتاريخ 30 ديسمبر 2024. تم الاطلاع عليه بتاريخ 6 أكتوبر 2013 .
  20. "المخترقون يجدون مكانًا جديدًا لإخفاء برامج التجسس الخفية" . مجلة بي سي وورلد. 9 مايو 2008. مؤرشف من الأصل في 13 أبريل 2021. تم الاطلاع عليه في 6 أكتوبر 2013 .
  21. المصدر الأول للتسريبات حول العالم! (30 ديسمبر 2013). "كتالوج قسم مكافحة الاختراق التابع لوكالة الأمن القومي الأمريكية (ANT) للثغرات الأمنية في جميع البرامج والأجهزة والبرامج الثابتة الرئيسية تقريبًا | LeakSource" . Leaksource.wordpress.com. مؤرشف من الأصل بتاريخ 2 يناير 2014. تم الاطلاع عليه بتاريخ 13 يناير 2014 .{{cite web}}: صيانة CS1: أسماء رقمية: قائمة المؤلفين ( رابط )
  22. "شناير حول الأمن: سوفليتروف: ثغرة وكالة الأمن القومي اليومية" . Schneier.com. 30 ديسمبر 2013. تم الاطلاع عليه بتاريخ 13 يناير 2014 .
  23. "شناير حول الأمن: سكول مونتانا: ثغرة وكالة الأمن القومي اليومية" . Schneier.com. 30 مايو 2008. مؤرشف من الأصل في 1 فبراير 2025. تم الاطلاع عليه في 16 يناير 2014 .
  24. "شناير حول الأمن" . schneier.com . 15 أغسطس 2014. مؤرشف من الأصل بتاريخ 28 ديسمبر 2024. تم الاطلاع عليه بتاريخ 16 أغسطس 2014 .
  25. "شناير حول الأمن: آيرونشيف: ثغرة وكالة الأمن القومي اليومية" . Schneier.com. 3 يناير 2014. مؤرشف من الأصل في 1 فبراير 2025. تم الاطلاع عليه في 13 يناير 2014 .
  26. "انتقالات بين أوضاع تشغيل المعالج" (صورة بصيغة JPG) . images0.cnitblog.com . مؤرشف من الأصل بتاريخ 24 يناير 2025. تم الاطلاع عليه بتاريخ 11 أكتوبر 2020 .
  27. برايان ديلجادو وكارين إل. كارافانيك، "آثار الأداء لوضع إدارة النظام"، ندوة IEEE الدولية لعام 2013 حول توصيف عبء العمل، 22-24 سبتمبر، بورتلاند، أوريغون، الولايات المتحدة الأمريكية.

للمزيد من القراءة