
هواوي P10 VTR-L29C432B151 CVE-2017-8890 بحث استغلال ورحلة فتح قفل bootloader
يوثّق هذا المستودع مشروع بحث مُصرَّح به من قِبل المالك، تم فيه نقل CVE-2017-8890 إلى إصدار واحد من البرنامج الثابت لجهاز Huawei P10، وتحويل ثغرة use-after-free في النواة إلى قدرة قراءة/كتابة عشوائية في النواة وجذر مؤقت، وإعادة بناء سجل NVE الخاص بهواوي، وتثبيت بيانات اعتماد بديلة لمحمّل الإقلاع عبر برنامج تشغيل NVE الشرعي، والتحقق من أن fastboot قبِل رمز النص العادي المختار.
الهدف المُختبَر كان:
4.1.18-gbed9f04هذه ليست أداة فتح عامة لجميع أجهزة P10. ملف تعريف النواة المرفق يحتوي عناوين مطلقة لهذا الإصدار المحدد بالضبط. استخدامه على نواة أخرى قد يُحدث انهيارًا (panic) في الهاتف وقد يُتلف التخزين الدائم. كما أن ترقيات البرنامج الثابت قد تغيّر ملف التعريف حتى عندما يظل الطراز التجاري دون تغيير.
السرد الكامل والآمن للنشر متاح في تقرير PDF.
سلسلة النجاح كانت:
CVE-2017-8890 multicast UAF
-> controlled overlap with ip_mc_socklist
-> forced RCU grace period in the exploit's address space
-> AArch64 JOP arbitrary store
-> ptmx_fops.check_flags temporarily redirected
-> address limit widened to KERNEL_DS
-> pipe-based arbitrary kernel read/write
-> check_flags restored
-> current task credentials and SELinux SID patched
-> protected NVME partition acquired
-> replacement SHA-256 verifier written with /dev/nve0
-> complete 128 KiB generation read back and compared
-> controlled reboot
-> fastboot unlock accepted the chosen plaintext
نجت بيانات اعتماد محمّل الإقلاع من ترقية رسمية لاحقة إلى Android 8 / EMUI 8 حتى مع إعادة قفل محمّل الإقلاع، وتم فتحه مرة أخرى بنفس رمز النص العادي المختار. يشير هذا إلى أن بيانات الاعتماد توجد في بيانات NVE الدائمة على الجهاز وليس في نظام Android أو صورة الإقلاع.
exploit/CVE-2017-8890/1003/ modified exploit implementation
utils/ GPLv3 androotzf support code
jni/ Android NDK build files
tools/p10_nve_journal.py read-only inspector and offline candidate builder
docs/exploit-development.md technical exploit journey
docs/nve-format.md Huawei NVE journal and credential semantics
docs/reproduction.md staged reproduction procedure
report/ redacted long-form PDF
لا تُضمَّن في هذا المستودع أي استغلالات مُجمَّعة، أو صور برامج ثابتة، أو تفريغات أقسام، أو صور إقلاع، أو أدوات تجارية مملوكة، أو رموز فتح، أو معرّفات أجهزة، أو ملخصات بيانات اعتماد مشتقة من الجهاز.
بدأ الاستغلال من تنفيذ GPLv3 الخاص بـ idhyt/androotzf عند الالتزام 63dfe5556e1a8cdbf6a2d3dd0ee929b07bfb48b7. يحتفظ هذا المستودع بإشعارات حقوق النشر الخاصة بالمصدر الأصلي وترخيص GPLv3. تُعد التغييرات المتعلقة بموثوقية P10 B151، والتشخيص، والقراءة/الكتابة في النواة، والجذر المؤقت، وتفريغ الأقسام، ومعاملات NVE المحمية، تعديلات أُجريت خلال مشروع البحث هذا في يوليو 2026.
راجع NOTICE.md للحصول على تفاصيل الإسناد والتعديلات.
استخدم هذا العمل فقط على أجهزة تملكها أو مُخوَّل صراحةً باختبارها. فتح قفل محمّل الإقلاع يمحو بيانات المستخدم. يُتلف الاستغلال كائنات النواة عمدًا، وعادةً ما يسبب انهيارًا (panic) لاحقًا أثناء التنظيف ما لم يصل إلى مسار إعادة تشغيل مُتحكم فيه. لا يوجد أي ضمان ولا أي وعد بالاستعادة.