
GhostLock (CVE-2026-43499) RootMyVivo Neo के लिए एक्सप्लॉइट फोर्क — iQOO Neo 11 (PD2520, SM8750, 6.6.89)। केवल अपने स्वयं के डिवाइस पर अधिकृत शोध के लिए।
boxiaolanya2008/CVE-2026-43499-Neo11Plus का फोर्क, जिसे RootMyVivo Neo के लिए दोबारा बनाया गया है: हमारे परिदृश्य के लिए अनावश्यक सब कुछ हटा दिया गया है, एक्सप्लॉइट का सत्यापित कोर टाइमिंग में बिना किसी बदलाव के रखा गया है।
| घटक | कारण |
|---|---|
| वॉलपेपर बदलना + system_server को मारना | रूट के बाद "स्वतःस्फूर्त" soft reboot और वॉलपेपर बदलने का मुख्य स्रोत |
| io-डेमन (पोर्ट 39555) | केवल डीबग kernelapp के लिए आवश्यक था; ऐप su के माध्यम से काम करता है |
| /apex/com.android.virt/bin पर tmpfs-ओवरले | soft reboot (काली स्क्रीन) पर zygote/system_server को हैंग कर सकता था |
| adbd के mount-namespace में su की स्थापना | ऐप /data/local/tmp/su को पूर्ण पथ से कॉल करता है |
| Boot-सेवा 10-neo11-su.sh | फिक्सिंग ऐप करता है: persist.adb.tcp.port + adb_keys + ksud |
| अन्य डिवाइसों की ऑफसेट तालिकाएँ | केवल PD2520-BP2A.250605.031.A3 |
panic_on_oops=0, panic_on_warn=0 (पैनिक से सुरक्षा),
kptr_restrict/dmesg_restrict, AVC-ज़हरीकरण (policycap तोड़े बिना permissive)/system/bin/su पर फ़ॉरवर्डिंग, जब वह प्रकट होता हैएक्सप्लॉइट /data/local/tmp/su (0755, root:root, system_file context)
रखता है और सॉकेट /data/local/tmp/temp_su.sock के साथ डेमन शुरू करता है।
ऐप su को पूर्ण पथ से कॉल करता है — /apex को बिल्कुल छुआ नहीं जाता।
cd exploit
PATH=/data/data/com.termux/files/usr/bin:$PATH \
make HOST_CLANG=/data/data/com.termux/files/usr/bin/clang \
NDK_ROOT=/root/android-sdk/ndk/26.1.10909125
build/PD2520-BP2A.250605.031.A3/bin/preload.so (~140 KB)
और build/embed/su_daemon_aarch64_pie (su, ~11 KB)6.6.89-android15-8-g1f71897ac249-abogki467805059-4k (ऑफसेट इस boot.img के
kallsyms+BTF से; कर्नेल बदलना = target.h का पुनर्जनन)cd /data/local/tmp/rmv && LD_PRELOAD=$PWD/preload.so /system/bin/trueRMV_ATTEMPTS=N — पूर्ण प्रयासों की संख्या (डिफ़ॉल्ट 3)RMV_RETRY_DELAY=N — प्रयासों के बीच सेकंड में विराम (डिफ़ॉल्ट 8)NEO11_* — upstream के हैंडल (delay/nice/attempts) संरक्षित हैं| तंत्र | क्या करता है | किससे बचाता है |
|---|
| safety_quiesce | PI-मार्ग से पहले loadavg < 4 (10 सेकंड तक) की प्रतीक्षा करता है | किसी और के फ्रेम में waiter → उच्च सिस्टम लोड पर panic |
| cred-guard | cred लिखने से पहले जाँचता है कि पॉइंटर कैनोनिकल kernel-पते हैं | कचरा पॉइंटर लिखना → task_struct की तत्काल खराबी → panic |
| retry-चक्र | 3 पूर्ण रन तक (प्रत्येक ताज़ा fork में) 8 सेकंड के विराम के साथ | टाइमिंग लॉटरी: दूसरा प्रयास अक्सर सफल होता है, upstream बस हार मान लेता था |
| अनुकूली स्पिन | consumer-थ्रेड: 200 पुनरावृत्तियाँ yield → nanosleep(0.2 ms) | पूरे एक्सप्लॉइट के दौरान 100% CPU |