وجد الباحثون أن العديد من تطبيقات Android على متجر Google Play لديها طرق لتجاوز نموذج إذن Android لجمع بيانات المستخدم.
على الرغم من إدراك المستخدم، فإن نظام Android آمن تمامًا كنظام تشغيل محمول. نحن نقبل عمومًا فرضية أن الحلقة الأضعف هي المستخدم؛ وطالما أنك تراقب ما تقوم بتثبيته والأذونات التي تمنحها، فيجب أن تكون في مأمن من الوصول غير المصرح به إلى بياناتك وتوزيعها. إذا رفضت وصول تطبيق Android إلى موقعك، فلن يكون لدى هذا التطبيق أي طريقة لمعرفة مكانك أو المكان الذي كنت فيه. ومع ذلك، اكتشف بعض مطوري التطبيقات طرقًا للالتفاف على نموذج الأذونات لنظام Android، وفقًا لباحثين من المعهد الدولي لعلوم الكمبيوتر (ICSI).
وفق سي نت، تم تقديم الدراسة الشهر الماضي في PrivacyCon بعد أن تم الكشف عنها بشكل مسؤول لكل من Google ولجنة التجارة الفيدرالية (FTC) في سبتمبر الماضي. على الرغم من أن ورقة منشورة على الموقع الإلكتروني للجنة التجارة الفيدرالية (FTC). لا يسرد التطبيقات المحددة التي وضع علامة عليها الفريق في تحليله (ستأتي هذه التفاصيل لاحقًا في مؤتمر Usenix للأمن الشهر المقبل)، فهي توفر تفاصيل حول طريقة التحليل الخاصة بهم وكيفية تجاوز التطبيقات لنموذج الأذونات الخاص بنظام Android. على أية حال، تقول Google أن الأمان والخصوصية يغيران Google
تم تقديمه في Android Q ستغلق طرق التجاوز هذه، وبالتالي توفر هذه الورقة نظرة ثاقبة حول مبررات Google لبعض التغييرات التي أجرتها على النظام الأساسي في Android 10. دعونا نتعمق.كيف تجاوزت 1000 تطبيق نموذج إذن Android
يميز الباحثون بين تقنيتين مختلفتين للتحايل الأمني: القنوات الجانبية والقنوات السرية. تتضمن تقنيات القناة الجانبية الوصول إلى معلومات معينة بطريقة لا تغطيها آلية الأمان؛ على سبيل المثال، كانت التطبيقات قادرة على تتبع موقع الجهاز باستخدام عنوان MAC حتى قدم Android Pie التوزيع العشوائي لعنوان MAC. تتضمن تقنيات القناة السرية تعاون خدمتين لإرسال البيانات من خدمة واحدة لديها وصول صالح إلى خدمة أخرى لا تملكها؛ على سبيل المثال، قد يقوم تطبيق تم منحه حق الوصول إلى الموقع بمشاركة تلك البيانات مع تطبيق لم يتم منحه حق الوصول.
قام فريق ICSI بتحليل 88113 من تطبيقات Android الأكثر شيوعًا من متجر Google Play الأمريكي واكتشف أكثر من 1000 تطبيق ومكتبة تابعة لجهات خارجية استخدام قنوات جانبية و/أو قنوات سرية للتحايل على الإجراءات الأمنية لنظام Android حتى يتمكنوا من الوصول إلى بيانات الموقع والمعرفات الدائمة للمستخدمين الأجهزة. تتكون مجموعة البيانات الكاملة الخاصة بهم من 252,864 ملف APK منذ أن قام الفريق بشكل دوري بمسح متجر Play بحثًا عن إصدارات جديدة من 88,113 تطبيقًا خططوا لتحليلها. لقد اختبروا في البداية سلوك كل تطبيق على جوجل نيكزس 5X يعمل بنظام التشغيل Android 6.0.1 Marshmallow ولكنهم أعادوا اختبار النتائج التي توصلوا إليها لاحقًا على a جوجل بيكسل 2 تشغيل Android Pie لإثبات أن النتائج التي توصلوا إليها لا تزال صالحة اعتبارًا من الإصدار الأخير في وقت الكشف.
باستخدام مجموعة البيانات هذه، طور الفريق طريقة تستخدم التحليل الديناميكي والثابت لاكتشاف التحايل على نموذج إذن Android. بمعنى آخر، قام الفريق بدراسة سلوك التطبيق من خلال مراجعة سلوك وقت تشغيل التطبيق (التحليل الديناميكي) أو مسح التعليمات البرمجية بحثًا عن سلوك ضار محتمل (ثابت) التحليل.) بالطبع، يدرك مطورو التطبيقات الضارة هذه التقنيات، باستخدام تشويش التعليمات البرمجية وتحميل التعليمات البرمجية الديناميكية لجعل التحليل الثابت أكثر صعوبة أو TLS اعتراض لاكتشاف متى يتم تشغيل التطبيق في بيئة افتراضية، لذلك استخدم فريق ICSI مزيجًا من التحليل الثابت والديناميكي (التحليل المختلط) في اختبارات. ونتيجة لذلك، اكتشف الفريق أن البيانات التالية قد تم حذفها بواسطة التطبيقات التي لم يكن لديها الأذونات المطلوبة:
- IMEI: نظرًا لأن IMEI هو معرف فريد ومستمر، فمن المفيد للخدمات عبر الإنترنت أن تتخلص منه حتى تتمكن من تتبع الأجهزة الفردية. واكتشف الفريق أن السلمون و بايدو كانت مجموعات SDK تستخدم قناة سرية لقراءة IMEI. كانت التطبيقات التي تتمتع بوصول شرعي إلى IMEI تخزن ملفات مخفية على وحدة التخزين الخارجية التي تحتوي على IMEI للجهاز حتى تتمكن التطبيقات الأخرى التي ليس لديها وصول شرعي من قراءة IMEI. تتضمن التطبيقات التي تم تحديدها والتي تستخدم SDK الخاصة بشركة Baidu بهذه الطريقة تطبيقات منتزهات ديزني الترفيهية لهونج كونج وشنغهاي، وSamsung Health، وSamsung Browser.
- عنوان MAC للشبكة: يعد عنوان MAC للشبكة أيضًا معرفًا فريدًا، وعادةً ما يكون محميًا بإذن ACCESS_NETWORK_STATE. وفقًا للباحثين، كانت التطبيقات تستخدم كود C++ الأصلي "لاستدعاء عدد من مكالمات نظام UNIX غير المحمية." حدد الفريق 42 تطبيقًا تستخدم Unity SDK لفتح ملف مقبس الشبكة وioctl للحصول على عنوان MAC، على الرغم من أنهم لاحظوا أن 748 من أصل 12408 تطبيقًا تحتوي على الكود المعني بينما تفتقر إلى ACCESS_NETWORK_STATE إذن.
- عنوان MAC لجهاز التوجيه: يحمي إذن ACCESS_WIFI_STATE معرف BSSID، لكن قراءة ذاكرة التخزين المؤقت لـ ARP في /proc/net/arp تسمح للتطبيق بالحصول على تلك البيانات دون الحاجة إلى أي أذونات. وقد حددت الباحثة اوبن اكس SDK يستخدم تقنية القناة الجانبية هذه.
- تحديد الموقع الجغرافي: اكتشف الباحثون أن تطبيق Shutterfly كان يصل إلى علامات الموقع الخاصة ببيانات EXIF الوصفية للصور. كل ما هو مطلوب هو إذن READ_EXTERNAL_STORAGE.
في Android Q، تطلب Google الآن أن تمتلك التطبيقات إذن READ_PRIVILEGED_PHONE_STATE لقراءة IMEI. تقوم الأجهزة التي تعمل بنظام Android Q الآن بإرسال عناوين MAC العشوائية افتراضيًا. وأخيرا، أندرويد Q تخزين النطاق تعمل التغييرات على تقليل قدرة التطبيقات على قراءة بيانات الموقع من الصور. وبالتالي، تمت معالجة هذه المخاوف في أحدث إصدار من Android، ولكن كما نعلم جميعًا، سيتم ذلك يستغرق بعض الوقت لآخر تحديث للنشر.
خاتمة
بشكل عام، توفر هذه الدراسة نظرة مضيئة حول كيفية وصول بعض التطبيقات إلى البيانات التي يجب حمايتها خلف الأذونات. نظر البحث فقط في مجموعة فرعية مما تسميه جوجل الأذونات "الخطيرة"، ولا سيما تخطي الأذونات مثل البلوتوث وجهات الاتصال والرسائل النصية القصيرة. للحصول على التفاصيل الكاملة حول هذا التقرير، أنصح بقراءة ورقة مقدمة إلى لجنة التجارة الفيدرالية.