ندرس MITER ATT & CK. المصفوفات المتنقلة: وصول الجهاز. الجزء 4

التهرب الدفاع


روابط لجميع الأجزاء:
الجزء 1. الوصول الأولي إلى جهاز محمول (الوصول الأولي)
الجزء 2. الثبات والتصعيد
الجزء 3. الحصول على وصول الاعتماد (وصول الاعتماد)
الجزء 4. التهرب الدفاع
الجزء 5. الاكتشاف والحركة الجانبية

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

المؤلف غير مسؤول عن العواقب المحتملة لتطبيق المعلومات الواردة في المقالة ، كما يعتذر عن عدم الدقة المحتملة في بعض الصياغات والمصطلحات. المعلومات المنشورة هي إعادة سرد مجانية لمحتويات ATT @ CK Mobile Matrices: Device Access .

اكتشاف التطبيق


النظام الأساسي: Android ، iOS
الوصف: يمكن للمهاجمين محاولة تحديد جميع التطبيقات المثبتة على الجهاز من أجل تحديد مدى توفر تدابير الأمان التي يمكن أن تزيد من خطر الاكتشاف ، أو العكس - لتحديد التطبيقات التي ستستهدف بهجوم إضافي.

يمكن أن تستخدم تطبيقات Android طريقة فئة PackageManager لسرد التطبيقات الأخرى أو كائن سطر أوامر آخر لاستخدام الأمر pm. يمكن لتطبيقات iOS استخدام مكالمات API الخاصة للحصول على قائمة بالتطبيقات المثبتة على الجهاز. ومع ذلك ، فإن توزيع تطبيق باستخدام مكالمات API الخاصة من خلال AppStore من المحتمل أن يكون مستحيلاً.

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

إخفاء مؤشرات الوصول إلى الجذر أو كسر الحماية (مؤشرات تمويه الجذر / كسر الحماية)


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

تحميل رمز جديد في وقت التشغيل


النظام الأساسي: Android ، iOS
الوصف: لتجنب اكتشاف الشفرة الخبيثة أثناء عمليات الفحص في بيئة الشركة أو متجر التطبيقات باستخدام أساليب تحليل الشفرة الثابتة (ربما تكون ديناميكية) ، يمكن للتطبيق الضار تنزيل وتنفيذ التعليمات البرمجية الديناميكية (غير المدرجة في حزمة التطبيق) بعد تثبيته.
في Android ، يمكن أن تتضمن الشفرة الديناميكية رمزًا أصليًا أو رمز Dalvik أو كود JavaScript يستخدم وظيفة JavascriptInterface Android WebView. لدى IOS أيضًا طرق لتنفيذ التعليمات البرمجية الديناميكية التي تم تحميلها بعد تثبيت التطبيق.

توصيات الحماية: يمكن لتقنيات التحقق من التطبيق (التحليل الثابت والديناميكي) اكتشاف علامات على أن التطبيق يقوم بتحميل كود جديد في وقت التشغيل (على سبيل المثال ، في Android يستخدم DexClassLoader أو System.load أو WebView JavaScryptInterface ، وفي iOS يستخدم JSPatch أو ميزات مشابهة). لسوء الحظ ، هذه ليست سوى طريقة جزئية لتخفيف المخاطر ، لأن التطبيقات المحددة ستتطلب التحقق الإضافي نظرًا لأن المطورين يستخدمون هذه الطرق غالبًا دون نية ضارة ، وأيضًا لأن التطبيقات يمكن أن تستخدم طرقًا أخرى ، مثل الاختباء استخدام طرق تحميل الكود في وقت التشغيل.

تثبيت تكوين غير آمن أو ضار


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

