Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/cyberbalsa/ghostlock-nvidia-shield-9.2.4
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिशोषण फ्रेमवर्कस्थायित्व तंत्रशोषणमोबाइल सुरक्षापेलोड डेवलपमेंटबाइनरी शोषण

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
GitHub
cyberbalsa/ghostlock-nvidia-shield-9.2.4

GhostLock-NVIDIA-Shield-9.2.4

मान्य GhostLock CVE-2026-43499 पोर्ट NVIDIA Shield TV Pro mdarcy 9.2.4 के लिए

रिपॉजिटरी देखें
115घं 9मि पहलेअभी तक समीक्षित नहीं

NVIDIA Shield TV Pro 9.2.4 के लिए GhostLock

2019 NVIDIA Shield TV Pro (mdarcy) पर Shield Experience 9.2.4 चला रहे GhostLock futex PI use-after-free (CVE-2026-43499) का मान्य arm64 पोर्ट। पेलोड लाइव ADB डेमॉन की साख बदल देता है, इसलिए नए ADB शेल बूटलोडर अनलॉक, यूज़रडेटा वाइप, su इंस्टॉलेशन, या सत्यापित-पार्टीशन संशोधन के बिना UID 0 पर चलते हैं।

यह अधिकृत सुरक्षा अनुसंधान के लिए एक बिल्ड-विशिष्ट कर्नेल एक्सप्लॉइट है। बेमेल या खोई हुई रेस कर्नेल को पैनिक कर सकती है। इसे किसी अन्य फ़िंगरप्रिंट, कर्नेल, डिवाइस, या हार्डवेयर संशोधन पर न चलाएँ।

मान्य लक्ष्य

फ़ील्डआवश्यक मान
उत्पादNVIDIA Shield TV Pro 2019, mdarcy
फ़िंगरप्रिंटNVIDIA/mdarcy/mdarcy:11/RQ1A.210105.003/7825230_4387.0822:user/release-keys
कर्नेल4.9.141-tegra-gb6e5605a
Android पैच स्तर2026-01-05
कर्नेल आधार0xffffff8008080000 (ऑफ़सेट अक्षम)

पोर्ट को हरे Verified Boot और लागू dm-verity वाले लॉक किए गए डिवाइस पर मान्य किया गया था। वे तंत्र बरकरार रहते हैं क्योंकि एक्सप्लॉइट केवल लाइव कर्नेल स्थिति बदलता है।

परिणाम और जीवनकाल

सफल रन के बाद, एक नया कनेक्शन adbd और उसके चाइल्ड शेल दोनों के लिए UID/GID 0, क्षमता 37 तक पूर्ण क्षमताएँ, seccomp अक्षम, और SELinux permissive रिपोर्ट करता है। रूट ADB क्लाइंट डिस्कनेक्ट से बच जाता है। यह adbd पुनरारंभ या डिवाइस रीबूट से अपने आप नहीं बचता।

सत्यापित पार्टीशन संशोधित किए बिना व्यावहारिक रीबूट स्थिरता के लिए, रिपॉज़िटरी में एक यूज़रडेटा APK शामिल है। इसका गैर-निर्यातित BOOT_COMPLETED रिसीवर एक अल्पकालिक फ़ोरग्राउंड सेवा शुरू करता है, जो एक अनप्रिविलेज्ड ऐप UID से प्रति बूट एक बार हैश-पिन किया गया एक्सप्लॉइट चलाता है और रनर के बाहर निकलने पर रुक जाता है। इंस्टॉलेशन के बाद किसी बाहरी होस्ट की आवश्यकता नहीं है। एक बाहरी Podman वॉचडॉग पुनर्प्राप्ति फ़ॉलबैक के रूप में उपलब्ध रहता है। देखें persistence/README.md और watchdog/README.md।

यह स्वायत्त पुनः-एक्सप्लॉइटेशन है, स्थिर फ़र्मवेयर पैच नहीं: हर बूट में एक छोटा अंतराल होता है जिसमें adbd के पास अभी भी अपनी स्टॉक साख होती है। Android द्वारा इसे आरंभ करने से पहले adbd को रूट के रूप में शुरू करने के लिए सत्यापित बूट श्रृंखला बदलने की आवश्यकता होगी, जो इस लॉक किए गए, बिना-वाइप डिज़ाइन के दायरे से बाहर है।

