Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ghostlock-app — # घोस्टलॉक वन-टैप निष्पादन ऐप (CVE-2026-43499) | Kitploit
उपकरण/GitHubGitHub/yukonga/ghostlock-app
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिशोषण फ्रेमवर्कशोषणरिवर्स इंजीनियरिंगमोबाइल सुरक्षाबाइनरी विश्लेषण
GitHubyukonga/ghostlock-app

ghostlock-app

# घोस्टलॉक वन-टैप निष्पादन ऐप (CVE-2026-43499)

रिपॉजिटरी देखें
1.4k370555 दिन पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

GhostLock-App

中文: README_ZH.md

दस्तावेज़ीकरण

  • Kernel Profile Porting Guide - नए kernel के लिए समर्थन जोड़ें। GhostLock kernels को सटीक uname -r से मिलाता है और असमर्थित builds को अस्वीकार करता है, शीर्ष पर स्थिति दिखाते हुए। अंतर्निहित profiles app/src/main/assets/kernel_profiles/ में रहते हैं: प्रति release एक HOCON फ़ाइल, runtime index के रूप में index.conf, और <major.minor>-template.conf version-family templates।
  • समर्थित डिवाइस - अंतर्निहित kernel सूची।
  • साझा निष्पादन डिफ़ॉल्ट - प्रत्येक execution-tuning फ़ील्ड, उसका डिफ़ॉल्ट, और क्यों।
  • Profile schema - पूर्ण profile संरचना और डेटा प्रवाह।
  • एक component जोड़ना - नए native middleware / backend / frontend के लिए डेवलपर गाइड (चीनी)।

पूर्ण device-porting workflow, kernel-family template लिंक, और tuning rationale के लिए, Kernel Profile Porting Guide देखें।

स्पष्ट रूप से Shizuku required चिह्नित पंक्तियाँ shell UserService के माध्यम से चलती हैं। ADB के साथ Shizuku शुरू करें और पहुँच देने के लिए status card पर टैप करें; अन्य सभी पंक्तियाँ ऐप के सामान्य execution path का उपयोग करती हैं।

त्वरित शुरुआत

GhostLock खोलें और Run पर टैप करें। KernelSU (me.weishu.kernelsu), ReSukiSU (com.resukisu.resukisu), या KowSU (com.kowx712.supermanager) module loading के लिए ksud प्रदान करता है; इसके बिना, W1/W2 अभी भी uid 0 प्रदान करते हैं लेकिन कोई module लोड नहीं होता।

Execution chain तीन components की एक pipeline है: एक frontend (root_child startup/handoff), एक backend (CVE-2026-43499 futex primitive), और एक middleware route। Catalogued combinations build time पर instantiate होते हैं; resolved profile चुनता है कि कौन सा चलेगा। Route दो cores को race करता है: 6.6/6.12 tree-waiter kernels पर main thread select को hammer करता है जबकि एक consumer thread waiter की priority को perturb करता है; 6.1 compact-waiter kernels पर यह punched-hole page के माध्यम से getsockopt(TCP_ZEROCOPY_RECEIVE) को drive करता है; 5.15 kernels multicast waiter का उपयोग करते हैं। CPU pair भी resolved profile से आता है।

कमांड-लाइन डिबगिंग

adb/shell में कोई seccomp filter नहीं है, इसलिए W3 छोड़ दिया जाता है - त्वरित सत्यापन के लिए उपयोगी:

make -C src ghostlock
./gradlew exportKernelProfiles
adb push build/native/ghostlock /data/local/tmp/ghostlock
adb push build/kernel-profiles/<release>.bin /data/local/tmp/profile.bin
adb shell chmod 755 /data/local/tmp/ghostlock
adb shell /data/local/tmp/ghostlock --load-prebuilt-profile /data/local/tmp/profile.bin

Offset निष्कर्षण

tools/extract_rs एक boot.img (साथ में वैकल्पिक xbl_config.img), एक पूर्ण OTA ZIP, या उसकी ओर इंगित करने वाले http(s) URL से offsets प्राप्त करता है। kallsyms --kallsyms से आते हैं या image की embedded table से recover किए जाते हैं। pselect_waiter_shift और off_slide_loggers_0_1 अंतर्निहित arm64 disassembler द्वारा प्राप्त किए जाते हैं। MediaTek images में xbl_config.img नहीं होता और आमतौर पर BTF भी नहीं: physical load address kallsyms _text से प्राप्त होता है (--phys से override करें)।

