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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
iOS26.6-CVE-2026-65343 — # CVE-2026-65343 PoC — قراءة خارج الحدود في AppleKeyStore → كسر KASLR (iOS 26.6 / 23G71) | Kitploit
أدوات/GitHubGitHub/amorcool/ios26.6-cve-2026-65343
أطر الاستغلالأمان iOSتحليل الثغرات الأمنيةالاستغلالالهندسة العكسيةأمن الجوالاستغلال الملفات الثنائية
GitHubamorcool/ios26.6-cve-2026-65343

iOS26.6-CVE-2026-65343

# CVE-2026-65343 PoC — قراءة خارج الحدود في AppleKeyStore → كسر KASLR (iOS 26.6 / 23G71)

عرض المستودع
218منذ 21 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

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

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


الاعتمادات

اكتشفها: Drinor Selmanaj (Sentry)، Surya Narayan Kushwaha
(وفق نشرة Apple الأمنية — iOS 26.6.1)


السبب الجذري

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

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

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

root@kitploit:~
; _LibSer_SEPControl_Deserialize (المسار المتأثر، 26.6 / 23G71)
ldr  w2, [acm_msg + declared_length_offset]  ; 0x800 يتحكم به المستخدم
; لا يوجد تحقق: w2 <= (acm_msg_end - payload_ptr) ← مفقود
bl   copyout                                  ; ينسخ w2 بايت إلى مساحة المستخدم

التقاط مقبض 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 محدد AKS
  5. فحص المخرجات بحثًا عن مؤشرات نواة 0xfffffff0xxxxxxxx ← حساب إزاحة KASLR

سلوك إثبات المفهوم (PoC)

poc_aks_oob.m ينفذ سلسلة التقاط مقبض ACM الكاملة وسلسلة استكشاف القراءة خارج الحدود:

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

إذا تم توجيه توقيع مفتاح SE عبر XPC الخاص بـ secd بدلاً من داخل العملية، يستخدم الاستكشاف الاحتياطي مقبضًا صفريًا (يؤكد إمكانية الوصول إلى مسار 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) — متاح لأي تطبيق مثبت جانبيًا بدون صلاحيات
  • لا حاجة للهروب من الحماية (sandbox): توقيع مفاتيح SE عبر Security.framework قد يستدعي استدعاء AKS IOKit داخل العملية (يعتمد على الجهاز وإصدار iOS). في بعض الإعدادات يتم توجيه الاستدعاء عبر XPC الخاص بـ secd بدلاً من ذلك — في هذه الحالة يؤكد الاحتياطي ذو المقبض الصفري إمكانية الوصول إلى مسار OOB لكنه لا يحقق كسر KASRL الكامل.

البناء

root@kitploit:~
# مشروع Xcode — اربط Security.framework و 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

الحد الأدنى من الصلاحيات (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 الأمنية — iOS 26.6.1
تنزيل الأداة