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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-43499-aristotle | Kitploit
أدوات/GitHubGitHub/soralis0912/cve-2026-43499-aristotle
أمان أندرويدتصعيد الامتيازاتأطر الاستغلالتحليل الثغرات الأمنيةالاستغلالأمن الجوالاستغلال الملفات الثنائية
GitHubsoralis0912/cve-2026-43499-aristotle

CVE-2026-43499-aristotle

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-43499 — aristotle (au/KDDI Xiaomi XIG04)

تصعيد محلي للامتيازات (tmp-root) لجهاز au/KDDI Xiaomi "aristotle" (XIG04) على Android 12، عبر CVE-2026-43499. وهي أداة تجذير أولية بصلاحية مالك الجهاز (device-owner): تمنح الروت لهاتفك الخاص (مثلاً لإعادة تمكين ADB عندما يتعذّر الوصول إلى خيارات المطوّر).

هذا منفذ aristotle (port) للتنفيذ الأصلي (upstream): https://github.com/x-spy/CVE-2026-43499-popsicle — والذي يستهدف Xiaomi 17 / Pro / Ultra (popsicle, Snapdragon, Android 16, kernel 6.12.23). كل الفضل في تقنية الاستغلال يعود إلى المنبع؛ هذا الفرع (fork) يعيد توجيهها فقط إلى جهاز وجيل نواة مختلفين.

النطاق: جهاز XIG04 الخاص بك الذي يعمل بنظام Xiaomi/XIG04_jp_kdi/XIG04:12/SP1A.210812.016/V14.0.3.0.TMFJPKD. ليس استغلالاً للأغراض العامة أو عن بُعد.

الهدف

root@kitploit:~
device  : aristotle (au/KDDI XIG04), MediaTek, Android 12
kernel  : 5.10.136-android12-9-00020-gc9f59ef34367-ab9585114  (VA=39, 4K pages, KASLR)

الثغرة

CVE-2026-43499 هي ثغرة استخدام-بعد-التحرير (use-after-free) في مسار Futex-PI في نواة لينكس: تعمل remove_waiter() في kernel/locking/rtmutex.c على current بدلاً من waiter::task أثناء التراجع عن قفل الوكيل (proxy-lock) من futex_requeue()، تاركةً pi_blocked_on معلّقاً. وهي ثغرة قديمة وطويلة العمر (أثرت على Linux من 2.6.39 حتى 6.18.x)، لذا فإن نواة 5.10.136 هنا تقع ضمن النطاق المتأثر (CONFIG_FUTEX_PI=y, CONFIG_RT_MUTEXES=y). يستخدم الاستغلال أسلوب "الجذر المباشر" (direct-root) المعتمد على البيانات فقط (استبدال cred بـ init_cred وقلب وضع فرض SELinux) ويجرب وسوم MTE بالقوة العمياء لتجاوز تحصين الجهاز (KASAN_HW_TAGS, MTE, , ).

الاختلافات عن المنبع (popsicle → aristotle)

يستهدف المنبع Snapdragon / Android 16 / kernel 6.12؛ أما aristotle فهو MediaTek / Android 12 / kernel 5.10، لذا يعيد المنفذ اشتقاق كل ما هو خاص بالجهاز من الصفر:

  • rt_mutex_waiter هو التخطيط المسطّح القديم في 5.10 (بدون rt_waiter_node المتداخل، وبدون wake_state/ww_ctx). أُعيد بناء جداول الوافد المزيّف (fake-waiter) في source/src/{slide,fops}.c وsource/src/util.c من 13 كلمة إلى 10.
  • لا يوجد xbl_config. يتم تجاوز KASLR ديناميكياً (تسريب معلومات من النواة في slide.c)؛ الثابتان الفيزيائيان اللذان أخذهما المنبع من Qualcomm XBL يُستبدلان بقاعدة DRAM ثابتة (0x40000000، من شجرة الجهاز) إضافةً إلى memstart_addr / kimage_voffset في زمن التشغيل (runtime).
  • لا يوجد BTF في هذه النواة، لذا تُستعاد إزاحات البنى (struct offsets) عبر التفكيك (disassembly) وتُحقن بدلاً من قراءتها من BTF.
  • جميع الإزاحات وRVAs ومراسي KASLR حُدِّدت بالقياس لهذه النواة تحديداً — انظر ARISTOTLE_CVE43499_PORT.md.

توليد ملف الرأس الهدف

نسخة source/src/target.h المقيسة لجهاز XIG04 مُضمّنة بالفعل في المستودع (committed)، لذا يمكنك البناء مباشرة. لإعادة توليدها من صورة إقلاع (boot image)، استخدم مولّد aristotle (بدون --xbl-config؛ فهو يُخرج RVAs الخاصة بـ memstart_addr/kimage_voffset للاستخدام الديناميكي):

root@kitploit:~
python3 gen_aristotle_target.py \
  --boot boot.img \
  --pselect-shift 0 \
  --loggers 0xffffffc012771380 \
  --boot-id-data 0xffffffc012886cf8 \
  --kernel-phys-load 0x40080000 \
  -o source/src/target.h

(المراسي الثلاثة وقيمة kernel-phys-load هي القيم المدمجة في ملف الرأس الملحَق بالمستودع؛ انظر ARISTOTLE_CVE43499_PORT.md لمعرفة كيفية الحصول عليها.)

البناء

يتطلب Python 3 و Android NDK (r29). API=31 إلزامي حتى تُحمَّل الحمولة (payload) على Android 12:

root@kitploit:~
make -C source clean preload API=31

إذا لم يتم اكتشاف NDK تلقائياً:

root@kitploit:~
NDK_ROOT=/path/to/android-ndk make -C source clean preload API=31

الناتج النهائي:

root@kitploit:~
source/build/bin/preload.so

التشغيل

root@kitploit:~
adb push source/build/bin/preload.so /data/local/tmp/preload.so
adb shell 'chmod 0644 /data/local/tmp/preload.so'
adb shell 'LD_PRELOAD=/data/local/tmp/preload.so /system/bin/true'
adb shell '/data/local/tmp/su -c id'

عند النجاح:

root@kitploit:~
uid=0(root) gid=0(root) groups=0(root) context=u:r:kernel:s0
direct-root-summary root=1 id=1 su=1/... selinux=1->0 uid=0 euid=0 gid=0 egid=0

يضمّن preload.so عميل su وخادمه (daemon) الخاصين به ويُثبّتهما ذاتياً عند تحميله، لذا لا حاجة لملف ثنائي (binary) منفصل لـ su.

الحالة: المنفذ مكتمل الكود من التحليل الساكن لكنه لم يُتحقق منه بعد على العتاد الفعلي. تحقق أولاً من مشغّل الانهيار (crash trigger)، ثم من الروت، على جهازك الخاص. عناصر الضبط الخاصة بالنواة (MM_ORDER, P0_KERNEL_PHYS_LOAD, سلوك الوافد المسطّح flat-waiter) مدرجة في ARISTOTLE_CVE43499_PORT.md.

تنزيل الأداة
CFI
SCS