في نظام التشغيل iOS ، يمكن أن تحتوي ملفات تعريف التكوين الضارة على شهادات المرجع المصدق (CA) غير المرغوب فيها أو غيرها من الإعدادات غير الآمنة ، مثل عنوان وكيل غير مرغوب فيه أو خادم VPN لتوجيه حركة مرور الجهاز من خلال نظام المهاجمين أو تسجيل الجهاز المستهدف باستخدام نظام إدارة الجهاز المحمول العدو (MDM).

توصيات الحماية: في نظام iOS 10.3 وما فوق ، تتم إضافة خطوة إضافية تتطلب من المستخدم اتخاذ إجراءات معينة لتثبيت شهادات المرجع المصدق الموثوقة الجديدة. تثق تطبيقات Android المتوافقة مع Android 7 والإصدارات الأحدث (مستوى API 24) ، افتراضيًا ، فقط في شهادات المرجع المصدق (CA) التي يتم تسليمها مع نظام التشغيل ، والتي لا يضيفها المستخدم أو المسؤول ، مما يقلل من قابليتها للتعرض للهجمات غير المباشرة.

بشكل عام ، لا يتم ضبط إعدادات التكوين غير الآمنة أو الضارة دون موافقة المستخدم. يجب على المستخدمين عدم تعيين معلمات التكوين غير متوقع (شهادات المرجع المصدق (CA) ، ملفات تعريف تكوين iOS ، اتصالات MDM).

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

تعديل قسم OS kernel أو قسم التمهيد (تعديل OS Kernel أو قسم التمهيد)


النظام الأساسي: Android ، iOS
الوصف: حدد فرصة لزيادة الامتيازات ، فقد يحاول الخصم وضع رمز ضار في نواة نظام التشغيل أو مكونات قسم التمهيد ، حيث لا يمكن اكتشاف الرمز ، وسيتم حفظه بعد إعادة تشغيل الجهاز ، ولا يمكن للمستخدم حذفه. في بعض الحالات (على سبيل المثال ، Samsung Knox) ​​، يمكن اكتشاف هجوم ، ولكن سيؤدي ذلك إلى نقل الجهاز إلى وضع الأداء الوظيفي المحدود.

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

توصيات الحماية: في بيئة الشركة ، قم بتنظيم تثبيت التحديثات الأمنية ، وإصدار الشهادات عن بُعد للأجهزة المحمولة (Android SafetyNet ، Samsung KNOX TIMA) ، وكذلك منع الأجهزة التي لم تحصل على الشهادات من الوصول إلى موارد الشركة. تحقق من حالة قفل محمل الإقلاع على الأجهزة التي توفر القدرة على إلغاء قفل محمل الإقلاع (وبالتالي السماح بكتابة أي كود نظام تشغيل على الجهاز).

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

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

تعديل قسم النظام


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

توصيات الحماية: تجري أجهزة Android المزودة بدعم التحقق من التمهيد التحقق من سلامة قسم النظام. يمكن استخدام واجهة برمجة تطبيقات Android SafetyNet لتحديد الأجهزة المعرضة للخطر. يوفر Samsung KNOX أيضًا إمكانيات للتحكم عن بعد على الأجهزة المدعومة. لن تقوم أجهزة IOS بالتمهيد أو لن تسمح بتنشيط جهاز يتم فيه اكتشاف تغييرات غير مصرح بها.

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


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

تلميحات الأمان: يجب أن تقوم الأجهزة بإجراء اختبارات تكامل على الرمز الذي يتم تشغيله في TEE في وقت التمهيد. لن يتم تشغيل نظام التشغيل iOS إذا فشل الرمز الذي يتم تشغيله في Secure Enclave في التحقق من التوقيع الرقمي.

ملفات غامضة أو معلومات


النظام الأساسي: Android ، iOS
الوصف: يمكن لمطور التطبيق الضار تطبيق أساليب التعتيم أو تشفير الشفرة التي يتم فك تشفيرها وفك تشفيرها أثناء تنفيذ التطبيق على الجهاز الهدف.

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

Source: https://habr.com/ru/post/ar455082/


All Articles