
iblessing هي مجموعة أدوات استغلال أمنية لنظام iOS، تتضمن بشكل رئيسي جمع معلومات التطبيق، التحليل الثابت والتحليل الديناميكي. يمكن استخدامها في الهندسة العكسية، تحليل الثنائيات واستكشاف الثغرات.
☠️ ██╗██████╗ ██╗ ███████╗███████╗███████╗██╗███╗ ██╗ ██████╗ ██║██╔══██╗██║ ██╔════╝██╔════╝██╔════╝██║████╗ ██║██╔════╝ ██║██████╔╝██║ █████╗ ███████╗███████╗██║██╔██╗ ██║██║ ███╗ ██║██╔══██╗██║ ██╔══╝ ╚════██║╚════██║██║██║╚██╗██║██║ ██║ ██║██████╔╝███████╗███████╗███████║███████║██║██║ ╚████║╚██████╔╝ ╚═╝╚═════╝ ╚══════╝╚══════╝╚══════╝╚══════╝╚═╝╚═╝ ╚═══╝ ╚═════╝
iblessing هي مجموعة أدوات لاختبار أمان iOS، وتشمل بشكل أساسي جمع معلومات التطبيق، التحليل الثابت والتحليل الديناميكي.iblessing مبنية على unicorn engine، capstone engine وkeystone engine.🔥 عبر المنصات: تم اختبارها على macOS و Ubuntu.
استخراج المعلومات الثابتة لتطبيقات iOS، بما في ذلك البيانات الوصفية، الروابط العميقة، عناوين URL، إلخ.
محلل Mach-O ومحاكي ربط رموز dyld
تحقيق وتحليل فئات Objective-C
ماسحات ضوئية تقوم بالتحليل الديناميكي لرمز تجميع arm64 وتجد معلومات أساسية أو أسطح هجوم
ماسحات ضوئية تستخدم unicorn لمحاكاة جزئية لتنفيذ كود Mach-O arm64 وإيجاد بعض الميزات
مولدات يمكنها توفير معالجة ثانوية لتقرير الماسح لبدء خادم استعلام، أو إنشاء سكريبت لـ IDA
ماسح xrefs فائق لـ objc_msgSend 😄
اختبارات
دعم ماسحات Android
سجلات التشخيص
بنية تحتية أكثر مرونة للماسحات لإضافات جديدة
في حال كنت بحاجة إلى دعم بخصوص iblessing أو أي شيء مرتبط بها، يمكنك:
⚠️⚠️⚠️ تتطلب الماسحات الثنائية 12 جيجابايت من مساحة الذاكرة الافتراضية لتحميل ملف mach-o، لكنها لن تستهلك الكثير. لذا يجب التأكد من أن الذاكرة الفعلية لجهاز العمل أكبر من 12 جيجابايت، أو التأكد من أن الذاكرة الافتراضية القابلة للتخصيص أكبر من 12 جيجابايت عبر آلية ملف المبادلة.
لبدء تجميع iblessing، يُرجى اتباع الخطوات أدناه:``` git clone --recursive -j4 https://github.com/Soulghost/iblessing cd iblessing ./compile-cmake.sh
## اختصارات
- [المفاهيم الأساسية](https://github.com/Soulghost/iblessing#basic-concepts)
- الماسحات الضوئية
- [مسح معلومات التطبيق](https://github.com/Soulghost/iblessing#scan-for-appinfos) ⚠️ غير متاح حاليًا على لينكس
- [مسح المراجع المتقاطعة للفئات](https://github.com/Soulghost/iblessing#scan-for-class-xrefs)
- [مسح جميع المراجع المتقاطعة لـ objc_msgSend](https://github.com/Soulghost/iblessing#scan-for-all-objc_msgsend-xrefs)
- [مسح أغلفة الرموز البسيطة](https://github.com/Soulghost/iblessing/blob/features/anti_wrapper/README.md#scan-for-symbol-wrappers)
- المولدات
- [إنشاء خادم استعلام المراجع المتقاطعة لـ objc_msgSend](https://github.com/Soulghost/iblessing#generate-objc_msgsend-xrefs-query-server)
- [إنشاء نصوص IDA للمراجع المتقاطعة لـ objc_msgSend](https://github.com/Soulghost/iblessing#generate-ida-scripts-for-objc_msgsend-xrefs)
- [إنشاء نصوص IDA لإعادة تسمية دوال objc الوظيفية وتعديل النموذج الأولي](https://github.com/Soulghost/iblessing/blob/features/anti_wrapper/README.md#genereate-ida-script-for-objc-runtime-function-rename-and-prototype-modification)
***إذا كان هناك أي أخطاء، يمكنك تجميع capstone و unicorn يدويًا، ثم سحب libcapstone.a و libunicorn.a إلى مجلد vendor/libs الخاص بمشروع Xcode.***
إذا تم تشغيل كل هذا بنجاح، يمكنك العثور على الملف الثنائي في مجلد build:```
> ls ./build
iblessing
> file ./build/iblessing
./build/iblessing: Mach-O 64-bit executable x86_64
$ iblessing -h
☠️
██╗██████╗ ██╗ ███████╗███████╗███████╗██╗███╗ ██╗ ██████╗
██║██╔══██╗██║ ██╔════╝██╔════╝██╔════╝██║████╗ ██║██╔════╝
██║██████╔╝██║ █████╗ ███████╗███████╗██║██╔██╗ ██║██║ ███╗
██║██╔══██╗██║ ██╔══╝ ╚════██║╚════██║██║██║╚██╗██║██║ ██║
██║██████╔╝███████╗███████╗███████║███████║██║██║ ╚████║╚██████╔╝
╚═╝╚═════╝ ╚══════╝╚══════╝╚══════╝╚══════╝╚═╝╚═╝ ╚═══╝ ╚═════╝
[] iblessing iOS Security Exploiting Toolkit Beta 0.1.1 (http://blog.asm.im) [] Author: Soulghost (高级页面仔) @ (https://github.com/Soulghost)