Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
AppEnumGuard — CVE-2025-31207 التخفيف ومختبر معزول لعمليات كسر الحماية rootless وrootHide على iOS 15–18.4.1. | Kitploit
أدوات/GitHubGitHub/kolbicz/appenumguard
أدوات دفاعيةأمان iOSتحليل الثغرات الأمنيةأمن الجوالالخصوصية
GitHubkolbicz/appenumguard

AppEnumGuard

CVE-2025-31207 التخفيف ومختبر معزول لعمليات كسر الحماية rootless وrootHide على iOS 15–18.4.1.

عرض المستودع
5261منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

AppEnumGuard

AppEnumGuard هو تعديل دفاعي للقناة الجانبية لتعداد التطبيقات المثبّتة المتتبَّعة باسم CVE-2025-31207. يدعم بيئات كسر الحماية التقليدية rootless وrootHide على iOS 15.0–18.4.1. يحتوي المستودع أيضًا على تطبيق اختبار iOS عادي محصور في بيئة معزولة (sandboxed) يوضّح النتيجة القابلة للاستغلال ويتحقق من التخفيف.

CVE-2025-31207

CVE-2025-31207 هو ثغرة إفصاح عن المعلومات في منطق إطلاق التطبيقات FrontBoard الخاص بشركة Apple. يمكن لتطبيق محصور في بيئة معزولة إرسال معرّفات حزم (bundle identifiers) عشوائية عبر دالة إطلاق خاصة في SpringBoardServices والتمييز بين التطبيقات المثبّتة والتطبيقات المفقودة باستخدام رموز إرجاع مختلفة. قد يكشف هذا عن معلومات خاصة حول التطبيقات التي ثبّتها المستخدم، بما في ذلك تطبيقات الخدمات المصرفية والمراسلة والأمان والتحميل الجانبي والتطبيقات المرتبطة بكسر الحماية.

تصف Apple المشكلة بأنها مشكلة منطقية قد تسمح لتطبيق بتعداد التطبيقات المثبّتة. عالجت Apple المشكلة بفحوصات محسّنة في iOS وiPadOS 18.5. وبالتالي، تظل الأنظمة الأقدم من iOS 18.5 متأثرة على مستوى نظام التشغيل.

التوافق

المكوّنالهدف المدعوم
iOS15.0–18.4.1
كسر الحمايةأي بيئة كسر حماية تقليدية rootless أو rootHide
معمارية Bootstrap/الحزمةrootless / iphoneos-arm64؛ rootHide / iphoneos-arm64e
معمارية الجهازarm64 وarm64e (rootless)؛ arm64e (rootHide)
الحزمةثبّت الحزمة المطابقة لـ bootstrap الخاص بالجهاز

يستخدم البناء الافتراضي Theos التقليدي rootless ويتضمن شرائح arm64 وarm64e. يُبنى متغيّر rootHide باستخدام rootHide Theos ويحتوي على مسارات محمّل .jbroot المطلوبة لـ rootHide. تعلن كلتا الحزمتين عن firmware (>= 15.0) و firmware (<< 18.5): التخفيف غير ضروري على iOS 18.5 والأحدث، حيث عالجت Apple ثغرة CVE-2025-31207.

تم التحقق من تعديل v1.1 الخاص بجانب SpringBoard وتطبيق الاختبار المحصور في بيئة معزولة معًا على iOS 17.3.1 build 21D61 مع تعطيل الحقن لتطبيق الاختبار. اكتشف تطبيق الاختبار التسريب مع إزالة التعديل وأعاد نتيجة نجاح خضراء بعد تثبيت التعديل.

كيف يعمل

تستدعي البدائية المنشورة دالة SpringBoardServices الخاصة SBSLaunchApplicationWithIdentifierAndURLAndLaunchOptions. على نظام قابل للاستغلال، تُرجع أخطاءً مختلفة لتطبيق مثبّت وتطبيق مفقود:

  • 9: الهدف موجود، لكن الإطلاق مرفوض بموجب السياسة
  • 7: الهدف غير موجود

يحقن AppEnumGuard 1.1 في SpringBoard فقط ويعترض طريقة التحقق من الثقة الشائعة FBSystemService. عندما يُرجع طلب إطلاق غير مصرّح به خطأ سياسة الأمان 3 في FBSOpenApplicationErrorDomain، يغيّره التعديل إلى خطأ التطبيق غير موجود 4. ثم تُرجع واجهة SpringBoardServices الخارجية 7 لكلٍّ من الأهداف المثبّتة والمفقودة.

يتم التحقق من عدد وسائط الطريقة الخاصة وترميز نوع Objective-C قبل تثبيت الاعتراض. إذا غيّرت Apple واجهة ABI، يفشل AppEnumGuard بشكل مفتوح بدلًا من اعتراض طريقة SpringBoard غير معروفة.

التغيير عن 1.0

اعترض الإصدار 1.0 دالة SpringBoardServices داخل كل تطبيق UIKit. كان يعمل، لكنه تطلّب الحقن في كل تطبيق تتم حمايته؛ فالتطبيق الذي يعطّل الحقن أو يكتشفه كان يمكنه تجاوز التخفيف. ينقل الإصدار 1.1 التنفيذ إلى SpringBoard، بحيث يحمي اعتراض مركزي واحد المتصلين دون حقن AppEnumGuard في عملياتهم.

