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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ghostlock-cve-2026-43499-4.19-k40 — CVE-2026-43499 (GhostLock) هو PoC من نوع UAF لجذر محلي (local-root) في rtmutex remove_waiter()، مُكيَّف لأنوية Qualcomm Android 4.19 (فئة Redmi K40 / Snapdragon 870)، وقائم على LD_PRELOAD | Kitploit
أدوات/GitHubGitHub/yijiacloud/ghostlock-cve-2026-43499-4.19-k40
أمان أندرويدتصعيد الامتيازاتالاستغلالما بعد الاستغلالأمن الجوالتطوير الحمولاتاستغلال الملفات الثنائية
GitHubyijiacloud/ghostlock-cve-2026-43499-4.19-k40

ghostlock-cve-2026-43499-4.19-k40

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-43499 (GhostLock) هو PoC من نوع UAF لجذر محلي (local-root) في rtmutex remove_waiter()، مُكيَّف لأنوية Qualcomm Android 4.19 (فئة Redmi K40 / Snapdragon 870)، وقائم على LD_PRELOAD

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

GhostLock — CVE-2026-43499 PoC (نواة Qualcomm 4.19)

ارتقاء صلاحيات محلي يستغل CVE-2026-43499 — خلل في remove_waiter() الخاص بـ rtmutex يترك struct rt_mutex_waiter معلّقًا على مكدس النواة الخاص بالمُنتظِر (kernel/locking/rtmutex.c, CWE-416 use-after-free). معدّل من NebuSec/CyberMeowfia (IonStack/CVE-2026-43499, Apache-2.0) لعائلة نواة Qualcomm Android 4.19.x الخاصة بالمورّد.

  • النواة: 4.19.157-perf-g9607d8651312 (qcom, clang 10.0.7, SMP PREEMPT, aarch64)
  • فئة الجهاز: Snapdragon 870 (sm8250-ac) / لوحات فئة Redmi K40، إصدارات عصر Android 13 مع boot header v3
  • الخلل: futex_requeue() عند التراجع عن قفل الوكيل يستدعي remove_waiter() الذي يعمل على current بدلًا من waiter->task — إزالة من شجرة rb دون pi_lock، مع pi_blocked_on معلّق، مما يؤدي إلى UAF على مكدس النواة. الإصدارات المتأثرة حتى 5.10/5.15/6.1/6.6/6.12/6.18/7.0 تم إصلاحها؛ 4.19 لا يوجد لها backport (EOL)، لذا 4.19.157-perf متأثر.

ما في المستودع

root@kitploit:~
src/                         adapted exploit sources (preload.so)
src/targets/oplus-4.19.157-perf/target.h   per-device offset table (kallsyms-derived)
prebuilt/                    compiled artifacts (aarch64)
adaptation-4.19.patch        full diff vs. the upstream Pixel (6.x) code
Makefile, build.sh           build entry points

تعديلات الجولة الثانية لنواة 4.19 (مقارنةً بالمصدر 6.x)

  • يتم وضع configfs_read_file / configfs_write_bin_file في فتحتي .read/.write من fops (تواقيع 4.19)، وتستخدم بدائية القراءة تخطيط المخزن الوهمي المبسّط count/page/ppos=0
  • بادئة اسم ashmem (/dev/ashmem) غير موجودة في هذه النواة — طول البادئة 0
  • هندسة kmalloc: في 4.19 هناك 3 أنواع من الكاشات (NORMAL/RECLAIM/DMA، بدون كاشات per-memcg)؛ مصفوفة مخازن الأنبوب القديمة ذات 16 خانة تقع في kmalloc-1024
  • selinux_blob_sizes غير موجود في 4.19 → الوصول المباشر cred->security (SELINUX_CRED_BLOB_OFF=0)؛ struct seccomp لا يحتوي على filter_count
  • ASHMEM_MISC_FOPS = فتحة miscdevice.fops (ashmem_misc + 0x10)

البناء

لينكس / WSL مع Android NDK:

