
CVE-2026-43499 منفذ بحث لجهاز Galaxy Z Fold4 SM-F936W F936WVLU1AVGA (قيد التقدم)
منفذ بحث خاص بالجهاز لـ CVE-2026-43499 (IonStack PI write-what-where) لجهاز Galaxy Z Fold4 الكندي SM-F936W على البرنامج الثابت F936WVLU1AVGA.
هذا المستودع هو النظير الخاص بـ Fold4 لكل من
CVE-2026-43499-S24U و
CVE-2026-43499-A36. وهو
يُوثّق التقدم الحالي غير المكتمل: استعادة الصفحة (reclaim)، وتجهيز UAF لمكدس البقايا (leftover-stack)، وتغطية leftover.lock — كلها جاهزة؛ لكن إدراج [7] لـ lock.waiters لا يستقر أبدًا على الصفحة المستعادة. لم يتم الوصول إلى CFI / physrw / root بعد.
الإزاحات والتخطيطات تنطبق على هذا البرنامج الثابت فقط. لا تنسخ الثوابت من S24U / S25 / A36 / S9180 / GRKU إلى هذا الهدف. على وجه الخصوص، SKB_DATA_DELTA هنا هي -0xe80 (بينما S9180 هي -0x1000).
استخدم فقط على الأجهزة التي تملكها أو المصرّح لك صراحةً باختبارها.
Model: SM-F936W
Codename: q4q
Board: taro (Snapdragon 8 Gen 1)
Android: 12 / One UI 4.1.1 (SDK 32)
AP / PDA: F936WVLU1AVGA
Fingerprint: samsung/q4qcsx/q4q:12/SP2A.220305.013/F936WVLU1AVGA:user/release-keys
Kernel: 5.10.81-android12-9-24709469-abF936WVLU1AVGA
Architecture: arm64 / 4K pages
Serial used: RFCT70A6APD (authorized owner device)
صورة Image SHA-256 9ec34bbfa6a732001ead04a3e6aea8a6ad2283e3280b8b7d024c47056003fe3d.
vmlinux.elf المستخرج SHA-256
a5a5fa849f3e47f185d8cf4d5796b2ada10d251153a5fcea51ba138e0c565a0c.
لا يتم تضمين الملفّين الخامّين Image وvmlinux.elf (انظر
analysis/boot-unpack/SHA256SUMS).
أحدث أثر مباشر: analysis/artifacts/cve-2026-43499-v104-resscan
(SHA-256 dd7968e71f2c151be46b7c386cd1380ace191854d36c08c11283266b82c8656b)،
الإقلاع f5264a43-7544-460e-a70d-becf90960383، warranty_bit=0.
انظر docs/PROGRESS.md لمصفوفة المراحل.
src/targets/q4q-F936WVLU1AVGA/ (إزاحات مدعومة بالصورة).src/): زرع so1000 leftover، قياس stamp-SP، نظرة خاطفة على المتبقي في أي مكان، DIAG_LOCK_MINIMAL.feature/grku-race-parity @ 749633c (وليست ثوابت Fold4).إنه لا يحتوي على أرشيفات البرنامج الثابت، أو Image الخام للنواة، أو vmlinux.elf، أو شيفرة مصدر تطبيق Android، أو وحدة KernelSU خاصة بـ Fold4.
export ANDROID_NDK_HOME=/path/to/android-ndk # NDK r29 or compatible
make TARGET=q4q-F936WVLU1AVGA API=32
المخرجات:
build/q4q-F936WVLU1AVGA/cve-2026-43499
build/q4q-F936WVLU1AVGA/cve-2026-43499-app.so
build/q4q-F936WVLU1AVGA/cve-2026-43499-root
تعامل مع الثنائيات على أنها تشخيصية. لا تتعامل مع setattr بنتيجة success=1 على أنها كتابة [7] أو [11] مكتملة.
أبقِ هذه المعاملات كما هي ما لم تفرض حقيقة جديدة من الصورة تغييرها:
DIAG_RECLAIM_PREDRAIN_SENDS=768
DIAG_RECLAIM_SENDS=1
DIAG_WRITE_SHAPE=3
DIAG_SELF_WRITE_OFF=0x6000
DIAG_PERF_RESIDUAL=1
DIAG_RECLAIM_PEEK=1
ASHMEM_MISC_FOPS قبل تحقيق إصابة (HIT) في الكتابة الذاتية لـ skb-peek (self_src == fake_fops) ليس مفيدًا على هذا البرنامج الثابت.leftover.task على init_task أو على fake_task الخاص بالصفحة يكبح [7]. كما أن تثقيب leftover.task، أو empty-leftmost، أو prio=0 يفشل أيضًا.رخصة Apache 2.0: LICENSE.
| المرحلة | الحالة |
|---|
| هوية الصورة، kallsyms، بصمة P0 | مكتمل |
| المنتظر / task PI / fops / mm slab (0x3c0, order 3) | مكتمل (لهذه الصورة) |
| تسريب mm عبر KernelSnitch + تجهيز الصفحة | يعمل |
| استعادة skb predrain=768، الإرسالات النهائية=1 | يعمل |
| بقاء leftover الكلاسيكي عبر EDEADLK | يعمل (مُثبت على الصورة) |
المتبقي stack_page+0x3cb0 (وكذلك +0xbcb0) | يعمل |
| leftover.lock الخاص بـ IPv6 MCAST عند buf+0x118 | مُقاس (v93؛ بعد نسخة 264 بايت) |
| SOL_SOCKET 1000 يغطي leftover.lock عند +0x80 | يعمل (v96 مباشر) |
| زرع leftover.lock = fake_lock | يعمل |
| المشي عن بُعد لـ MARK@+0x80 | مُثبت (إعادة تشغيل) |
| fake_lock@+0x80 + owner=1 setattr | success=1، دون أي تغيير على الصفحة |
إدراج [7] للـ leftover على الصفحة | مفتوح (فحص المتبقي لكامل الصفحة v104: لا نتيجة) |
| كتابة CFI / أنبوب phys-rw / الجذر / KernelSU | لم يُتوصل إليه |
| المستند | المحتوى |
|---|
| docs/PROGRESS.md | مصفوفة المراحل، الحقائق المباشرة، البوابة المفتوحة |
| docs/SM-F936W-F936WVLU1AVGA.md | سجل الهدف |
| analysis/reports/PI_TREE_NEXT_GATE_20260813.md | هوية [7] مقابل [11] |
| src/targets/q4q-F936WVLU1AVGA/provenance.md | تجزئات البرنامج الثابت / الصورة |