एक्सप्लॉइट श्रृंखला

  1. कमजोर futex PI रोलबैक पथ को ट्रिगर करें और कर्नेल स्टैक पर एक पुराना rt_mutex_waiter बनाए रखें।
  2. पुनः प्राप्त स्टैक को MCAST_BLOCK_SOURCE से स्टैम्प करें और rt-mutex ट्री ऑपरेशन को पुनर्निर्देशित करें।
  3. आकार वाले skb पेलोड के साथ एक मुक्त order-2 mm_struct स्लैब पेज को पुनः प्राप्त करें।
  4. ashmem_misc.fops को लीगेसी configfs रीड/राइट हैंडलर द्वारा समर्थित नकली तालिका में पुनर्निर्देशित करें।
  5. कार्य सूची को पार करें, अनुरोधित adbd PID का पता लगाएँ, और इसकी पूर्ण साख वस्तु सत्यापित करें।
  6. IDs, securebits, और क्षमता शब्दों पर एक सीमित लेखन करें; SELinux को permissive बनाएँ; फिर ashmem ऑपरेशन और बूट-ID पॉइंटर को पुनर्स्थापित करें।

विरासत में मिला पाइप-बफर भौतिक रीड/राइट चरण उपयोग नहीं किया जाता है। विस्तृत लक्ष्य अवलोकन और सत्यापित ऑफ़सेट PORT_STATUS.md में हैं।

बिल्ड

कंपाइलर Android NDK r29 (aarch64-linux-android30-clang) है। स्थापित Linux NDK के साथ सीधे बिल्ड करें:

root@kitploit:~
cd exploit
make NDK=/opt/android-ndk-r29

या आपूर्ति की गई Podman छवि बनाएँ, जो आधिकारिक r29 Linux संग्रह डाउनलोड करती है और निष्कर्षण से पहले इसका प्रकाशित SHA-1 जाँचती है:

root@kitploit:~
podman build -t ghostlock-android:ndk-r29 -f build/Containerfile .
podman run --rm \
  -v "$PWD:/src:Z" \
  -w /src/exploit \
  ghostlock-android:ndk-r29 make -B

आउटपुट:

root@kitploit:~
exploit/build/preload-mdarcy-9.2.4.so
SHA-256 a3a1e75b627d8dd419e9bafd2a73082a8647510bf6ce4f975e52baf5aa1d0761

Shield बिल्ड जानबूझकर संदर्भ परियोजना के एम्बेडेड su डेमॉन और वॉलपेपर पेलोड को बाहर करता है।

चलाएँ

अधिकृत नेटवर्क ADB पर कनेक्ट करें, रिलीज़ एसेट या स्थानीय बिल्ड पुश करें, फिर ADB शेल दर्ज करें:

root@kitploit:~
adb connect SHIELD_ADDRESS:5555
adb -s SHIELD_ADDRESS:5555 push \
  exploit/build/preload-mdarcy-9.2.4.so \
  /data/local/tmp/preload-mdarcy-9.2.4.so
adb -s SHIELD_ADDRESS:5555 shell chmod 0755 \
  /data/local/tmp/preload-mdarcy-9.2.4.so
adb -s SHIELD_ADDRESS:5555 shell

इसे उस डिवाइस शेल के अंदर चलाएँ:

root@kitploit:~
GHOSTLOCK_FIXED_BASE=1 \
GHOSTLOCK_MAIN_ROUTE=slide-mcast \
GHOSTLOCK_SLIDE_FULL_LOCK=1 \
GHOSTLOCK_MIXED_ORDER_PAYLOAD=1 \
GHOSTLOCK_MM_PARTIALS=14 \
GHOSTLOCK_BUDDY_HOLD_PAIRS=256 \
GHOSTLOCK_BUDDY_HOLD_SENDS=8192 \
GHOSTLOCK_RECLAIM_PAIRS=64 \
GHOSTLOCK_RECLAIM_SENDS=2048 \
GHOSTLOCK_ADBD_ROOT_CONFIGFS=1 \
GHOSTLOCK_ADBD_PID="$(pidof adbd)" \
LD_PRELOAD=/data/local/tmp/preload-mdarcy-9.2.4.so \
/system/bin/true

सत्यापन के लिए डिस्कनेक्ट करें और एक नया ट्रांसपोर्ट खोलें:

root@kitploit:~
adb disconnect SHIELD_ADDRESS:5555
adb connect SHIELD_ADDRESS:5555
adb -s SHIELD_ADDRESS:5555 shell id
adb -s SHIELD_ADDRESS:5555 shell \
  'grep -E "^(Uid|Gid|Cap(Inh|Prm|Eff|Bnd|Amb)|Seccomp):" /proc/$(pidof adbd)/status'

