المقرر نشرها عام 2020
مشروع سراب: التطبيقات "الذكية" تكشف هويّتك
بسم الله
فضّلت أن أكتب عن هذا المشروع الشخصي باللغة العربية؛ لكون أكثر الضحايا هُم ممّن يتحدّثونها، ولأن محتوى الأمن الإلكتروني العربي قليل.
المهم ...
المقدّمة:
خلال الآونة الأخيرة، وبسبب الأوضاح الصحية في العالم، لجأ الكثير منّا إلى الاعتماد شبه المُطلق على الخدمات الإلكترونية (خاصة التطبيقات الذكية) لتوفير حاجيّاته، ولإنجاز مُعاملاته اليوميّة. البقالة إلكترونية، وأمازون بمثابة السوق المركزي.
لذلك، لجأت الكثير من الشركات المحلية والأجنبية لطرح تطبيقاتها بأسرع وقت ممكن؛ لاستغلال الفرصة ... ولكن في العجلة الندامة.
للأسف، الكثير من هذه الشركات طرحت تطبيقاتها على عجل ضاربة بخصوصية المستخدم (وحساسية معلوماته) عرض الحائط.
معادلة الدخول السريع:
مُبرمج مبتدئ + ميزانية بخسة + وقت قصير = تطبيق غير آمن
مشروع سراب فكرة قديمة، ولكن الوضع الحالي أجبرني على تنفيذها ...
هدف المشروع:
أتمتة أداة اختراق لدراسة أمان التطبيقات الذكيّة المحلّية والأجنبيّة الأكثر استخدامًا في منطقتنا (الخليج)
انتبه:
من خلال تحليل الآلاف من التطبيقات، تم اكتشاف عدد ليس بالقليل من التطبيقات التي تسرّب معلومات المستخدمين الحساسة مثل:
1. اسم المستخدم وكلمة السر
2. الاسم الحقيقي للمستخدم
3. الصور الشخصية
4. رقم الهاتف
5. البريد الإلكتروني
6. المحادثات الخاصة (رسائل وصور)
7. المعاملات المالية
8. موقع المستخدم (العنوان أو موقع الـGPS بشكل دقيق)
9. معلومات هاتف المُستخدم
بعض المعلومات الحساسة في هذه التطبيقات، يمكن استغلالها لتحوير أو تدمير قواعد البيانات للتسبّب بخسائر ماليّة جسيمة للمستخدم والشركة المطوّرة.
هل هذا المشروع مُخالف للقانون (غير أخلاقي)؟
إجابة قصيرة: لا
إجابة أكثر إطالة: يُعتبر هذا النوع من "الاختراق" عملاً أخلاقيًا، ويقوم الكثير من خُبراء الأمن الإلكتروني باختبار اختراق المواقع، الألعاب، والتطبيقات الذكيّة لاكتشاف الثغرات الخطيرة وتبليغ مطوّريها.
الهدف الأسمى هو "اكتشاف ثغرة في التطبيق وإبلاغ المُبرمج لإصلاحها قبل أن يقوم مخترق لا أخلاقي باستغلالها للسرقة، الابتزاز، أو التلصّص"
التفاصيل:
أصبح اختبار اختراق التطبيقات الذكية أمرًا معروفًا، مثال بسيط:
1. حمّل أي تطبيق Android بصيغة apk
2. حوّل صيغة من apk إلى zip
3. قُم بفك ضغط الملف
4. ستجد ملف اسمه classes.dex، يمكنك تحليله باستخدام أداة Dex2jar
5. بعدها يمكنك فتح الملف الناتج من الخطوة 4، ببرنامج JD-GUI
6. يمكنك الآن مشاهدة الأسطر البرمجية المُستخدمة في التطبيق، وتحليلها لاكتشاف الثغرات
أصبح هذا النوع من الاختراق أمرًا روتينيًا ... ومملاً، لذلك أحببت أن أطوّر البرنامج التالي بمواصفات أكبر...
مشروع سراب:
عادةً، إصدارات التطبيق الواحد (Android و iOS) تتشابه في الأكواد البرمجية ويستخدما نفس قاعدة البيانات؛ لذلك تم استهداف نسخة Android من كل تطبيق مُستهدف.
مشروع سراب يحتوي على التالي:
· قاعدة بيانات مُسطّحة تحتوي على أسماء آلاف التطبيقات المُستهدفة
· أداة تقوم بتنزيل التطبيقات المُستخدمة من منصةGoogle Play مباشرة
· أداة تفك التطبيقات بشكل تلقائي مع جميع الملفات المستخدمة (مثل الخطوة 2 إلى الخطوة 6)
· أداة تحليل لمعرفة ما نوع قاعدة البيانات المُستخدمة في كل تطبيق، وأي روابط وأسرار مخبئة في الأسطر البرمجية
· أداة لنسخ الملفات السرّية والمنتقاة بعناية مثل المفاتيح والشهادات الرقمية
· أداة لتحميل قواعد البيانات المفتوحة، خاصةً Firebase
· موقع لمتابعة حالة كل تطبيق (هل تم تحميله؟ هل تم فك تشفيره؟ هل تم نسخ ملفاته السرية؟ هل تم تحميل قاعدة بياناته؟)
كل الأدوات السابقة تقوم بتنسيق عملها مع بعضها البعض لاختبار كل تطبيق بشكل تلقائي وبدون تدخّل بشري.
تحليل البيانات:
· مدة تنزيل وتحليل التطبيق الواحد تعتمد على حجمه، سرعة الإنترنت، والمعالج/الذاكرة العشوائية .. المعدّل تقريبًا 21 ثانية.
· باستخدام الإعدادات المرنة وبدون ضغط، يُمكن تحليل أكثر من 4000 تطبيق في يوم واحد.
· حسب تحليل التطبيقات المستهدفة في هذا المشروع، يمكن إكتشاف أكثر من 1 جيجابايت من المعلومات النصّية المسربة في يوم واحد!
· بعض المعلومات الحساسة في هذه التطبيقات، يمكن استغلالها لتحوير أو تدمير قواعد البيانات، أي التسبّب بخسائر ماليّة جسيمة للمستخدم والشركة المطوّرة.
أخلاقيًا:
تم تبليغ مطوّري التطبيقات "الذكيّة" المُصابة، البعض يتجاوب بحل المشكلة، والبعض يتجاهلها.
سيتم رفع قائمة بالتطبيقات المصابة للجهات الحكومية المختصة بحماية المستخدم، أتمنى تعويض المستخدمين عن كل معلومة قد تم تسريبها عن إهمال.
ملاحظة: