قرصنة بيئات التنفيذ الموثوقة (TEEs) في البنية التحتية للخوادم

تعرض ورقتان بحثيتان منفصلتان بوضوح كيف يمكن اختراق الأنظمة الافتراضية في بيئة معادية – وتحديدًا، عندما لا يتمكن مالك البيانات حتى من الوثوق بمزوّد الخدمة السحابية.

تتميز معالجات الخوادم الحديثة ببيئة تنفيذ موثوقة (TEE) للتعامل مع المعلومات الحساسة بشكل خاص. وهناك العديد من تطبيقات بيئة التنفيذ الموثوقة (TEE)، لكن اثنين منها الأكثر صلة بهذا النقاش: Intel Software Guard eXtensions (SGX) وAMD Secure Encrypted Virtualization (SEV). وفي الوقت نفسه تقريبًا، اكتشف فريقان منفصلان من الباحثين – أحدهما في الولايات المتحدة والآخر في أوروبا – بشكل مستقل طرقًا متشابهة جدًا (وإن كانت متميزة) لاستغلال هذين التطبيقين. وكان هدفهم الوصول إلى البيانات المشفرة المحفوظة في ذاكرة الوصول العشوائي. وقد نُشرت الأوراق العلمية التي تتناول هذه النتائج بفارق أيام قليلة.

  • WireTap: اختراق نظام SGX في الخادم عبر اعتراض ناقل DRAM هو جهد للباحثين الأمريكيين، والذي يوضح تفاصيل عملية اختراق ناجحة لنظام Intel Software Guard eXtensions (SGX). وتمكنوا من إنجاز ذلك عبر اعتراض تبادل البيانات بين المعالج ووحدة ذاكرة الوصول العشوائي من نوع DDR4.
  • في دراسة Battering RAM، نجح علماء من بلجيكا والمملكة المتحدة أيضًا في اختراق نظام Intel SGX، بالإضافة إلى نظام AMD الأمني المشابه، SEV-SNP، عن طريق التلاعب بعملية نقل البيانات بين المعالج ووحدة ذاكرة الوصول العشوائي من نوع DDR4.

قرصنة بيئة التنفيذ لبموثوقة (TEE)

تم تصميم كلتا التقنيتين المذكورتين – Intel SGX وAMD SEV – لحماية البيانات حتى لو حدث اختراق للنظام الذي يعالجها بالكامل. ولذلك، بدأ الباحثون بافتراض أن المهاجم سيتمتع بحرية عمل كاملة: وصول مطلق إلى كل من برامج وخوارزميات الخادم والبيانات السرية التي يسعون إليها والموجودة، على سبيل المثال، على جهاز افتراضي يعمل على ذلك الخادم.

في هذا السيناريو، تصبح قيود معينة لكل من Intel SGX وAMD SEV حاسمة. ومن الأمثلة على ذلك استخدام التشفير الحتمي: خوارزمية ينتج عنها دائمًا التسلسل نفسه تمامًا لبيانات الإخراج المشفرة مقابل تسلسل محدد لبيانات الإدخال. ونظرًا لأن المهاجم لديه وصول كامل إلى البرنامج، فيمكنه إدخال بيانات عشوائية في بيئة التنفيذ الموثوقة (TEE). وإذا تمكن المهاجم أيضًا من الوصول إلى المعلومات المشفرة الناتجة، فإن مقارنة مجموعتي البيانات هاتين ستسمح له بحساب المفتاح الخاص المستخدم. وهذا بدوره سيمكنه من فك تشفير البيانات الأخرى المشفرة بالآلية نفسها.

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

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

لكن المشكلات لا تتوقف عند هذا الحد. وتتبادل وحدات الذاكرة الحديثة البيانات مع المعالج بسرعات هائلة، وتُجري مليارات العمليات في الثانية. ويتطلب اعتراض تدفق بيانات بهذه السرعة معدات متطورة. وكلفت الأجهزة التي تم استخدامها لإثبات جدوى هذا النوع من الهجوم في عام 2021 مئات الآلاف من الدولارات.

ميزات WireTap

تمكن الباحثون الأمريكيون الذين يقفون وراء هجوم WireTap من خفض تكلفة عمليتهم إلى ما يقل قليلاً عن ألف دولار. وبدا إعدادهم لاعتراض البيانات من وحدة ذاكرة DDR4 على النحو التالي:

التنصت السلكي (WireTap) والهجوم العنيف على ذاكرة الوصول العشوائي (Battering RAM): الهجمات على بيئات التنفيذ الموثوقة (TEEs)

نظام الاختبار لاعتراض تبادل البيانات بين المعالج ووحدة الذاكرة  المصدر

أنفق الباحثون نصف الميزانية على مُحلل منطقي قديم يبلغ عمره ربع قرن، حصلوا عليه عبر مزاد على الإنترنت. وغطى الجزء المتبقي الموصلات الضرورية، في حين تم لحام الجهاز الوسيط (المحوّل الذي تُركّب فيه وحدة الذاكرة المستهدفة) يدويًا من قِبل الباحثين أنفسهم. ومن المستحيل أن يتمكن إعداد قديم كهذا من التقاط تدفق البيانات بسرعته الطبيعية. لكن الباحثين توصلوا إلى اكتشاف رئيسي: يمكنهم إبطاء عمل وحدة الذاكرة. وبدلاً من سرعات DDR4 الفعالة القياسية التي تتراوح بين 1600 و3200 ميجاهرتز، نجحوا في تقليل السرعة وصولاً إلى 1333 ميجاهرتز.