पेलोड पहले से UID-0 वाले ADB शेल से पुनः ट्रिगर करने से इनकार करता है जब तक कि GHOSTLOCK_FORCE_ROOT_TRIGGER=1 जानबूझकर प्रदान न किया जाए। इसे बल न दें; विशेषाधिकार प्राप्त शेड्यूलिंग पथ में अलग PI व्यवहार है और यह पैनिक कर सकता है।

ऑन-डिवाइस स्थिरता

हस्ताक्षरित रिलीज़ APK को persistence/app/build/ghostlock-boot-mdarcy-9.2.4.apk पर डाउनलोड करें, फिर अधिकृत PowerShell ADB होस्ट से इसे इंस्टॉल और आर्म करें:

root@kitploit:~
./persistence/install.ps1 `
  -Target SHIELD_ADDRESS:5555 `
  -AdbPath C:/path/to/platform-tools/adb.exe

इंस्टॉलर केवल यूज़रडेटा बदलता है और रीबूट नहीं करता। अगले BOOT_COMPLETED पर, ऐप सटीक फ़िंगरप्रिंट, कर्नेल, और एम्बेडेड पेलोड हैश सत्यापित करता है, अपना प्रयास रिकॉर्ड करता है, और अपने सामान्य ऐप UID से GhostLock को आमंत्रित करता है। एक फ़ाइल लॉक, प्रति-बूट एक-प्रयास स्थिति, और 15-मिनट का क्रॉस-बूट कूलडाउन डुप्लिकेट या रीबूट-लूप प्रयासों को रोकता है। यह कोई su बाइनरी स्थापित नहीं करता। Android केवल तब एक कम-प्राथमिकता वाला Restoring ADB root नोटिफिकेशन दिखाता है जब नेटिव रनर सक्रिय होता है; प्रक्रिया बाहर निकलने पर वेटर इसे हटा देता है। बिल्ड, साइनिंग, लॉग, सत्यापन, पुनर्प्राप्ति, और अनइंस्टॉल विवरण के लिए देखें persistence/README.md।

अंतिम APK को बाहरी वॉचडॉग बंद होने पर मान्य किया गया था: बूट गणना 134 ने पहले स्टॉक UID-2000/enforcing adbd उजागर किया, और अगला नया ट्रांसपोर्ट पूर्ण 0x3fffffffff क्षमता मास्क, seccomp अक्षम, और SELinux permissive के साथ UID/GID 0 था। सेवा और नोटिफिकेशन ने स्वयं को साफ कर लिया था।

लॉग और पुनर्प्राप्ति

मैनुअल-रन डायग्नोस्टिक्स समकालिक रूप से /sdcard/Download/log_<timestamp>.txt पर लिखे जाते हैं, /data/local/tmp पर फ़ॉलबैक के साथ। बूट ऐप रनर और पेलोड आउटपुट को अपने निजी files/boot.log पर पुनर्निर्देशित करता है, जो run-as com.cyberbalsa.ghostlockboot के साथ पठनीय है। यदि रेस कर्नेल को पैनिक करती है, तो प्री-ट्रिगर स्थिति उस बूट गणना में किसी अन्य प्रयास को रोकती है और 15-मिनट का कूलडाउन रीबूट के पार जारी रहता है।

रिपॉज़िटरी मानचित्र

  • exploit/src/: ट्रिगर, पुनः प्राप्ति, मनमाना रीड/राइट, और सीमित adbd साख पैच।
  • exploit/targets/shield-mdarcy-9.2.4/: सटीक बिल्ड-विशिष्ट लक्ष्य लेआउट।
  • analysis/: कर्नेल प्रतीक और लेआउट निष्कर्षण सहायक।
  • persistence/: ऑन-डिवाइस बूट APK, नेटिव रनर, और इंस्टॉलर।
  • watchdog/: हैश-पिन किया गया होस्ट-साइड पुनर्प्राप्ति फ़ॉलबैक।
  • report.md: उत्पत्ति के लिए बनाए रखा गया मूल OPPO संदर्भ-पोर्ट विश्लेषण।

क्रेडिट और लाइसेंस

यह पोर्ट NebuSec द्वारा प्रकाशित GhostLock अनुसंधान और एक्सप्लॉइट फ्रेमवर्क और yijiacloud द्वारा OPPO PCKM00 संदर्भ पोर्ट से लिया गया है। KernelSnitch अपनी अपस्ट्रीम शर्तों के तहत एम्बेडेड है।

  • https://github.com/NebuSec/CyberMeowfia
  • https://github.com/yijiacloud/GhostLock-OPPO-PCKM00
  • https://github.com/torvalds/linux/commit/3bfdc63936dd4773109b7b8c280c0f3b5ae7d349

Apache-2.0; देखें LICENSE।

टूल डाउनलोड करें