الاكتشاف والحركة الجانبية
روابط لجميع الأجزاء:الجزء 1. الوصول الأولي إلى جهاز محمول (الوصول الأولي)الجزء 2. الثبات والتصعيدالجزء 3. الحصول على وصول الاعتماد (وصول الاعتماد)الجزء 4. التهرب الدفاعبعد الوصول إلى جهاز محمول ، ربما يحاول الخصم استخدام الوسائل العادية لنظام التشغيل "للتجول" لفهم الميزة التي تم اكتسابها ، سواء كان ذلك يساعد على تحقيق هدف الغزو. وتسمى هذه المرحلة من الهجوم ديسكفري. تهدف تقنيات المسح إلى الحصول على معلومات حول خصائص جهاز محمول مخترق ، بالإضافة إلى أنظمة الشبكات الأخرى المتاحة.
بعد تقييم الإمكانات المتاحة في البيئة التي تمت مهاجمتها ، سيحاول الخصم الوصول إلى الأنظمة البعيدة ، وربما سيحاول السيطرة عليها ، وسيحاول تشغيل الأدوات الضارة على الأنظمة البعيدة. يسمى النشاط الموصوف بالحركة الجانبية. تتضمن أساليب الحركة الجانبية أيضًا وسائل لجمع المعلومات من الأنظمة البعيدة دون استخدام أدوات إضافية ، مثل أدوات RAT (أدوات الوصول عن بُعد).
المؤلف غير مسؤول عن العواقب المحتملة لتطبيق المعلومات الواردة في المقالة ، كما يعتذر عن عدم الدقة المحتملة في بعض الصياغات والمصطلحات. المعلومات المنشورة هي إعادة سرد مجانية لمحتويات ATT @ CK Mobile Matrices: Device Access .النظام الأساسي: Android ، iOS
الوصف: لتحديد أدوات الأمان في النظام الذي يتعرض للهجوم ، قد يحاول المهاجم تحديد التطبيقات المثبتة على الجهاز والتي قد تزيد من خطر اكتشاف النشاط الضار ، أو العكس ، لتحديد التطبيقات التي ستستهدف بهجوم إضافي.
في Android ، يمكن للتطبيقات استخدام
طريقة فئة
PackageManager لسرد التطبيقات الأخرى أو الكائنات الأخرى التي لها حق الوصول إلى سطر الأوامر لاستخدام الأمر
pm . في iOS ، يمكن للتطبيقات استخدام مكالمات API الخاصة للحصول على قائمة بالتطبيقات المثبتة على الجهاز. ومع ذلك ، ربما لن يتم قبول أي تطبيق يستخدم مكالمات API الخاصة في AppStore.
توصيات الحماية: يجب أن تتضمن أساليب التحقق من التطبيق وسائل لتحديد التطبيقات التي تستخدم فئة
PackageManager لسرد التطبيقات الأخرى ، ولكن هذا النهج قد يكون غير عملي بسبب استدعاء العديد من التطبيقات أساليب فئة
PackageManager كجزء من عملهم العادي. في iOS ، يمكن لأدوات التحقق من التطبيق أن تبحث عن مكالمات API الخاصة.
منصة: أندرويد
الوصف: في Android ، تتوفر معلومات نوع الجهاز من خلال فئة
android.os.Build . يمكن استخدام معلومات الجهاز لمزيد من استغلال عمليات الاستهداف المستهدفة التي تعزز الامتيازات.
توصيات الحماية: أثناء الفحص الأولي ، قد يتم الكشف عن التطبيقات التي تستخدم فئة
android.os.Build ، ومع ذلك ، فإن هذا المقياس غير فعال ، لأن العديد من التطبيقات تستخدم هذه الوظيفة كجزء من العمل العادي.
منصة: أندرويد
الوصف: لسرد محتويات نظام الملفات في Android ، يمكنك استخدام أدوات سطر الأوامر أو Java API للتعامل مع الملفات. ومع ذلك ، في نظامي Linux و SELinux ، يكون وصول التطبيقات إلى الملفات عادةً محدودًا للغاية (ما لم تستخدم استغلالًا لرفع الامتيازات). عادةً ، يمكن للتطبيقات الوصول إلى محتويات وحدة التخزين الخارجية ، لذا فإن تخزين البيانات السرية هناك بشكل غير صحيح يجب أن يكون مصدر قلق. تحدد بنية أمان iOS عادةً القدرة على اكتشاف الملفات والدلائل دون امتيازات ممتدة.
توصيات الحماية: إمكانية تصعيد الامتياز معقد مع كل إصدار جديد من Android و iOS. في الإصدارات الأخيرة من Android ، تم تعزيز صندوق الحماية ، مما يحد من قدرة التطبيقات على سرد محتويات نظام الملفات.
النظام الأساسي: Android ، iOS
الوصف: باستخدام الماسحات الضوئية للمنافذ والضعف ، يمكن للمهاجمين محاولة الحصول على قائمة بالخدمات التي تعمل على الأجهزة البعيدة ، بما في ذلك تلك التي لديها ثغرات في الاستغلال عن بُعد. يمكن للخصم أن ينظر إلى وجود جهاز محمول متصل بالشبكة الداخلية للمؤسسة من خلال اتصال محلي أو VPN ، على أنه ميزة محتملة.
منصة: أندرويد
الوصف: في Android حتى الإصدار 5 ، يمكن للتطبيقات تلقي معلومات حول العمليات الأخرى التي يتم تنفيذها من خلال أساليب فئة
ActivityManager . على نظام أندرويد الأقدم من الإصدار 7 ، يمكن للتطبيقات الحصول على هذه المعلومات عن طريق تشغيل الأمر
ps أو "فحص" دليل
/ proc . بدءًا من Android 7 ، يؤدي استخدام وظيفة
Linux kernel
hidepid إلى منع التطبيقات التي لا تتمتع بامتيازات مرتفعة من تلقي معلومات حول العمليات الأخرى.
توصيات الحماية: استخدام Android OS الإصدار 7 وأعلى.
النظام الأساسي: Android ، iOS
الوصف: يمكن للمهاجم محاولة الحصول على معلومات مفصلة حول نظام التشغيل والأجهزة ، بما في ذلك الإصدار ، والإصلاحات المثبتة ، والهندسة المعمارية. على نظام Android ، تتوفر معظم معلومات النظام من خلال فئة
android.os.Build . على نظام iOS ، هناك أيضًا طرق يمكن للتطبيقات من خلالها الوصول إلى معلومات النظام.
منصة: أندرويد
الوصف: في Android ، تتوفر تفاصيل تكوين واجهة الشبكة المدمجة للتطبيقات من خلال فئة
java.net.NetworkInteface . يمكن استخدام فئة
TelephonyManager لجمع معلومات مثل IMSI و IMEI ورقم الهاتف.
توصيات الحماية: يجب أن يتضمن التحليل الأولي للتطبيق التحقق مما
إذا كان التطبيق يطلب أذونات
ACCESS_NETWORK_STATE (مطلوب للوصول إلى معلومات
NetworkInterface ) أو
READ_PHONE_STATE (مطلوب للوصول إلى معلومات
TelephonyManager ). بدءًا من Android 6.0 ، لا يمكن للتطبيقات الوصول إلى عناوين MAC لواجهات الشبكة.
منصة: أندرويد
الوصف: يمكن للتطبيقات استخدام واجهات برمجة التطبيقات القياسية لجمع بيانات حول اتصالات الشبكة الصادرة والواردة. على سبيل المثال ، يوفر تطبيق NetworkConnections المتاح في PlayMarket هذه الوظيفة.
منصة: أندرويد
الوصف: من أجل تنفيذ هجمات على جهاز الكمبيوتر المتصل بالجهاز المحمول ، يجوز للعدو (الذي يتمتع بامتيازات مرتفعة) إجراء تغييرات على نظام التشغيل ، وبعد ذلك سيقوم الجهاز المحمول بانتحال شخصية جهاز USB: لوحة المفاتيح أو الماوس أو جهاز تخزين المعلومات أو جهاز الشبكة. تم توضيح هذه الطريقة على نظام Android. إمكانية تنفيذ هذه التقنية على نظام iOS غير معروفة.
توصيات
الحماية: يوصى بأن يقوم المستخدمون بتوصيل الأجهزة المحمولة بكمبيوتر شخصي فقط إذا كانت هناك حاجة معقولة (على سبيل المثال ، إذا كان ذلك ضروريًا لتطوير تطبيقات الجوال وتصحيحها).
النظام الأساسي: Android ، iOS
الوصف: قد يحاول الخصم استخدام خوادم الشركات أو محطات العمل أو الموارد الأخرى المتاحة عبر الشبكة. يتم استخدام هذه الطريقة عند توصيل جهاز محمول بشبكة شركة من خلال اتصال محلي أو VPN.