root@kitploit:~
export NDK_ROOT=/path/to/android-ndk-r27c
./build.sh                      # or: make PROJECT=oplus-4.19.157-perf

المخرجات: prebuilt/preload.so (حمولة LD_PRELOAD) و PIE مدمج su_daemon.

استخدام ADB (جذر لمرة واحدة)

يتطلب قشرة ADB (يكفي adb shell عادي وغير مميَّز — فالثغرة تعمل بالكامل دون امتيازات وترفع صلاحياتها بنفسها).

root@kitploit:~
# 1. push the payload
adb push prebuilt/preload.so /data/local/tmp/

# 2. run the exploit against any command (here: id) via LD_PRELOAD
adb shell LD_PRELOAD=/data/local/tmp/preload.so id

# expected on success: uid=0(root) gid=0(root) groups=...
# on failure the process exits 1 and the log below tells you where it stopped.

صيغ سطر واحد اختيارية:

root@kitploit:~
# capture the exit status too
adb shell "LD_PRELOAD=/data/local/tmp/preload.so id; echo rc=\$?"

# interactive root shell (the exploit also installs an su daemon)
adb shell "LD_PRELOAD=/data/local/tmp/preload.so /system/bin/sh -c 'su -c id'"

سجل التصحيح (يبقى بعد تعطل النظام/إعادة التشغيل)

كل سطر pr_* يُنسخ إلى القرص مع write()+fsync() فوري بحيث يبقى الأثر بعد تعطل النواة/إعادة التشغيل:

root@kitploit:~
/sdcard/Download/log_<timestamp>.txt

مسارات احتياطية إذا كان /sdcard غير متاح: /sdcard/Downloads، /data/local/tmp/log_<timestamp>.txt.

root@kitploit:~
# after the run (even after a reboot):
adb shell "ls -t /sdcard/Download/log_*.txt | head -1"
adb shell "cat $(adb shell 'ls -t /sdcard/Download/log_*.txt | head -1' | tr -d '\r')"

علامات السجل الأساسية:

  • preload starting pid=... log=/sdcard/Download/log_<ts>.txt — تم تحميل الحمولة
  • slide-kaslr-ok ... base=... — تم استعادة أساس KASLR
  • pipe-physrw-summary ... root=1 ... — تم تثبيت القراءة/الكتابة الفيزيائية
  • uid_before=... uid_after=0 ... selinux=1->0 — تم تصحيح بيانات الاعتماد
  • في 4.19 تطبع أداة الانزلاق UNVERIFIED قبل محاولتها الأولى — هذه المرحلة هي التي تُضبط لكل جهاز باستخدام هذا السجل.

ملاحظات وقيود

  • المرحلة الأولى (تسريب انزياح KASLR) تُضبط لكل جهاز؛ القيم التي تعذّر اشتقاقها بشكل ثابت لنواة 4.19 يتم وضع علامة عليها في target.h وتسجيلها كـ UNVERIFIED وقت التشغيل. كرّر الضبط على الجهاز باستخدام سجل fsync.
  • CONFIG_STATIC_USERMODEHELPER=y في هذا البناء يعطّل حيل مسار modprobe؛ المسار الأساسي هو تصحيح cred المباشر.
  • تحقق من صحة الإزاحات على بنائك المحدد عبر kallsyms الخاص بالنواة (/proc/kallsyms) و /proc/slabinfo قبل النشر.

الترخيص

Apache-2.0 (المصدر الأصلي: NebuSec/CyberMeowfia). لأغراض البحث الأمني وتجذير الأجهزة المصرّح بها فقط. استخدمه على أجهزة تملكها.

تنزيل الأداة
  • تم إعادة اشتقاق إزاحات البنى (task_struct / cred / pipe_inode_info / file_operations / mm_struct / struct page / configfs_buffer) من kallsyms لهذه النواة + رؤوس ikheaders المدمجة والتحقق منها مقابل جدول إعادة التوطين RELA الخاص بالنواة