
# CVE-2026-43499 (futex UAF) का उपयोग करके Redmi K50G/POCO F4 GT के लिए स्थानीय विशेषाधिकार वृद्धि शोषण, जो बूटलोडर को अनलॉक किए बिना अस्थायी रूट प्राप्त करने और KernelSU लोड करने के लिए है।
免解锁 BL 一键临时 Root。利用 GhostLock(CVE-2026-43499, futex PI Use-After-Free) 本地提权链拿到 root 锚点,随后通过 KernelSU 3.3.0 late-load 方式把 kernelsu 模块挂载进运行中的内核,配合 KSU 模块保持 SELinux Permissive 并修复网络。
लक्ष्य डिवाइस: Redmi K50G / POCO F4 GT —— कोडनेम
ingres, SoC SM8450 (Snapdragon 8 Gen 1) सिस्टम: Android 14, UKQ1.240624.001, कर्नेल 5.10.209-android12 (KMIandroid12-5.10) स्थिति: ✅ वास्तविक डिवाइस पर अस्थायी Root सफलतापूर्वक सत्यापित
| फ़ाइल | कार्य |
|---|---|
exploit | GhostLock प्रिविलेज एस्केलेशन बाइनरी (ARM64 PIE, strip नहीं की गई)। इसमें KernelSnitch mm कोलिज़न लोकेटिंग, futex PI UAF स्टैक ओवरराइट, कर्नेल एंकर root, su daemon, एम्बेडेड libksud.so और KSU late-load लॉजिक शामिल हैं |
Root-K50G.bat | Windows वन-क्लिक स्क्रिप्ट (अपनी ही डायरेक्टरी से फ़ाइलें ढूँढती है, डबल-क्लिक करते ही काम करती है): डिवाइस का पता लगाएँ → फ़ाइलें पुश करें → प्रिविलेज एस्केलेशन चलाएँ → सीधे root shell में प्रवेश करें |
ksu_loader.sh | root प्राप्त कर्नेल एंकर द्वारा निष्पादित: libksud.so late-load --kmi 5.10.209-android12 से KernelSU लोड करता है, और क्रमशः post-fs-data / services / boot-completed चरणों को ट्रिगर करता है |
ksu-module/chuxin_permissive_netfix/ | KernelSU मॉड्यूल (module.prop + service.sh): हर 2 सेकंड में enforce=0 की निगरानी करता है, और टैम्पर-प्रूफ़ प्रॉपर्टी रीसेट करता है, netd को पुनः आरंभ करता है, wifi/डेटा चालू करके नेटवर्क कटौती ठीक करता है |
adb/ | अंतर्निहित adb टूल (पोर्टेबल, इंस्टॉल की आवश्यकता नहीं) |
adb驱动无需重启.exe | Xiaomi ड्राइवर वन-क्लिक इंस्टॉल टूल |
पूरी श्रृंखला चार चरणों में विभाजित है:
FUTEX_WAIT_REQUEUE_PI + FUTEX_CMP_REQUEUE_PI) से कर्नेल स्टैक पर लटकता हुआ rt_mutex_waiter बनाया जाता है;rt_mutex_adjust_prio_chain वॉकथ्रू को ट्रिगर करता है, जिससे नियंत्रित कर्नेल रीड/राइट प्रिमिटिव प्राप्त होता है।cred इंजेक्ट किया जाता है (uid/gid=0, पूर्ण caps, kernel SID), जिससे एक root एंकर प्रोसेस प्राप्त होता है (रन लॉग में anchor: ROOT uid=0);SHELL_ROOT=1) और su daemon (SU_DAEMON=1, /data/local/tmp/su)।kernelsu.ko को libksud.so late-load --kmi 5.10.209-android12 के माध्यम से चल रहे कर्नेल में लोड किया जाता है (फ़्लैशिंग/बूट इमेज पैचिंग की आवश्यकता नहीं, डिवाइस के वर्तमान KMI से सटीक मिलान);ksu_loader.sh क्रमशः post-fs-data, services, boot-completed निष्पादित करता है, जिससे KernelSU प्रबंधन फ़्रेमवर्क (ksud) सामान्य रूप से शुरू हो जाता है।chuxin_permissive_netfix को /data/adb/modules/ में इंस्टॉल किया जाता है: इसकी service ksu डोमेन में चलती है (जिसके पास security:setenforce अनुमति है), हर 2 सेकंड में enforce को 0 पर वापस लिखती है, जिससे ksud द्वारा boot-completed के बाद SELinux को Enforcing में वापस बदलने के व्यवहार का प्रतिकार होता है (su socket के AVC अस्वीकृति + नेटवर्क कटौती की रोकथाम);ro.boot.flash.locked / verifiedbootstate / वारंटी बिट प्रॉपर्टी रीसेट की जाती हैं और netd पुनः आरंभ किया जाता है, जिससे Root के बाद नेटवर्क ठीक हो जाता है।Root-K50G.bat पर डबल-क्लिक करें;id दर्ज करके uid=0(root) सत्यापित करें;/data/local/tmp/su -c id से भी सत्यापित कर सकते हैं।adb push exploit /data/local/tmp/exploit
adb push ksu_loader.sh /data/local/tmp/ksu_loader.sh
adb shell chmod 755 /data/local/tmp/exploit /data/local/tmp/ksu_loader.sh
adb shell "env NO_COLOR=1 SE_LINUX=1 KSU_LOADER=1 SHELL_ROOT=1 SU_DAEMON=1 SUSPECT_CPU=99999 KS_MAX_TRIES=8 /data/local/tmp/exploit"
रन पूरा होने के बाद सत्यापित करें:
adb shell /data/local/tmp/su -c id
# uid=0(root) gid=0(root) ...
| चर | डिफ़ॉल्ट | अर्थ |
|---|---|---|
NO_COLOR | 0 | रंगीन लॉग बंद करें |
SE_LINUX | 0 | SELinux Permissive flip सक्षम करें (कर्नेल एंकर सीधे enforce लिखें) |
KSU_LOADER | 0 | root एंकर के भीतर ksu_loader.sh निष्पादित करें (KernelSU late-load) |
SHELL_ROOT | 0 | एंकर के भीतर root shell fork करें |
SU_DAEMON | 0 | एंकर के भीतर /data/local/tmp/su daemon प्रारंभ करें |
SUSPECT_CPU | - | संदिग्ध CPU निर्दिष्ट करें (एंकर बाइंडिंग), 99999 का अर्थ स्वचालित |
KS_MAX_TRIES | - | KernelSnitch mm टकराव/एंकर प्रयास की अधिकतम सीमा |
chuxin_permissive_netfix मॉड्यूल का service.sh स्वचालित रूप से प्रॉपर्टी रीसेट करेगा और netd को पुनः प्रारंभ करेगा (LSPosed आदि मॉड्यूल फ्लैश करने के बाद भी प्रभावी रहता है);इस रिपॉज़िटरी की सामग्री केवल सुरक्षा अनुसंधान और व्यक्तिगत डिवाइस परीक्षण के लिए है। प्रिविलेज एस्केलेशन/सिस्टम स्थिति में परिवर्तन में कुछ जोखिम हैं, अनुचित संचालन से डिवाइस ब्रिक हो सकता है या डेटा हानि हो सकती है। कृपया सिद्धांत को पूरी तरह समझने और परिणामों की स्वयं ज़िम्मेदारी लेने की शर्त पर इसका उपयोग करें, अवैध उद्देश्यों के लिए इसका उपयोग न करें।
संदर्भ: CVE-2026-43499 (GhostLock) —— Linux कर्नेल futex प्राथमिकता विरासत UAF, 2.6.39 ~ 7.1 कर्नेल को प्रभावित करता है, स्थानीय प्रिविलेज एस्केलेशन संभव है।