لماذا نستخدم AVF؟

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

توفّر أنظمة التشغيل، بمساعدة وحدات إدارة الذاكرة (MMU) في الأجهزة، عمليات تجريدية تعزل العمليات غير ذات الصلة ببعضها. لا يُسمح إلا للمكونات التي تشكّل جزءًا من Trusted Computing Base (قاعدة الحوسبة الموثوق بها) ببرمجة وحدات إدارة الذاكرة هذه مباشرةً.

وقد كان هذا النموذج هو الأساس الذي تم على أساسه تنفيذ الخصوصية والأمان منذ طرح أنظمة التشغيل المشابهة لنظام التشغيل Unix. ومع ذلك، أصبح هذا المتطلّب مشكلةً لأنّ مساحة التخزين المؤقتة للعمليات (TCB) الحالية كبيرة جدًا: فهي تتضمّن معظم برامج تشغيل الأجهزة واللوحة، وجداول التشغيل المعقدة، وأنظمة الملفات، ومجموعة بروتوكولات الشبكات والذاكرة المؤقتة، وبرامج التحليل والتحميل القابلة للتنفيذ، ووحدات الجلسة. أصبح من الصعوبة بمكانٍ ضمان أمان كل جزء من هذا النظام المعقّد.

يتضمّن نواة Linux أكثر من 20 مليون سطر من الرموز البرمجية، ومعدل التغييرات والإعادة الرائعة. ويشكّل هذا النمو مساعدة كبيرة لنظام Android ومنظومة Android المتكاملة. ومع ذلك، فإنّ حجمه الكبير يجعل من الصعب التأكّد من عدم توفّر ثغرات أمنية قابلة للاستغلال.

طوّر مورّدو الأجهزة حلولاً، مثل TrustZone من Arm، التي تسمح للمعالجات بالعمل في "الوضع الآمن" ووضع علامة على معاملات الذاكرة على أنّها "آمنة" أو "غير آمنة". في هذه الأنظمة، يتم تخزين البيانات الحسّاسة في "العالم الآمن"، وهو المكان الوحيد الذي يمكنه الوصول إليها مباشرةً، ويوفّر "العالم الآمن" خدمات "للعالم غير الآمن" عند الطلب.

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

ومن القيود الأخرى للحلول الحالية أنّها مصمّمة لبيئة ساكنة نسبيًا يتم فيها احتساب جميع موارد حالات الاستخدام وتحديدها مسبقًا. هذه الحلول ليست جيدة بما يكفي للاستخدام الديناميكي، أي الحالات التي يتم فيها تخصيص الموارد عند الطلب.

بالإضافة إلى ذلك، فإنّ واجهات برمجة التطبيقات المستخدَمة خارج نظام التشغيل Android متشتّتة وتقيّد قدرتنا على نشر حالات الاستخدام على نطاق Android، بما في ذلك الأساسيات مثل Keymint وGatekeeper.

لحلّ هذه القيود وتمكين Android من توفير أساس قوي لحالات الاستخدام من الجيل التالي، يقدّم Android 13 تكنولوجيا المحاكاة الافتراضية الآمنة كإطار عمل Android Virtualization Framework (AVF).

يتمثل الهدف الرئيسي من AVF في توفير بيئة تنفيذ آمنة وخاصة لحالات الاستخدام من الجيل التالي.