
Huawei P10 VTR-L29C432B151 CVE-2017-8890 recherche sur l'exploit et parcours de déverrouillage du bootloader
Ce dépôt documente un projet de recherche autorisé par le propriétaire qui a porté CVE-2017-8890 sur un firmware Huawei P10, transformé le use-after-free du noyau en lecture/écriture arbitraire du noyau et en root temporaire, reconstruit le journal NVE de Huawei, installé un identifiant de bootloader de remplacement via le pilote NVE légitime, et vérifié que fastboot acceptait le code en clair choisi.
La cible testée était :
4.1.18-gbed9f04Ce n'est pas un déverrouilleur P10 universel. Le profil du noyau inclus contient des adresses absolues pour cette version exacte. Son utilisation sur un autre noyau peut provoquer un panic du téléphone et peut corrompre le stockage persistant. Les mises à niveau du firmware peuvent également modifier le profil, même lorsque le modèle commercial est inchangé.
Le récit complet, diffusable publiquement, est disponible dans le rapport PDF.
La chaîne qui a abouti était :
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
L'identifiant du bootloader a survécu à une mise à niveau officielle ultérieure Android 8 / EMUI 8, même si le bootloader s'est re-verrouillé, et le même texte en clair choisi l'a déverrouillé de nouveau. Cela indique que l'identifiant réside dans les données NVE persistantes de l'appareil, et non dans le système Android ou l'image de démarrage.
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
Aucun exploit compilé, image de firmware, dump de partition, image de démarrage, utilitaire commercial propriétaire, code de déverrouillage, identifiant d'appareil ou condensat d'identifiants dérivé de l'appareil n'est inclus.
L'exploit a commencé avec l'implémentation GPLv3 idhyt/androotzf au commit 63dfe5556e1a8cdbf6a2d3dd0ee929b07bfb48b7. Ce dépôt conserve les avis de droits d'auteur du projet d'origine et la licence GPLv3. Les changements relatifs à la fiabilité P10 B151, au diagnostic, à la lecture/écriture du noyau, au root temporaire, au dump de partition et aux transactions NVE protégées sont identifiés comme des modifications apportées au cours de ce projet de recherche en juillet 2026.
Voir NOTICE.md pour les détails d'attribution et de modification.
N'utilisez ce travail que sur du matériel que vous possédez ou que vous êtes explicitement autorisé à tester. Le déverrouillage du bootloader efface les données utilisateur. L'exploit corrompt délibérément des objets du noyau et entraîne normalement un panic de nettoyage ultérieur, sauf s'il atteint un chemin de redémarrage contrôlé. Aucune garantie n'est fournie et aucune garantie de récupération n'est donnée.