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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2023-6241-Pixel7_Adaptation — تكييف CVE-2023-6241 لـ Google Pixel 7 من Google Pixel 8 مأخوذ من securitylab/SecurityExploits/Android/Mali/CVE_2023_6241 | Kitploit
أدوات/GitHubGitHub/ilgobbo00/cve-2023-6241-pixel7_adaptation
أمان أندرويدتحليل الثغرات الأمنيةالاستغلالالهندسة العكسيةمصممي الأخطاءأمن الجوالتحليل البرامج الثابتةاستغلال الملفات الثنائية

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
GitHub
ilgobbo00/cve-2023-6241-pixel7_adaptation

CVE-2023-6241-Pixel7_Adaptation

تكييف CVE-2023-6241 لـ Google Pixel 7 من Google Pixel 8 مأخوذ من securitylab/SecurityExploits/Android/Mali/CVE_2023_6241

عرض المستودع
1453منذ سنة واحدةلم تتم المراجعة بعد

CVE-2023-6241 لجهاز Google Pixel 7

سيوضح هذا المستودع كيفية تكييف الثغرة الاستغلالية التي نشرها securitylab في مستودعه على GitHub لتعمل على Google Pixel 7 بدلاً من Google Pixel 8.

قبل البدء بتعديل الثغرة الاستغلالية، تم افتراض أن الثغرة الاستغلالية الأصلية تعمل أيضًا على أجهزة Google Pixel 7 (بعد تطبيق التصحيحات اللازمة) استنادًا إلى المقال المرتبط بـ CVE-2023-6241. كان هذا ضروريًا نظرًا لأن الجهازين يبدوان مختلفين (من الناحية العتادية) (مقارنة).

الأدوات

فيما يلي الأدوات المستخدمة لإجراء التحليل واستخراج المعلومات أو الملفات.

  • Ghidra
  • imjtool (لاستبدال abootimg لأنه بدا غير قادر على العمل مع صور Android الأحدث)
  • vmlinux-to-elf
  • Online Assembler and Disassembler
  • Android flash tool
  • Android NDK ومترجم aarch64-linux-android34-clang

سير العمل

فيما يلي كيفية تحقيق الهدف بدءًا من البداية.

  1. فعّل خيارات المطور (Developer options) في الجهاز.

  2. قم بوميض الجهاز بالتصحيح الأمني الصحيح (في هذه الحالة أحد الإصدارين UP1A.231105.003، نوفمبر 2023 وUQ1A.240205.002، فبراير 2024 وكلاهما ضمنًا)، ويفضل استخدام Google Chrome وأداة Android flash tool بالنقر على "Flash" في الإدخال المطلوب في صفحة Factory Images for Nexus and Pixel Devices.

    ملاحظة 1: يمكن أن يساعد استخدام أداة Android flash tool لوميض الأجهزة في حل المشكلات المتعلقة بإصدار bootloader. قد تظهر هذه المشكلات أثناء عملية وميض باستخدام البرنامج النصي المرفق مع الملف المضغوط الذي يتم تنزيله بالنقر على "Link" داخل صفحة Factory Images for Nexus and Pixel Devices.

    ملاحظة 2: قبل وميض الجهاز، حدد "Force Flash all partition" في أداة Android flash tool للحصول على نفس نتيجة البرنامج النصي.

  3. نزّل صورة Android المطلوبة بالنقر على "Link" واستخرج ملف boot.img من الملف المضغوط "image-panther.zip" داخل الملف المضغوط الرئيسي "panther-<release>-factory-<first 8 characters of SHA-256>.zip"

  4. نفّذ الأمر ./imjtool.ELF64 boot.img extract. سيتم إنشاء المجلد الجديد "extracted" مع ملفين بداخله. imjtool-output

  5. نفّذ الأمر vmlinux-to-elf ./extracted/kernel.decompressed <filename>.elf (للإشارة إليه لاحقًا سيكون <filename>.elf هو Pixel7-kernel.elf). سيتم إنشاء ملف جديد بالاسم المحدد. vmlinux-to-elf-output

  6. افتح "Pixel7-kernel.elf" باستخدام Ghidra. ليس من الضروري إجراء التحليل التلقائي لأنه يستغرق وقتًا طويلًا ويمكن استخراج المعلومات على أي حال

  7. افتح نافذة "Symbol table" وابحث عن الحقول المطلوبة (في هذه الحالة avc_den|sel_read_enforce$|init_cred|^commit_creds$). يجب أن تكون النتيجة شيئًا كهذا: SymbolTable

  8. انتقل إلى عنوان الموقع واحصل على "Imagebase Offset" لجميع الحقول التي تم البحث عنها. imagebase-offset

  9. اضبط جميع الإزاحات (offsets) في الثغرة الاستغلالية وفقًا لما تم العثور عليه.
    set-offset.png

  10. احسب قيمة ADD_COMMIT_2311 وADD_INIT_2311 بإيجاد قيمة HEX للعمليتين التاليتين على التوالي add x8, x8, #0xXXX وadd x0, x0, #0xYYY باستخدام Online Assembler and Disassembler. للعثور على قيمتي XXX و YYY يكفي نسخ أقل 12 بت على التوالي من COMMIT_CREDS_2311 وADD_INIT_2311 (مثلًا إذا كانت ADD_COMMIT_2311 هي 0x17f0c8، فإن كود HEX للعملية add x8, x8, #0x0c8 هو 0x91032108).
    لاحظ أن القيم معبر عنها بصيغة big-endian لذا يجب عكس البايتات الناتجة.

  11. انسخ GLES_mali.so من /vendor/lib64/egl/libGLES_mali.so (أي adb pull /vendor/lib64/egl/libGLES_mali.so) وقم بتجميع كل شيء باستخدام /home/gobbo/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android34-clang -g -DSHELL -DCL_TARGET_OPENCL_VERSION=300 -I. -L. mali_jit_csf.c mem_read_write.c mempool_utils.c -lGLES_mali -o mali_jit_csf.
    ملاحظة: لمجرد ضمان اتساق التوقيت، كانت إصدارة مكتبة OpenCL المستخدمة في الثغرة الاستغلالية هي الأحدث المتاحة قبل التصحيح الأمني الذي أصلح الثغرة (أي الإصدار 2023.04.17)

  12. ارفع الثغرة الاستغلالية وشغّلها

    root@kitploit:~
    adb push ./mali_jit_csf /data/local/tmp 
    export LD_LIBRARY_PATH=/vendor/lib64/egl
    ./data/local/tmp/mali_jit_csf
    

يمكن استرجاع المزيد من المعلومات من مقال GitHub ومستودع GitHub المذكورين في البداية.

تنزيل الأداة