0

من المعروف أن نظام أندرويد يستحوذ على النسبة الأكبر في عالم الهواتف الذكية (حوالي 70% من الأجهزة حول العالم تعمل بنظام أندرويد) ولهذا فإنه من الطبيعي أن يتركّز اهتمام الهاكرز على هذا النظام الشعبي، ورغم محاولات جوجل المستمرّة لتأمين نظام أندرويد قدر المستطاع، إلا أنه دائمًا ما يظهر هجوم جديد أحدثه ثغرة StrandHogg v.2.0 التي تشكل ولأول مرة خطرًا حقيقيًا لكل مستخدمي هواتف آندرويد حيث تؤثر على جميع إصدارات النظام من نسخة آندرويد 3.0 (هونيكمب) وحتى 9 (باي)!

آلية عمل ثغرة StrandHogg v.2.0

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

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

فيديو يوضّح طريقة عمل ثغرة StrandHogg v.2.0

يظهر في هذا الفيديو طريقة عمل الثغرة بشكل مباشر مع المستخدمين، تم تسجيل هذا الفيديو بواسطة هاتف سامسونج جالاكسي نوت 8 يعمل بنظام آندرويد 9.

الحانب التقني من ثغرة StrandHogg v.2.0 ولماذا يصعب التخلّص منها؟

ما زلنا لا نمتلك معلومات كافية عن طريقة عمل ثغرة StrandHogg v.2.0 ، ولكن ما نعرفه حتى الآن أنها تستهدف الكود البرمجي ()startActivites لفتح الواجهة المزيّفة للبرامج المستهدفة كما شرحنا من قبل، يتم هذا بواسطة ثلاثة طرق:

  • الفتح المباشر للواجهة بإستخدام Intent.FLAG_ACTIVITY_NEW_TASK “دون تزييف أي واجهة مما يجعلها غير خطيرة وسهلة الكشف”.
  • الفتح لواجهة مشابهة لواجهة التطبيق المستهدف “الطريقة الخطرة”.
  • التضليل عن طريق التأكد من عدم اشتباه المستخدم في برنامج جيميل عند فتحه بشكل عشوائي في الخلفية بدلًا من البرنامج الذي نقر عليه.

 ثغرة StrandHogg v.2.0 بغض النظر عن الطرق المختلفة لتفعيل ثغرة StrandHogg v.2.0، فجميعها يدور حول استهداف كود ()startActivites كما ذكرنا من قبل، لهذا فمن الصعب التخلص من الثغرة لأنها تستهدف كودًا شعبيًا يستخدمه أغلب المطورين في كتابة أكوادهم البرمجية على منصة أندرويد، في الإصدار الأول من الثغرة StrandHogg 1.0 كان يجب وضع كود معين في ملف AndroidManifest.xml داخل البرنامج الملغوم ممّا كان يجعل من السهل على النظام اكتشافه، أما في هذا الإصدار فقد تطوّر الأمر كثيرًا حيث أصبحت تعتمد الثغرة على لغتي جافا وكوتلين ممّا يجعل الأمر معقدًا كثيرًا وصعب الاكتشاف.

كيف كان رد فعل جوجل؟

منصة جوجل بلاي بروتيكت
منصة جوجل بلاي بروتيكت

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

حتى الآن فقد صرحت شركة promon للحماية -هي أول من اكتشف الثغرة في الأساس- أنها لم تر أي تطبيق عملي للثغرة حتى الآن، كما نصحت المطورين بأن يقوموا بحماية برامجهم بواسطة استخدام كود singletask أو singleInstance لفتح الواجهات المتعددة في برامجهم حيث سيستطيع هذا منع الثغرة من العمل، ولكن في نفس الوقت قد تسبب مشاكل في البرنامج نفسه حيث أن هذه الأساليب البرمجية ليست محبوبة كثيرًا، روّجت الشركة أيضًا لاستخدام برنامجها المخصص للحماية الذي يبدو كـمكتبة تضم جميع العمليات التي يقوم المطورين بتنفيذها في العادة ويساعد ذلك على كشف أي برنامج يقوم بعمل عمليات مختلفة عن تلك الموجودة في المكتبة.

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

ماذا عن إصدارات أندرويد الأقدم من 8؟

 ثغرة StrandHogg v.2.0

حوالي 22% من الأجهزة المزوّدة بأندرويد تعمل على إصدارات أقدم من 8، الرقم ليس صغيرًا لتجاهله ومع ذلك فإن جوجل تتجاهل هذه الإصدارات تمامًا حيث أن التحديثات الأمنية التي ترسلها لا تصل إليهم أي تعتبر جميع هذه النسخ هي بيئة خصبة لانتشار ثغرة StrandHogg 2.0 ولا يمكن القيام بشيء سوى التأكد من تثبيت التطبيقات من المتاجر الآمنة طبعًا، يمكن أيضًا تركيب رومات مطبوخة بإصدارات أندرويد أعلى مع نسخ أمنية من شهر مايو 2020 وما فوق.

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

0

شاركنا رأيك حول "تعرف على ثغرة StrandHogg v.2.0 التي تهدد 95% من أجهزة أندرويد حول العالم، كيف تصرفت جوجل اتجاه ذلك؟"