Push-Location tools/extract_rs
cargo build --release
Pop-Location
build/extract/release/ghostlock-extract.exe boot.img --xbl-config xbl_config.img --format conf --out profile.conf
build/extract/release/ghostlock-extract.exe OTA.zip --format conf --out profile.conf

--format conf extractor का output है: एक flattened, self-contained profile (कोई include lines नहीं, साझा 6.x credential/KernelSnitch constants inline, route --analysis evidence से चुना गया जब तक --route इसे override न करे)। Extractor वह हर field emit करता है जो image वास्तव में देता है और बाकी को छोड़ देता है; यह कभी भी पड़ोसी kernel family के अनुमानों (unverified-family 6.6, डिफ़ॉल्ट -2, 5.15 multicast constants, या एक phys default) से अंतराल नहीं भरता। प्रत्येक output एक unverified candidate है: importable और parseable, जिसमें missing या invalid fields ऐप के pre-execution validation द्वारा blocked होते हैं, इसलिए एक सफल run कभी भी device support का संकेत नहीं देता। 5.x पर यह init_cred से credential reference repair और BTF से multicast geometry भी प्राप्त करता है (docs/analysis/extractor-5x-derivation-plan.md देखें)। --format json v1 import path के लिए बना रहता है। एक built-in profile जोड़ने के लिए, matching version-family template को पूरा करें और validate करें, इसे एक standalone .conf profile के रूप में सहेजें, और इसे kernel_profiles/index.conf में जोड़ें। पुराना C offsets.h registry deprecated और हटा दिया गया है।

MediaTek

MediaTek images में xbl_config.img नहीं होता और आमतौर पर embedded BTF भी नहीं, इसलिए extractor image से दो physical addresses (kernel_phys_load, kernel_phys_offset) प्राप्त नहीं कर सकता और उन्हें null छोड़ देता है। Runtime तब SoC formula पर fallback करता है, जो MediaTek पर W1 पर विफल हो जाता है। दोनों को भरने के लिए rooted device पर अलग tools/mtk-phys/ extractor चलाएँ (यह /proc/iomem पढ़ता है) और मानों को ऐप के advanced overrides में paste करें। देखें MEDIATEK.md।

Preflight

Extractor offsets निकालने से पहले remove_waiter() को disassemble करता है। Fix वाले kernels exit code 6 के साथ अस्वीकार किए जाते हैं; केवल vulnerable kernels आगे बढ़ते हैं।

डिवाइस पर विश्लेषण

एक पूर्ण OTA पूरी तरह से फ़ोन पर analyze किया जा सकता है: boot और xbl_config स्वचालित रूप से extract होते हैं। ऐप sandbox के अंदर चलाते समय --work-dir को एक app-writable dir दें। Cross-compile करें और push करें:

rustup target add aarch64-linux-android
$ndk = "$env:ANDROID_HOME\ndk\<version>\toolchains\llvm\prebuilt\windows-x86_64\bin"
$env:CC_aarch64_linux_android = "$ndk\aarch64-linux-android35-clang.cmd"
$env:AR_aarch64_linux_android = "$ndk\llvm-ar.exe"
$env:CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER = $env:CC_aarch64_linux_android
Push-Location tools/extract_rs
cargo build --release --target aarch64-linux-android
Pop-Location
adb push build/extract/aarch64-linux-android/release/ghostlock-extract /data/local/tmp/
adb shell /data/local/tmp/ghostlock-extract /sdcard/OTA.zip

ऐप को rebuild किए बिना offsets import करना

नए kernels को अब ऐप rebuild की आवश्यकता नहीं है: Import offsets.conf (HOCON) पर टैप करें और extractor की flattened .conf चुनें, या पुरानी JSON report के लिए Import offsets.json (v1) का उपयोग करें। v1 JSON ऐप में convert किया जाता है, इसलिए device पर कुछ भी push नहीं करना पड़ता: native हमेशा ऐप द्वारा stdin पर भेजे गए GLK1 document से शुरू होता है, और kernel को अस्वीकार करने से पहले resolved profile के विरुद्ध वर्तमान uname -r से मिलाता है। Imports फ़ाइलों में merge होते हैं; पहले से संग्रहीत release overwrite से पहले prompt करता है।

ऐप profile स्वयं भी generate कर सकता है — Parse OTA link (पूर्ण OTA ZIP URL) और Parse image (boot.img + वैकल्पिक xbl_config.img) extractor को in-process चलाते हैं और सफलता पर ऐप data dir में एक flattened .conf लिखते हैं:

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