
Huawei P10 VTR-L29C432B151 CVE-2017-8890 익스플로잇 연구 및 부트로더 잠금 해제 여정
이 저장소는 소유자가 승인한 연구 프로젝트를 문서화한 것으로, CVE-2017-8890을 Huawei P10 펌웨어 하나에 포팅하고, 커널 use-after-free를 임의 커널 읽기/쓰기 및 임시 root로 변환하고, Huawei의 NVE 저널을 재구성했으며, 정상적인 NVE 드라이버를 통해 교체용 부트로더 자격 증명을 설치하고, fastboot가 선택한 평문 코드를 수락했는지 검증했습니다.
테스트 대상은 다음과 같습니다:
4.1.18-gbed9f04이것은 범용 P10 잠금 해제 도구가 아닙니다. 포함된 커널 프로파일에는 해당 정확한 빌드에 대한 절대 주소가 들어 있습니다. 다른 커널에서 사용하면 휴대폰이 패닉 상태가 되고 영구 저장소가 손상될 수 있습니다. 펌웨어 업그레이드도 마케팅 모델이 동일하더라도 프로파일을 변경할 수 있습니다.
공개해도 안전한 전체 내용은 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 업그레이드에서 부트로더가 다시 잠겼음에도 유지되었으며, 동일한 선택 평문으로 다시 잠금 해제되었습니다. 이는 자격 증명이 Android 시스템 또는 부팅 이미지가 아닌 기기의 영구 NVE 데이터에 존재함을 시사합니다.
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
컴파일된 익스플로잇, 펌웨어 이미지, 파티션 덤프, 부팅 이미지, 독점 상용 유틸리티, 잠금 해제 코드, 기기 식별자 또는 기기 파생 자격 증명 다이제스트는 포함되어 있지 않습니다.
익스플로잇은 커밋 63dfe5556e1a8cdbf6a2d3dd0ee929b07bfb48b7의 GPLv3
idhyt/androotzf 구현에서
시작되었습니다. 이 저장소는 업스트림 저작권 고지와 GPLv3 라이선스를
유지합니다. P10 B151 안정성, 진단, 커널 읽기/쓰기, 임시 root, 파티션 덤프
및 보호된 NVE 트랜잭션 변경 사항은 2026년 7월 이 연구 프로젝트 중 이루어진
수정 사항으로 식별됩니다.
저작자 표시 및 수정 세부 사항은 NOTICE.md를 참조하세요.
이 작업은 소유한 하드웨어 또는 명시적으로 테스트 승인을 받은 하드웨어에서만 사용하세요. 부트로더 잠금 해제는 userdata를 지웁니다. 익스플로잇은 의도적으로 커널 객체를 손상시키며, 제어된 재부팅 경로에 도달하지 않는 한 일반적으로 이후 정리 과정에서 패닉을 유발합니다. 보증이 없으며 복구가 보장되지 않습니다.