
Huawei P10 VTR-L29C432B151 CVE-2017-8890 एक्सप्लॉइट शोध और बूटलोडर-अनलॉक यात्रा
यह रिपॉजिटरी एक मालिक-अधिकृत अनुसंधान परियोजना का दस्तावेजीकरण करती है जिसने CVE-2017-8890 को एक Huawei P10 फ़र्मवेयर पर पोर्ट किया, कर्नेल यूज़-आफ्टर-फ्री को आर्बिट्ररी कर्नेल रीड/राइट और अस्थायी रूट में परिवर्तित किया, 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 अपग्रेड में भी बना रहा, भले ही बूटलोडर फिर से लॉक हो गया, और उसी चुने गए प्लेनटेक्स्ट ने इसे फिर से अनलॉक किया। यह इंगित करता है कि क्रेडेंशियल स्थायी डिवाइस 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 देखें।
इस कार्य का उपयोग केवल उस हार्डवेयर पर करें जिसके स्वामी आप हैं या जिसके परीक्षण के लिए आप स्पष्ट रूप से अधिकृत हैं। बूटलोडर अनलॉकिंग यूज़रडेटा मिटा देती है। एक्सप्लॉइट जानबूझकर कर्नेल ऑब्जेक्ट्स को भ्रष्ट करता है और सामान्यतः बाद में क्लीनअप पैनिक का कारण बनता है, जब तक कि यह नियंत्रित रीबूट पथ तक न पहुंचे। कोई वारंटी नहीं है और रिकवरी की कोई गारंटी नहीं है।