التقييم الأمني واختبار اختراق تطبيقات الجوال
باستخدام منهجيتَي OWASP MASTG وMASVS، نحدّد ونقيّم الثغرات الأمنية في تطبيقات Android وiOS، بما في ذلك التخزين غير الآمن للبيانات والتشفير الضعيف ومخاطر الهندسة العكسية والعيوب الأمنية الخاصة بالمنصة.
خدمات التقييم الأمني واختبار اختراق تطبيقات الجوال
اختَر الخدمة التي تناسب منصة مؤسستك واحتياجاتها
تغطية كاملة لـOWASP Mobile Top 10 (2024)
تغطّي اختباراتنا جميع مخاطر OWASP العشرة الكبرى لأمن تطبيقات الجوال
الاستخدام غير السليم لبيانات الاعتماد
سلسلة توريد غير كافية
مصادقة غير آمنة
إدخال/إخراج غير كافٍ
اتصالات غير آمنة
ضوابط خصوصية غير كافية
حماية غير كافية للملف الثنائي
سوء الإعداد الأمني
تخزين غير آمن للبيانات
تشفير غير كافٍ
لماذا يهمّ أمن تطبيقات الجوال؟
تملك تطبيقات الجوال وصولاً مباشراً إلى البيانات الحسّاسة وقدرات الجهاز
تصل تطبيقات الجوال إلى البيانات الحسّاسة والكاميرا والميكروفون وخدمات الموقع. ويمكن لثغرة واحدة أن تكشف جميع بيانات المستخدم وقدرات الجهاز.
يمكن تفكيك تطبيقات الجوال لاستخراج مفاتيح API وبيانات الاعتماد المضمّنة في الكود ومنطق العمل. وبإمكان المهاجمين إنشاء نسخ معدّلة أو استغلال الثغرات.
يأتمن المستخدمون تطبيقات الجوال على بياناتهم الشخصية والمالية الحسّاسة. وتُلحق الاختراقات الأمنية الضرر بالسمعة وتنتهك لوائح الخصوصية مثل GDPR.
تفرض متاجر التطبيقات معايير أمنية متزايدة. وقد تؤدّي الثغرات الأمنية إلى إزالة التطبيق، بما يؤثّر في استمرارية الأعمال.
تغطية منصات الجوال
اختبارات متخصّصة لكلتا منصتَي الجوال الرئيسيتين
- تحليل APK وDEX
- اختبار Root Detection
- تجاوز Certificate Pinning
- تقييم نظام الأذونات
- تحليل Shared Preferences
- أمن Content Provider
- اختبار أمن Intent
- تقييم ProGuard/R8
- تحليل IPA وMach-O
- اختبار Jailbreak Detection
- تجاوز SSL Pinning
- تقييم Keychain Security
- تحليل Plist وCore Data
- أمن URL Schemes
- اختبار App Transport Security
- تقييم Code Signing
منهجيات متخصّصة للجوال
نعتمد أطر OWASP المعترف بها عالمياً لتقييم أمن تطبيقات الجوال
دليل شامل لاختبار أمن تطبيقات الجوال (MAS Testing Guide)
للاختبار الشامل للجوالمعيار التحقق من أمن تطبيقات الجوال (MAS Verification Standard)
للتحقّق الأمنيأبرز عشرة مخاطر أمنية لتطبيقات الجوال (2024)
لتحديد المخاطر الكبرىأبرز عشرة مخاطر API لاتصالات الجوال بالخادم
لأمن واجهات API في الجوالماذا نختبر؟
تغطية شاملة لجميع جوانب أمن تطبيقات الجوال استناداً إلى OWASP MASTG
- التخزين في SQLite
- Shared Preferences/Keychain
- الملفات المؤقتة والذاكرة المؤقتة
- النسخ الاحتياطية للتطبيق
- الحافظة والسجلّات
- خوارزميات التشفير
- إدارة المفاتيح
- Random Number Generation
- Certificate Validation
- TLS Implementation
- Biometric Authentication
- Session Management
- Token Security
- OAuth Implementation
- Access Control
- TLS/SSL Configuration
- Certificate Pinning
- API Security
- WebSocket Security
- Network Traffic Analysis
- IPC Mechanisms
- Deep Links/URL Schemes
- WebView Security
- Custom Permissions
- Broadcast Receivers
- Obfuscation Assessment
- Tampering Detection
- Debugging Protection
- Emulator Detection
- Runtime Integrity
على أيّ نسخة وأيّ جهاز يُجرى الاختبار؟
يحدّد هذا الاختيار أيّ جزء من التطبيق يمكن فحصه أصلاً.
أقرب صورة للتعرّض الحقيقي، والسبيل الوحيد لرؤية ما تكشفه النسخة المنشورة. التعتيم والـpinning يقفان في الطريق، وهذا هو المقصود بالضبط.
يوقف Certificate pinning الوكيل (proxy)، فيوقف بذلك اختبار كل ما خلفه. ونسخة مع تخفيف الـpinning لجزء من العمل تعني اختبار حركة البيانات وواجهة API بدلاً من الـpinning نفسه.
للتأكّد مما إذا كانت هناك عملية تحقّق أصلاً، وللمفاتيح ونقاط النهاية التي تنتهي داخل النسخة دون أن يقصد أحد ذلك.
نطاق التقييم وما نحتاجه منكم
تعتمد جودة النتيجة على جاهزية هذه الأمور القليلة أكثر من أي شيء آخر.
ملف APK أو IPA مع وسيلة لتثبيته خارج المتجر. وبالنسبة إلى iOS يعني ذلك معرّفات الأجهزة مسبقاً، وهو ما يستغرق في الترتيب وقتاً أطول مما تتوقعه الفِرق.
أخطر النتائج في تطبيق الجوال تكون في واجهة API التي خلفه، ولا يمكن اختبار التحكم في الوصول بين مستخدمين بحساب واحد.
حدّد ذلك صراحةً. فالتقييم الذي يتوقّف عند حدود التطبيق نفسه يختبر النصف الأصغر من المشكلة، لأن القرارات المهمّة تُتّخذ على الخادم.
تحتاج اختبارات التخزين والمرونة والتفاعل مع المنصة إلى جهاز مُجذَّر (root) أو مكسور الحماية (jailbreak). والمحاكي يغطّي جزءاً منها، لا كلّها أبداً.
شخص مسؤول للتواصل في كلا الطرفين. فالمفتاح المضمَّن في نسخة منشورة يُبلَّغ عنه يوم العثور عليه، لا في التقرير النهائي.
كيف تُحدَّد شدّة كل نتيجة
رقم لا منهجية خلفه لا يساعد أحداً على تحديد ما يُعالَج أولاً.
تُسجَّل كل نتيجة بمعيار CVSS v3.1، فتتوفّر لغة مشتركة مع مهندسيكم ومع الأدوات التي تستخدمونها بالفعل.
الضعف الذي يتطلّب وصولاً مادياً إلى جهاز غير مقفل ليس كالضعف الذي يعمل عبر الشبكة. كلاهما يُبلَّغ عنه، لكنهما لا يُصنَّفان في المرتبة نفسها.
تأتي كل نتيجة مع الخطوات وحالة الجهاز والنسخة التي عُثر عليها فيها. وما لا يمكن إعادة إنتاجه لا يُبلَّغ عنه كنتيجة مؤكَّدة.
يقترح التقرير تسلسلاً، ويبيّن أيّ البنود يحتاج إلى إصدار جديد وأيّها يمكن معالجته على الخادم دون إطلاق تحديث.
عمليتنا
نهجنا المنظَّم لتقييم أمن تطبيقات الجوال
نحلّل الملف الثنائي للتطبيق، ونفكّك الكود، ونراجع الأسرار المضمّنة فيه، ونحدّد الثغرات المحتملة دون تشغيل التطبيق.
تحليل في زمن التشغيل يشمل اعتراض حركة البيانات والاختبار المعتمد على الـhooks والمراقبة الآنية لسلوك التطبيق على أجهزة حقيقية.
اختبار شامل لنقاط نهاية API الخاصة بالجوال بحثاً عن تجاوز المصادقة وثغرات IDOR والحقن وعيوب منطق العمل.
تقرير مفصّل مع درجات CVSS ومعالجة خاصة بكل منصة ونماذج من الكود وإعادة اختبار مجانية بعد تطبيق الإصلاحات.
مخرجات المشروع
تقارير شاملة وقابلة للتنفيذ للفِرق التقنية والإدارية
الملخّص التنفيذي
ما الذي جرى اختباره، وما الذي عُثر عليه، وماذا تعني هذه النتائج للأعمال، بلغة يستطيع القارئ غير التقني أن يتّخذ قراره بناءً عليها.
التقرير التقني
كل نتيجة مع درجة CVSS v3.1، والخطوات التي تُعيد إنتاجها، وإصدار الجهاز وحالته الذي رُصدت عليه.
دليل المعالجة
لكل نتيجة حلٌّ محدّد لنفس المنصة، مع تمييز ما يحتاج إلى إصدار جديد عمّا يُعالَج على الخادم.
إعادة اختبار مجانية
بعد المعالجة، تُختبر كل نتيجة مجدداً فإمّا يُؤكَّد إغلاقها أو يُعاد فتحها مع توضيح ما لا يزال قابلاً للاستغلال.
الأسئلة الشائعة
ليس للتقييم القياسي. نعمل انطلاقاً من النسخة المنشورة، وهي ما يملكه المهاجم. ويصبح الكود المصدري مفيداً للتأكّد مما إذا كانت هناك عملية تحقّق أصلاً بدلاً من استنتاجها من السلوك، ولإيجاد المفاتيح ونقاط النهاية التي انتهت داخل النسخة دون أن يقصد أحد ذلك.
يؤدّي الـpinning وظيفته حين يوقف الوكيل (proxy) لدينا، ونحن نختبر أنه يفعل ذلك. لكن ما دام قائماً، لا يمكن فحص أي شيء خلفه: حركة البيانات وواجهة API وقرارات التخويل. لذا يُنفَّذ جزء من العمل على نسخة مع تخفيف الـpinning، وتُختبر النسخة المنشورة على حدة للتأكّد من الـpinning نفسه.
جزئياً. المحاكي مناسب لحركة البيانات ولكثير من المنطق. لكنه لا يكفي لسلوك المنصة، ولتخزين المفاتيح المدعوم بالعتاد، ولكيفية تصرّف التطبيق على جهاز مُجذَّر (root) أو مكسور الحماية (jailbreak)، وهو تحديداً الوضع الذي وُجدت ضوابط المرونة من أجله.
تدخل ضمن النطاق باعتبارها جزءاً من تطبيقكم، لأن مستخدميكم لا يميّزون بينها وبينه. ننظر فيما تجمعه، وإلى أين ترسله، والأذونات التي تجلبها، وما إذا كان أيٌّ منها قديماً بما يكفي لحمل مشكلات معروفة. أمّا ما لا نفعله فهو اختبار منتَج المورّد نفسه.
نختبر جميع أنواع تطبيقات الجوال، بما في ذلك تطبيقات Android الأصيلة (Java/Kotlin)، وتطبيقات iOS الأصيلة (Swift/Objective-C)، والتطبيقات متعددة المنصات (React Native وFlutter وXamarin)، والتطبيقات الهجينة (Cordova وIonic)، وتطبيقات الويب التقدّمية (PWA). كما نختبر واجهات API الخلفية المرتبطة وعمليات التكامل الخاصة بالجوال.
دليل OWASP لاختبار أمن تطبيقات الجوال (MASTG) هو منهجية شاملة لاختبار أمن تطبيقات الجوال. يوفّر حالات اختبار مفصّلة تغطّي تخزين البيانات والتشفير والمصادقة واتصالات الشبكة والتفاعل مع المنصة وجودة الكود. ونتّبع MASTG بصورة منهجية لضمان تغطية شاملة لجميع جوانب أمن الجوال.
MASTG (دليل اختبار أمن تطبيقات الجوال) هو دليل «كيفية الاختبار» بإجراءات وتقنيات اختبار مفصّلة. أمّا MASVS (معيار التحقق من أمن تطبيقات الجوال) فهو معيار «ما الذي يجب التحقق منه» الذي يحدّد المتطلّبات الأمنية عند مستويات مختلفة (L1 وL2). نستخدم MASTG لمنهجية الاختبار وMASVS للتحقق الأمني والامتثال.
نعم، لدينا فِرق مخصّصة لاختبار أمن كلٍّ من Android وiOS. ولكل منصة اعتبارات أمنية فريدة؛ فاختبار Android يشمل تحليل APK وتجاوز كشف الـroot وأمن Content Provider، بينما يغطّي اختبار iOS تحليل IPA وتجاوز كشف الـjailbreak وأمن Keychain وApp Transport Security.
يعتمد الجدول الزمني على تعقيد التطبيق ونطاقه. يستغرق التقييم المعتاد لمنصة واحدة أسبوعاً إلى أسبوعين. وتستغرق تقييمات المنصتين (Android + iOS) أسبوعين إلى ثلاثة. وقد تستغرق التطبيقات المعقّدة ذات واجهات API الخلفية الواسعة ثلاثة إلى أربعة أسابيع. ونقدّم تقديراً مفصّلاً للنطاق والجدول الزمني خلال الاستشارة الأولية.
نستخدم أدوات رائدة في المجال، منها Frida للمعالجة الديناميكية، وObjection للتلاعب في زمن التشغيل، وMobSF للتحليل الساكن، وBurp Suite لاختبار API، وjadx/Hopper للتفكيك، وأدوات خاصة بكل منصة مثل drozer (لـAndroid) وclass-dump/cycript (لـiOS). كما يطوّر فريقنا نصوصاً برمجية مخصّصة لسيناريوهات اختبار محدّدة.
نعم، يمتلك فريقنا خبرة في تجاوز مختلف آليات مكافحة العبث وكشف الـroot/jailbreak. نقيّم فعالية هذه الحمايات ونحاول تجاوزها بتقنيات مثل hooking عبر Frida وترقيع الكود والنصوص البرمجية المخصّصة. كما نقيّم قوة التعتيم (obfuscation) وتدابير مكافحة التنقيح.
تتسلّمون: ملخّصاً تنفيذياً للإدارة، وتقريراً تقنياً بتفاصيل الثغرات ودرجات CVSS، وتوثيق إثبات مفهوم (Proof-of-Concept) خاصاً بكل منصة، ودليل معالجة بنماذج كود خاصة بكل منصة، ومصفوفة مخاطر مرتَّبة حسب الأثر على الأعمال، وربطاً بامتثال MASVS. إضافةً إلى جلسة شرح للتقرير وإعادة اختبار مجانية.
نعم، نقدّم حزم تقييم مجمّعة للجوال + API. تعتمد تطبيقات الجوال اعتماداً كبيراً على واجهات API الخلفية، وتوجد كثير من الثغرات الحرجة في طبقة API. يغطّي اختبارنا المصادقة والتخويل وثغرات IDOR وهجمات الحقن وتحديد المعدّل وعيوب منطق العمل في واجهة API التي تخدم تطبيق الجوال.
تعتمد الكلفة على عدة عوامل: المنصات المختبَرة (Android أو iOS أو كلاهما)، وتعقيد التطبيق، والحاجة إلى اختبار واجهة API الخلفية، ومستوى تحليل التعتيم/الحماية، ومتطلّبات الامتثال. ويبدأ التقييم الأساسي لمنصة واحدة من نقطة سعرية مختلفة عن الاختبار الشامل للمنصتين + API. تواصلوا معنا للحصول على استشارة مجانية وعرض سعر دقيق.