من تلك النقطة، فإن الخطوات… حسنًا، ليست بسيطة بالفعل، لكنها واضحة:

  1. التأكد من أن البيانات من العملية المستهدفة قد كُتبت في وحدة الذاكرة المُخترَقة، ثم اعتراضها وهي لا تزال مشفرة في هذه المرحلة.
  2. إدخال مجموعة بيانات مخصصة إلى نظام Intel SGX لغرض التشفير.
  3. اعتراض النسخة المشفّرة من البيانات المعروفة، ومقارنة النص العادي المعروف بالنص المشفّر الناتج، ثم حساب مفتاح التشفير.
  4. فك تشفير البيانات التي سبق اعتراضها والخاصة بالعملية المستهدفة.

باختصار، لا يُغير عمل WireTap بشكل أساسي فهمنا للقيود المتأصلة في نظام Intel SGX. لكنه يُثبت أن تكلفة الهجوم يمكن أن تصبح أرخص بكثير.

ميزات Battering RAM

بدلاً من نهج اعتراض البيانات المباشر، سعى الباحثون من جامعة KU Leuven في بلجيكا وزملاؤهم في المملكة المتحدة إلى طريقة أكثر دقة وأناقة للوصول إلى المعلومات المشفّرة. لكن قبل أن نتعمق في التفاصيل، دعونا نلقي نظرة على مكون الأجهزة ونقارنه بعمل الفريق الأمريكي:

التنصت السلكي (WireTap) والهجوم العنيف على ذاكرة الوصول العشوائي (Battering RAM): الهجمات على بيئات التنفيذ الموثوقة (TEEs)

الجهاز الوسيط لوحدة الذاكرة المستخدم في هجوم Battering RAM  المصدر

بدلاً من تشابك الأسلاك ومحلل البيانات الضخم، يتميز هذا الإعداد بلوحة بسيطة مُصممة من الصفر، تُركّب فيها وحدة الذاكرة المستهدفة. ويتم التحكم في اللوحة بواسطة كمبيوتر مصغر رخيص الثمن من طراز Raspberry Pi Pico. وتكاد ميزانية الأجهزة لا تذكر: 50 يورو فقط. علاوة على ذلك، على عكس هجوم WireTap، يمكن إجراء هجوم Battering RAM سرًا؛ حيث لا يلزم وجود وصول فعلي مستمر إلى الخادم. وبمجرد تثبيت وحدة الذاكرة المُعدّلة، يمكن سرقة البيانات المطلوبة عن بُعد.

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

منحت هذه الطريقة الباحثين القدرة على تحديد موقع تسجيل بياناتهم. والأهم من ذلك، أن هذا يعني أنهم لم يحتاجوا حتى إلى حساب مفتاح التشفير. وقاموا أولاً بالتقاط المعلومات المشفّرة من العملية المستهدفة. وبعد ذلك، قاموا بتشغيل برنامجهم الخاص ضمن نفس نطاق الذاكرة وطلبوا من نظام بيئة التنفيذ الموثوقة (TEE) فك تشفير المعلومات التي جرى اعتراضها سابقًا. وقد أتاحت لهم هذه التقنية اختراق ليس فقط نظام Intel SGX، بل وأيضًا نظام AMD SEV. علاوة على ذلك، ساعدتهم هذه السيطرة على كتابة البيانات في التحايل على ملحق أمان AMD المسمى SEV-SNP. وقد صُمم هذا الملحق، الذي يستخدم ميزة الترحيل المتداخل الآمن للصفحات، لحماية الجهاز الافتراضي من الاختراق عن طريق منع تعديل البيانات في الذاكرة. ويسمح التحايل على SEV-SNP للمهاجمين نظريًا ليس فقط بقراءة البيانات المشفّرة، بل وأيضًا بحقن تعليمات برمجية ضارة في جهاز افتراضي مُخترَق.

أهمية الهجمات المادية على البنية التحتية للخادم

من الواضح أنه بالرغم من إمكانية التطبيق العملي لمثل هذه الهجمات، فمن غير المرجح أن يتم تنفيذها على نطاق واسع في العالم الحقيقي. ويجب أن تكون قيمة البيانات المسروقة عالية جدًا لتبرير التلاعب على مستوى الأجهزة. وهذا على الأقل هو الموقف الذي اتخذته كل من Intel وAMD فيما يتعلق بحلولهما الأمنية: ردّت كلتا الشركتين المصنّعتين للرقائق على الباحثين بالقول إن الهجمات المادية تقع خارج نطاق نموذجهما الأمني. ومع ذلك، أظهر فريقا البحث الأمريكي والأوروبي أن تكلفة هذه الهجمات ليست بالارتفاع الذي كان يُعتقد سابقًا. ويوسّع هذا قائمة الجهات الفاعلة المهددة التي قد تكون مستعدة لاستغلال مثل هذه الثغرات الأمنية المعقدة.

تأتي الهجمات المقترحة بحدودها الخاصة. وكما ذكرنا سابقًا، تمت سرقة المعلومات على الأنظمة المزودة بوحدات ذاكرة بمعيار DDR4. أما المعيار الأحدث DDR5، الذي تم الانتهاء منه في عام 2020، فلم يتعرض للاختراق بعد، حتى لأغراض البحث. ويعود هذا جزئيًا إلى كل من البنية المنقحة لوحدات الذاكرة وسرعات التشغيل المتزايدة. ومع ذلك، من المرجح جدًا أن يجد الباحثون ثغرات في DDR5 أيضًا. وهذا أمر جيد: يجب أن يخضع الأمان المُعلن لأنظمة بيئة التنفيذ الموثوقة (TEE) بانتظام لمراجعات مستقلة. وبخلاف ذلك، قد يتضح في مرحلة ما أن نظام الحماية الموثوق به المفترض يصبح عديم الفائدة تمامًا بشكل غير متوقع.

النصائح

برمجيات تنقيب مخفية بداخل جووجل بلاي ستور!

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