
Huawei P10 VTR-L29C432B151 CVE-2017-8890 pesquisa de exploit e jornada de desbloqueio do bootloader
Este repositório documenta um projeto de pesquisa autorizado pelo proprietário que portou a CVE-2017-8890 para um firmware do Huawei P10, converteu o use-after-free do kernel em leitura/gravação arbitrária do kernel e root temporário, reconstruiu o journal NVE da Huawei, instalou uma credencial substituta de bootloader por meio do driver NVE legítimo e verificou que o fastboot aceitou o código de texto simples escolhido.
O alvo testado foi:
4.1.18-gbed9f04Isto não é um desbloqueador universal do P10. O perfil de kernel incluído contém endereços absolutos para essa build exata. Usá-lo em outro kernel pode causar pânico no telefone e pode corromper o armazenamento persistente. Atualizações de firmware também podem alterar o perfil mesmo quando o modelo comercial não muda.
A narrativa completa, segura para divulgação pública, está disponível como o relatório em PDF.
A cadeia de sucesso foi:
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
A credencial do bootloader sobreviveu a uma atualização oficial posterior para Android 8 / EMUI 8, mesmo tendo o bootloader sido rebloqueado, e o mesmo texto simples escolhido o desbloqueou novamente. Isso indica que a credencial reside nos dados NVE persistentes do dispositivo, e não no sistema Android ou na imagem de boot.
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
Nenhum exploit compilado, imagem de firmware, dump de partição, imagem de boot, utilitário comercial proprietário, código de desbloqueio, identificador de dispositivo ou digest de credencial derivado do dispositivo está incluído.
O exploit começou com a implementação GPLv3 idhyt/androotzf no commit 63dfe5556e1a8cdbf6a2d3dd0ee929b07bfb48b7. Este repositório mantém os avisos de direitos autorais do upstream e a licença GPLv3. As alterações de confiabilidade do P10 B151, diagnóstico, leitura/gravação do kernel, root temporário, dump de partição e transações NVE protegidas são identificadas como modificações feitas durante este projeto de pesquisa em julho de 2026.
Consulte NOTICE.md para detalhes de atribuição e modificação.
Use este trabalho apenas em hardware que você possui ou para o qual esteja explicitamente autorizado a testar. O desbloqueio do bootloader apaga os dados do usuário. O exploit corrompe deliberadamente objetos do kernel e normalmente causa um pânico de limpeza posterior, a menos que alcance um caminho de reinicialização controlado. Não há garantia nem garantia de recuperação.