تنزيلات الإصدار

يمكن بناء الإصدار 1.2 لأيٍّ من الـ bootstrap:

  • AppEnumGuard_1.2_rootless_iphoneos-arm64.deb — تعديل rootless تقليدي
  • AppEnumGuard_1.2_roothide_iphoneos-arm64e.deb — تعديل rootHide
  • AppEnumGuardTester_1.2_sandboxed.ipa — تطبيق تحقق محصور في بيئة معزولة مع أيقونة

التثبيت والتحقق

  1. ثبّت ملف .deb المطابق لـ bootstrap الجذري أو rootHide وأعد تشغيل SpringBoard.
  2. ثبّت ملف IPA الخاص بالاختبار باستخدام توقيع مطوّر/تحميل جانبي عادي.
  3. اترك حقن AppEnumGuard معطّلًا لـ AppEnum Test؛ الإصدار v1.1 يحميه من SpringBoard.
  4. اضغط على أيقونة تطبيق تعرف أنه مثبّت. تتوفر إعدادات مسبقة لـ WhatsApp وYouTube وSpotify وDopamine وTrollStore وReddit.

النتائج المتوقعة مع تثبيت الهدف المحدد:

الحالةالهدفالمفقودنتيجة الاختبار
التعديل غير موجود97أحمر / FAIL
التعديل نشط77أخضر / PASS

يُظهر الاختبار اللون الأحمر فقط للنتيجة المعروفة القابلة للاستغلال 9 / 7 واللون الأخضر لكل نتيجة رقمية أخرى؛ وتشير النتيجة الحمراء إلى أن AppEnumGuard غير مثبّت. النتائج الخضراء موسومة بـ App not detected. أما النتيجة القابلة للاستغلال 9 / 7 فموسومة بـ App detected وAppEnumGuard missing. اختر فقط تطبيقًا تعرف أنه مثبّت: فالنتيجة 7 / 7 وحدها لا يمكنها التمييز بين تخفيف فعّال وهدف غير موجود.

يتضمن الاختبار أيضًا وصفًا موجزًا للمشروع ورابطًا قابلًا للنقر إلى مستودع GitHub هذا.

أعاد اختبار الجهاز إنتاج كلتا الحالتين مع تعطيل حقن الاختبار: فقد أنتجت إزالة التعديل النتيجة الحمراء 9 / 7، بينما أنتج تثبيت الإصدار v1.1 النتيجة الخضراء 7 / 7.

بناء التعديل

مع Theos القياسي، يكون البناء الافتراضي جذريًا تقليديًا:

cd Tweak
make clean package FINALPACKAGE=1

بالنسبة إلى rootHide، ثبّت rootHide Theos وشغّل:

cd Tweak
THEOS=/path/to/theos-roothide \
  make clean package FINALPACKAGE=1 THEOS_PACKAGE_SCHEME=roothide

بناء تطبيق IPA للاختبار

يُجمَّع تطبيق الاختبار باستخدام iPhoneOS SDK الخاص بـ Xcode، ولا يتطلب كسر الحماية (jailbreak) أو أي استحقاقات مرتفعة الصلاحيات:

./scripts/build-tester-ipa.sh

يُوضع ملف IPA الناتج في dist/. وهو موقَّع توقيعًا عشوائيًا (ad-hoc) بحيث يمكن لبرنامج التثبيت إعادة توقيعه بهوية تطوير عادية. لا تمنحه platform-application أو com.apple.private.security.no-sandbox، لأن الاختبار مخصص تحديدًا للتشغيل من صندوق حماية تطبيق عادي.

النطاق والقيود

  • هذا تخفيف في مساحة المستخدم للبدائية المنشورة في SpringBoardServices، وليس تصحيح FrontBoard الكامل من Apple.
  • لا يتطلب الإصدار 1.1 الحقن في التطبيقات المحمية. سيؤدي تعطيل الحقن عالميًا أو لـ SpringBoard نفسه إلى تعطيل التخفيف.
  • تم تأكيد التنفيذ من جانب الخادم على iOS 17.3.1 إصدار 21D61. على الإصدارات المدعومة الأخرى، يثبّت الـ tweak خطافه (hook) فقط عندما يمتلك المحدِّد الخاص (private selector) واجهة ABI المتوقعة والمُتحقَّق منها وقت التشغيل.
  • لا يكون اختبار 7 / 7 ذا معنى إلا عندما يكون التطبيق الهدف معروفًا بأنه مثبَّت.
  • يستدعي المُختبِر عمدًا واجهة برمجة تطبيقات خاصة غير موثّقة، وهو غير مناسب للتقديم إلى App Store.

المراجع

  • محتوى الأمان في Apple iOS 18.5
  • NVD: CVE-2025-31207
  • إثبات المفهوم العام الأصلي لـ SpringBoardServices
  • وثائق مطوّري rootHide

الترخيص

MIT

تنزيل الأداة