Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
iomfb-exploit — استغلال نواة iOS 14 لثغرة CVE-2021-30807 يستهدف IOMobileFramebuffer، مع تخصيص ذاكرة قابل للضبط لتطوير الجيلبريك على أجهزة A11+. | Kitploit
أدوات/GitHubGitHub/jsherman212/iomfb-exploit
أمان iOSتحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالأمن الجوالاستغلال الملفات الثنائية
GitHubjsherman212/iomfb-exploit

iomfb-exploit

استغلال نواة iOS 14 لثغرة CVE-2021-30807 يستهدف IOMobileFramebuffer، مع تخصيص ذاكرة قابل للضبط لتطوير الجيلبريك على أجهزة A11+.

عرض المستودع
1333015منذ 4 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

الشرح الكامل هنا: https://jsherman212.github.io/2021/11/28/popping_ios14_with_iomfb.html

استغلال لـ CVE-2021-30807. إذا كنت تريد حقًا بناء جيلبريك منه، فسيتطلب ضبطًا لجهازك وإصدار iOS لأنني لا أملك أي تسريب معلومات أستخدمه لهذا الغرض.

للضبط على A11 وما دونه، استخدم pongo لتحميل xnuspy وقم بالبناء باستخدام SAMPLING_MEMORY=1 make -B. سيفعّل هذا اختبارًا يجمع الذاكرة التي يعيدها kernel_memory_allocate، ويُرتب تلك المؤشرات، ثم يُخرج نطاقًا. سترى شيئًا مثل هذا:

root@kitploit:~
sample_kernel_map: 0xffffffe8ebe9c000 [0x10000 bytes from behind]
sample_kernel_map: to add to alloc_averager:
[0xffffffe8ce934000, 0xffffffe8ebf98000],

(فقط تجاهل التحذيرات التي يُخرجها)

المقصود هو تشغيل الاختبار بعد 30 ثانية من إقلاع الجهاز.

داخل alloc_averager.py توجد عدة عينات قمت بالفعل بتشغيلها لهواتفي. يحسب متوسط جميع متوسطات كل نطاق. أنشئ «قائمة عينات» لجهازك وأضف النطاق إليها. كرر الاختبار عدة مرات حتى تحصل على 5-10 إدخالات في تلك القائمة. سيُبلغ alloc_averager.py عن معدل نجاح للتخمين الذي يولّده بناءً على القائمة. إذا أعجبك معدل النجاح، خذ التخمين واستبدل به قيمة GUESSED_OSDATA_BUFFER_PTR في أعلى IOMobileFramebufferUserClient.c.

من المهم جدًا عدم تضمين القيم الشاذة في هذه القائمة. بعد تشغيل الاختبار عدة مرات، ستصادف على الأرجح نطاقًا يبرز عن بقية النطاقات التي لديك بالفعل.

ستحتاج إلى إيجاد الإزاحات الخاصة بجهازك/إصدارك لتشغيل هذا الاختبار.

أولًا، للعثور على kernel_memory_allocate، ما عليك سوى عمل مرجع متقاطع (xref) للنص kernel_memory_allocate: VM is not ready. عندما تحصل على الإزاحة، عيّن قيمة kma إليها داخل install_kernel_memory_alloc_hook.

ثانيًا، لعزل الاختبار عن التخصيصات الأخرى التي يقوم بها XNU، أختبر عنوان عودة محددًا. هذا العنوان موجود داخل OSData::initWithCapacity. يمكنك بسهولة العثور على جدول الدوال الافتراضية (vtable) لـ OSData عن طريق عمل xref للسلسلة "OSData". أول xref لتلك السلسلة سيكون في دالة تحتوي على xref إلى vtable الخاصة بـ OSData::MetaClass. مباشرة فوق ذلك الـ vtable يوجد vtable الخاص بـ OSData، وOSData::initWithCapacity عند +0x78.

بمجرد حصولك على OSData::initWithCapacity، ابحث عن تعليمة BL الوحيدة إلى kernel_memory_allocate وخذ إزاحة التعليمات التي تليها مباشرة. داخل kernel_hooks.c، استخدم تلك الإزاحة في جملة if الوحيدة داخل الدالة الوحيدة في ذلك الملف.

أجهزة A12+ ستحتاج إلى استخدام شيء مثل Correlium.

تنزيل الأداة