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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-20687-AppleJPEGDriver-UAF — CVE-2026-20687: ثغرة انتهاء المهلة في startDecoder في AppleJPEGDriver تؤدي إلى استخدام بعد التحرير (UAF) — ثغرة في نواة iOS/macOS تؤدي إلى ذعر مؤجل (A19 Pro، iOS 26.3 RC) | Kitploit
أدوات/GitHubGitHub/0xjohnnydev/cve-2026-20687-applejpegdriver-uaf
أمان iOSتحليل الثغرات الأمنيةالاستغلالأمن الجوالاستغلال الملفات الثنائية
GitHub0xjohnnydev/cve-2026-20687-applejpegdriver-uaf

CVE-2026-20687-AppleJPEGDriver-UAF

CVE-2026-20687: ثغرة انتهاء المهلة في startDecoder في AppleJPEGDriver تؤدي إلى استخدام بعد التحرير (UAF) — ثغرة في نواة iOS/macOS تؤدي إلى ذعر مؤجل (A19 Pro، iOS 26.3 RC)

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
عرض المستودع
الموقع الإلكتروني
28838منذ 2 أشهرتمت المراجعة من قبل Kitploit
مشاركة

CVE-2026-20687: استخدام الذاكرة بعد تحريرها (UAF) بسبب انتهاء المهلة في startDecoder() ضمن AppleJPEGDriver (panic مؤجّل)

CVE-2026-20687 | المؤلف: Johnny Franks (@0xjohnny)

المكوّن: النواة (Kernel)

التأثير: قد يتمكن تطبيق من التسبب في إنهاء غير متوقع للنظام أو الكتابة في ذاكرة النواة

الوصف: تمت معالجة مشكلة استخدام الذاكرة بعد تحريرها (use after free) عبر تحسين إدارة الذاكرة.

— محتوى أمان Apple، iOS 26.4 وiPadOS 26.4

سيؤدي هذا إلى kernel panic على جهازك. احفظ عملك.

تم الاختبار على iOS 26.3 (23D125) على iPhone18,2 (iPhone 17 Pro Max، A19 Pro).

التشغيل (Trigger)

التشغيل المباشر:

  1. شغّل الـ PoC واضغط على Panic (يهيّئ المشغّل / يضع العمل غير المتزامن في قائمة الانتظار).
  2. ثم افتح Camera (وهذا يؤدي بشكل موثوق إلى فك ترميز JPEG متزامن + انتهاء مهلة على البنية المتأثرة).
  3. مسار انتهاء المهلة يحرّر الطلب لكنه يترك مؤشر عقدة قائمة الانتظار المضمّنة فيه داخل متجه (vector) الخاص بكل codec.
  4. يؤدي اجتياز لاحق لقائمة الانتظار إلى إلغاء الإشارة إلى العقدة القديمة (stale node) فيحدث kernel panic (خطأ فحص وسم MTE).
// PoC: primes the driver; panic is usually deferred until Camera is opened.
IOServiceOpen("AppleJPEGDriver");
for (int i = 0; i < N; i++) {
  startDecoder_async();                   // queue_io_gated(): vector.push(req + 0x78)
}
IOServiceClose(conn);

// Later, opening Camera triggers:
startDecoder_sync();
  queue_io_gated(): vector.push(req + 0x78);
  wait(10s) -> TIMEOUT;
  pool_free(req);                         // BUG: does NOT dequeue (req + 0x78)

// Later still (finish_io_gated):
fullSpeedRequestExist():
  node_ptr = vector[i];                   // stale: node_ptr == (freed req + 0x78)
  req2 = *(node_ptr + 0x8);              // UAF read of req+0x80 -> MTE tag fault -> panic

البناء والتشغيل

  1. افتح ios-app/Test.xcodeproj في Xcode
  2. اختر جهاز iOS الخاص بك (المحاكي غير مفيد)
  3. قم بالبناء والتشغيل
  4. اضغط على زر Panic
  5. افتح تطبيق Camera لتفعيل الـ panic المؤجّل
تنزيل الأداة