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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-65343-e7eb2ed — PoC لـ CVE-2026-65343، وهو قراءة خارج الحدود (OOB read) في نواة AppleKeyStore على iOS 26.6 تؤدي إلى تسريب مؤشرات النواة للتغلب على KASLR من تطبيق داخل بيئة معزولة (sandboxed app) عبر التقاط مقبض ACM باستخدام DYLD_INTERPOSE. | Kitploit
أدوات/GitHubGitHub/hidayat-tanjung/cve-2026-65343-e7eb2ed
أمان iOSتحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالاختبار اختراق تطبيقات الجوالالهندسة العكسيةأمن الجوالالأوراق والأبحاثاستغلال الملفات الثنائية

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
GitHubhidayat-tanjung/cve-2026-65343-e7eb2ed

CVE-2026-65343-e7eb2ed

PoC لـ CVE-2026-65343، وهو قراءة خارج الحدود (OOB read) في نواة AppleKeyStore على iOS 26.6 تؤدي إلى تسريب مؤشرات النواة للتغلب على KASLR من تطبيق داخل بيئة معزولة (sandboxed app) عبر التقاط مقبض ACM باستخدام DYLD_INTERPOSE.

عرض المستودع
منذ 16س 59دلم تتم المراجعة بعد
مشاركة

CVE-2026-65343 — قراءة خارج الحدود في AppleKeyStore (إفشال KASLR)

المكوّن: امتداد النواة AppleKeyStore — _LibSer_SEPControl_Deserialize
المتأثر: iOS / iPadOS 26.6 (23G71) وما قبله
تم إصلاحه في: iOS / iPadOS 26.6.1 (23G83)
النوع: قراءة خارج الحدود في إلغاء تسلسل رسالة تحكم SEP
التأثير: تسريب مؤشر النواة → إفشال KASLR من عملية معزولة (sandboxed) بدون entitlements (عبر التقاط مقبض ACM باستخدام DYLD_INTERPOSE)


الفضل

تم اكتشافه بواسطة: Drinor Selmanaj (Sentry)، Surya Narayan Kushwaha
(وفق Apple Security Advisory — iOS 26.6.1)


السبب الجذري

تنشر الدالة _LibSer_SEPControl_Deserialize في امتداد النواة AppleKeyStore زوج (payload_ptr, declared_length) من مخزن رسالة ACM (مدير بيانات الاعتماد) إلى مساحة المستخدم عبر ، .

copyout()
دون التحقق من أن declared_length ≤ remaining

من خلال تمرير declared_length = 0x800، ينسخ السائق ما يقارب 0x7E8 بايت بعد نهاية مخزن رسالة ACM في النواة — ليقرأ من تخصيصات كومة النواة المجاورة. تحتوي تلك المناطق المجاورة على مؤشرات النواة (0xfffffff0xxxxxxxx) التي يمكن استخدامها لحساب إزاحة KASLR.

root@kitploit:~
; _LibSer_SEPControl_Deserialize (affected path, 26.6 / 23G71)
ldr  w2, [acm_msg + declared_length_offset]  ; user-controlled 0x800
; NO check: w2 <= (acm_msg_end - payload_ptr) ← MISSING
bl   copyout                                  ; copies w2 bytes to userspace

التقاط مقبض ACM (DYLD_INTERPOSE)

يُحظر الاستدعاء المباشر لـ IOServiceOpen("AppleKeyStore") بواسطة الـ sandbox على التطبيقات المحمّلة جانبياً (sideloaded). ومع ذلك، يستدعي مسار توقيع المفاتيح في Secure Enclave ضمن Security.framework الدالة IOConnectCallMethod داخل العملية باستخدام مقبض جلسة ACM حقيقي.

يستخدم الـ PoC خطاف __DATA,__interpose (الذي يعمل عند تحميل dyld، قبل أن يصبح __DATA_CONST للقراءة فقط — إذ يُحظر fishhook على iOS 26 بفضل حماية DATA_CONST):

  1. تسليح علم التقاط interpose
  2. SecKeyCreateRandomKey(kSecAttrTokenIDSecureEnclave) → SecKeyCreateSignature() → يُطلق IOConnectCallMethod داخل العملية بمقبض ACM حقيقي
  3. التقاط (conn, handle[16])
  4. إعادة التشغيل مع declared_length = 0x800 عبر 163 محدِّداً (selector) من AKS
  5. فحص المخرجات بحثاً عن مؤشرات النواة 0xfffffff0xxxxxxxx → حساب إزاحة KASLR

سلوك الـ PoC

يُنفّذ poc_aks_oob.m سلسلة التقاط مقبض ACM الكاملة وفحص OOB:

  • ينشئ مفتاح Secure Enclave P-256 (kSecAttrAccessibleAfterFirstUnlock، بدون بصمة حيوية)
  • يوقّع رسالة من 32 بايت لتحفيز استدعاء AKS IOKit داخل العملية
  • يعيد التشغيل مع declared_length = 0x800 عبر جميع محدِّدات AKS البالغ عددها 163
  • يطبع أي مؤشرات نواة يتم العثور عليها عند KPTR @+XXXX = 0xfffffff0YYYYYYYY
  • يحاول حساب إزاحة KASLR من إزاحة رمز AKS معروفة

إذا تم توجيه توقيع مفتاح SE عبر secd XPC بدلاً من داخل العملية، يستخدم الفحص الاحتياطي مقبضاً صفرياً (يؤكد إمكانية الوصول إلى مسار OOB؛ ستفشل جميع المحدِّدات في تحقق ACM، لكن مسار VNOP يكون مؤكداً).


ملاحظة iOS 26: حظر fishhook

على iOS 26، يتم تعيين __DATA_CONST (الذي يحتوي على GOT) للقراءة فقط قبل تشغيل أي كود داخل العملية. تؤدي الكتابات في وقت التشغيل على GOT (كما يستخدمها fishhook) إلى KERN_PROTECTION_FAILURE → SIGBUS. يعمل DYLD_INTERPOSE عبر __DATA,__interpose لأن dyld يعالج جدول interpose عند تحميل الصورة، قبل أن تفرض النواة حماية __DATA_CONST.


المتطلبات

  • iOS 26.6 (23G71) أو أقدم
  • الوصول إلى Secure Enclave (kSecAttrTokenIDSecureEnclave) — متاح لأي تطبيق محمّل جانبياً بدون entitlements
  • لا حاجة للهروب من الـ sandbox: استدعاء AKS IOKit يتم داخل العملية عبر Security.framework

البناء

root@kitploit:~
# Xcode project — link Security.framework and Foundation.framework
clang -arch arm64 \
      -isysroot $(xcrun --sdk iphoneos --show-sdk-path) \
      -framework Security -framework Foundation \
      -o poc poc/poc_aks_oob.m

codesign -s "Apple Development" --entitlements ent.plist poc

الحد الأدنى من entitlements (ent.plist):

root@kitploit:~
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
    "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"><dict>
    <key>keychain-access-groups</key>
    <array><string>$(AppIdentifierPrefix)com.research.poc65343</string></array>
</dict></plist>

الجدول الزمني

التاريخالحدث
2026-08-17إصدار iOS 26.6.1 مع الإصلاح
2026-08-17نشر Apple للفضل في النشرة الأمنية

المراجع

  • Apple Security Advisory — iOS 26.6.1

CVE-2026-65343-e7eb2ed

تنزيل الأداة