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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
GhostLock-for-OnePlus15T — (CVE-2026-43499)कर्नेल शोषण प्रोग्राम, अनलॉक किए गए Bootloader वाले OnePlus 15T के लिए उपयुक्त। | Kitploit
उपकरण/GitHubGitHub/cuteaplane/ghostlock-for-oneplus15t
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणमोबाइल सुरक्षापेलोड डेवलपमेंटबाइनरी शोषण
GitHubcuteaplane/ghostlock-for-oneplus15t

GhostLock-for-OnePlus15T

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

सभी देखें →

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

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

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

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

(CVE-2026-43499)कर्नेल शोषण प्रोग्राम, अनलॉक किए गए Bootloader वाले OnePlus 15T के लिए उपयुक्त।

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

GhostLock — OnePlus 15T

中文

लॉक्ड-बूटलोडर OnePlus 15T डिवाइसों के लिए कर्नेल शोषण। CVE-2026-43499 का उपयोग करके बूटलोडर अनलॉक किए बिना या boot.img संशोधित किए बिना रूट एक्सेस प्राप्त करता है।

केवल अधिकृत सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए।

मूल GhostLock-for-OnePlus रिपॉजिटरी से संशोधित, OnePlus 15T (PLZ110 / SM8850 / Snapdragon 8 Elite) की भौतिक मेमोरी लेआउट और CPU टाइमिंग के लिए अनुकूलित।


विषय-सूची

  • भेद्यता अवलोकन
  • समर्थित डिवाइस
  • पूर्वापेक्षाएँ
  • निर्माण (बिल्डिंग)
  • उपयोग
  • रन मोड
  • तकनीकी विवरण
  • फ़ाइल संरचना
  • नए डिवाइस जोड़ना
  • अक्सर पूछे जाने वाले प्रश्न

भेद्यता अवलोकन

आइटमविवरण
CVECVE-2026-43499
प्रकारFutex PI (प्रायोरिटी इनहेरिटेंस) Use-After-Free
दायराLinux कर्नेल 2.6.39 ~ 7.1
समाधानमेनलाइन 7.1 (कमिट 3bfdc63936dd)
Android स्थितिGKI 6.12.x अभी भी असुरक्षित

मूल कारण

pselect6 सिस्कॉल fd_set को कर्नेल स्टैक पर कॉपी करता है। जब इसे futex PI वेटर तंत्र के साथ जोड़ा जाता है, तो एक मुक्त (freed) स्टैक फ्रेम को rt_mutex_waiter संरचना के रूप में पुनः आवंटित किया जा सकता है। PI चेन ट्रैवर्सल के दौरान, rb-tree रीबैलेंसिंग नियंत्रित डेटा को मनमाने कर्नेल पतों पर लिखती है।

श्रृंखला

root@kitploit:~
futex PI UAF (CVE-2026-43499)
  ├─ rt_mutex_waiter ऑब्जेक्ट फोर्ज करें
  ├─ pselect/select fd_set लेआउट के माध्यम से कर्नेल स्टैक नियंत्रित करें
  ├─ मनमाना लेखन के लिए rt_mutex PI ऑपरेशन ट्रिगर करें
  ├─ लेखन 1: selinux_state.enforcing = 0
  └─ लेखन 2: cred → init_cred (uid=0, पूर्ण क्षमताएँ)

समर्थित डिवाइस

डिवाइसकोडनेमSoCकर्नेलफर्मवेयरस्थिति
OnePlus 15TPLZ110SM8850 (Snapdragon 8 Elite)6.12.38-android16-5-g844001fb8721-ab14552068-4kColorOS 16.0.9.400✅ सत्यापित

Ace 6T और OnePlus 15 के लिए, मूल रिपॉजिटरी देखें।


पूर्वापेक्षाएँ

ksud (KernelSU के लिए आवश्यक)

GhostLock विशेषाधिकार उन्नयन संभालता है। KernelSU स्थापना के लिए ksud की आवश्यकता होती है (KMI-विशिष्ट kernelsu.ko के साथ बंडल):

स्रोतनोट्स
ReSukiSU APK (अनुशंसित)ReSukiSU स्थापित करें; APK में libksud.so बंडल होता है

ksud के बिना, शोषण अभी भी uid=0 रूट शेल प्राप्त करता है, लेकिन KernelSU स्थापित नहीं होगा और su बरकरार नहीं रहेगा।


निर्माण (बिल्डिंग)

पूर्वापेक्षाएँ

  • Android NDK (r25+)
  • ANDROID_NDK_HOME या ANDROID_NDK_ROOT सेट करें

निर्माण

root@kitploit:~
# डिफ़ॉल्ट (API 35)
make

# API स्तर निर्दिष्ट करें
make API=34

# NDK पथ निर्दिष्ट करें
NDK=/path/to/android-ndk make

आर्टिफैक्ट

ghostlock — स्टैटिकली लिंक्ड ARM64 ELF निष्पादन योग्य।


उपयोग

एक-बार सेटअप

root@kitploit:~
# 1. ADB TCP मोड सक्षम करें
adb tcpip 5555

# 2. ADB कुंजी पुश करें (बूटस्ट्रैप मोड के लिए आवश्यक)
adb push ~/.android/adbkey /data/local/tmp/a/adbkey

# 3. शोषण पुश करें
adb push ghostlock /data/local/tmp/a/e
adb shell chmod 755 /data/local/tmp/a/e

पहली सफलता के बाद, resetprop स्वचालित रूप से persist.adb.tcp.port=5555 सेट करता है, जिससे बाद के रीबूट पर पूरी तरह से स्वचालित रन संभव हो जाते हैं।


रन मोड

पूर्ण शोषण (ADB शेल संदर्भ)

root@kitploit:~
/data/local/tmp/a/e
  • perf उपलब्ध, सटीक चाइल्ड task_struct लीकिंग
  • दो-चरणीय: W1 SELinux अक्षम करें → W2 विशेषाधिकार उन्नयन → KernelSU लोड

बूटस्ट्रैप मोड (ऐप संदर्भ, seccomp प्रतिबंधित)

root@kitploit:~
/data/local/tmp/a/e --bootstrap
  1. लेखन 1 → SELinux अक्षम करें
  2. मुक्त किए गए अनुमतियों का उपयोग करके setprop से ADB TCP 5555 सक्षम करें
  3. अंतर्निहित मिनी ADB क्लाइंट 127.0.0.1:5555 से कनेक्ट होता है
  4. पहले से पुश की गई कुंजी के साथ RSA प्रमाणीकरण
  5. ADB शेल के माध्यम से पूर्ण शोषण निष्पादन (कोई seccomp नहीं)

केवल लेखन 1

root@kitploit:~
/data/local/tmp/a/e --write1
  • 20 प्रयासों तक
  • डिबगिंग या अस्थायी SELinux अक्षम करने के लिए उपयोगी

तकनीकी विवरण

1. रनटाइम कर्नेल मिलान

src/devices/offsets.h लुकअप टेबल में संग्रहीत ऑफसेट, uname -r द्वारा कुंजीबद्ध। प्रोग्राम स्टार्टअप पर स्वचालित रूप से मिलान करता है; अज्ञात कर्नेल अस्वीकार कर दिए जाते हैं।

root@kitploit:~
static const struct kernel_offsets known_offsets[] = {
  OFFSETS_ENTRY("6.12.38-android16-5-...-ab14275539-4k", ...),
  OFFSETS_ENTRY("6.12.38-android16-5-...-ab14552068-4k", ...),
  OFFSETS_ENTRY("6.12.23-android16-5-...-ab14541642-4k", ...),
  { .uname_r = NULL }  /* sentinel */
};

ऑफसेट स्रोत

BTF-सत्यापित संरचनाएँ

2. KASLR बाईपास

SLIDE मोड — boot_id लीक

जब कर्नेल पॉइंटर प्रतिबंधित होते हैं (kptr_restrict), तो boot_id को कर्नेल पते के साथ अधिलेखित करके बेस पता लीक करें:

root@kitploit:~
/proc/sys/kernel/random/boot_id पढ़ें
  └─ UUID में nfulnl_logger पता होता है
      └─ KASLR slide = लीक हुआ पता - image_offset
          └─ kaslr_base

FOPS/CFI मोड — fops तालिका लीक

जब ashmem डिवाइस सुलभ हो, तो configfs रीड/राइट प्रिमिटिव्स का उपयोग करके ashmem fops तालिका से फ़ंक्शन पॉइंटर पढ़ें और KASLR ऑफसेट की गणना करें।

3. कर्नेल हीप स्प्रे

order-3 (32KB) पृष्ठों पर कर्नेल ऑब्जेक्ट फोर्ज करें:

  • नकली file_operations — ashmem miscdevice fops पॉइंटर हाईजैक करें
  • नकली rt_mutex_waiter — PI चेन वेटर नोड अनुकरण करें
  • नकली task_struct — PI ट्रैवर्सल के दौरान कार्य संदर्भ
  • नकली rt_mutex (लॉक) — सही वेटर/स्वामी जानकारी

SKB (सॉकेट बफ़र) + KernelSnitch के माध्यम से कार्यान्वित:

  • KernelSnitch — futex हैश टकराव से mm_struct पते लीक करें
  • SKB स्प्रे — कर्नेल हीप भरने के लिए sendmsg

4. भौतिक मेमोरी R/W (पाइप)

KASLR बेस प्राप्त करने के बाद, भौतिक-स्तरीय मेमोरी एक्सेस के लिए पाइप बफ़र्स का उपयोग करें:

root@kitploit:~
1. पाइप बफ़र को physmap में ढूँढें
2. ज्ञात pipe_buf_ops की ओर इशारा करने वाली नकली pipe_buffer ops तालिका बनाएं
3. pipe_buffer.page को लक्षित भौतिक पते पर हाईजैक करें
4. सामान्य पाइप संचालन के माध्यम से मनमाना भौतिक पढ़ना/लिखना

समर्थित: pipe_read64, pipe_write64, pipe_phys_read_data, pipe_phys_write_data

5. दो-चरणीय लेखन

लेखन 1 — SELinux अक्षम करें

root@kitploit:~
लक्ष्य: selinux_state.enforcing (ऑफसेट 0x00)
विधि: चाइल्ड-नोड PI लेखन → forge waiter __rb_parent_color
        selinux_enforcing - 8 की ओर इशारा करते हुए
        rb-tree रीबैलेंसिंग 0x00 लिखती है

लेखन 2 — रूट तक उन्नयन

root@kitploit:~
लक्ष्य: चाइल्ड प्रक्रिया cred पॉइंटर
विधि: 1. fork चाइल्ड → task_struct ढूँढने के लिए perf_find_task()
        2. cred फ़ील्ड ऑफसेट की गणना करें
        3. चाइल्ड-नोड PI लेखन → cred = init_cred (uid=0, पूर्ण क्षमताएँ)
        4. seccomp साफ़ करें (TIF_SECCOMP + seccomp संरचना शून्य)

cred अधिलेखन के बाद क्षमता रीडबैक सत्यापन किया जाता है।

6. अंतर्निहित मिनी ADB क्लाइंट

src/core/miniadb.c — बूटस्ट्रैप मोड के लिए हल्का ADB प्रोटोकॉल क्लाइंट:

root@kitploit:~
1. TCP कनेक्ट 127.0.0.1:5555
2. A_CNXN → कनेक्शन अनुरोध
3. A_AUTH → RSA टोकन चुनौती
4. dlopen("libcrypto.so") → PEM_read_bio_RSAPrivateKey → RSA_sign
5. A_AUTH (AUTH_SIGNATURE) → हस्ताक्षरित प्रतिक्रिया
6. A_CNXN → कनेक्शन स्थापित
7. A_OPEN "shell:/data/local/tmp/a/e" → पूर्ण शोषण

SHA-1 और SHA-256 हस्ताक्षर एल्गोरिदम का समर्थन करता है।


फ़ाइल संरचना

root@kitploit:~
ghostlock-oneplus/
├── Makefile                        # बिल्ड कॉन्फ़िगरेशन (NDK क्रॉस-कंपाइल)
├── README.md                       # दस्तावेज़ीकरण
├── src/
│   ├── core/                       # मुख्य शोषण कोड
│   │   ├── main.c                  # प्रवेश बिंदु: दो-चरणीय लेखन + रूट शेल
│   │   ├── fops.c                  # FOPS/CFI मोड: pselect मार्ग, PI लेखन, KASLR लीक
│   │   ├── util.c                  # उपयोगिताएँ: हीप स्प्रे, KASLR, कर्नेल R/W प्रिमिटिव्स
│   │   ├── slide.c                 # SLIDE मोड: boot_id KASLR लीक + pselect मार्ग
│   │   ├── pipe.c                  # पाइप बफ़र भौतिक मेमोरी R/W (physrw)
│   │   ├── root.c                  # Cred अधिलेखन, seccomp साफ़, रूट चाइल्ड प्रबंधन
│   │   ├── miniadb.c              # अंतर्निहित ADB क्लाइंट (TCP + RSA प्रमाणीकरण)
│   │   ├── common.h               # वैश्विक मैक्रोज़, संरचनाएँ, घोषणाएँ, स्थिरांक
│   │   ├── target.h               # लक्ष्य मेमोरी लेआउट / संरचना ऑफसेट / KASLR पैरामीटर
│   │   ├── offset.h               # कंपाइल-टाइम लक्ष्य कॉन्फ़िग ब्रिज (#include TARGET_CONFIG_H)
│   │   └── kernelsnitch/          # KernelSnitch — mm_struct पता लीक
│   │       ├── kernelsnitch.h     # मुख्य एल्गोरिदम: futex हैश टकराव + ब्रूट-फोर्स
│   │       ├── futex_hash.h       # Futex हैश फ़ंक्शन
│   │       ├── timeutils.h        # CPU टाइमस्टैम्प मापन (RDTSC)
│   │       └── utils.h            # सहायक मैक्रोज़ (pr_info / SYSCHK / ASSERT आदि)
│   └── devices/                   # डिवाइस ऑफसेट तालिकाएँ
│       ├── offsets.h              # सभी डिवाइस ऑफसेट एकत्रित करें (लुकअप तालिका + sentinel)
│       ├── ace6t/offsets.h        # OnePlus Ace 6T ऑफसेट (2 कर्नेल संस्करण)
│       └── op15/offsets.h         # OnePlus 15 ऑफसेट (1 कर्नेल संस्करण)
└── tools/                         # ऑफसेट निष्कर्षण टूलचेन
    ├── extract_target.py          # kallsyms वैश्विक प्रतीक ऑफसेट निकालें (28 आइटम)
    └── extract_btf.py             # BTF संरचना फ़ील्ड ऑफसेट निकालें (57 आइटम)

मुख्य मॉड्यूल अवलोकन


नए डिवाइस जोड़ना

इस रिपॉजिटरी को संशोधित किया गया है; विवरण के लिए मूल रिपॉजिटरी देखें।


FAQ

प्र: चलाने पर कोई आउटपुट नहीं?

सुनिश्चित करें कि आप ADB शेल में चला रहे हैं। ऐप संदर्भ के लिए --bootstrap की आवश्यकता होती है।

प्र: "no offsets for this kernel"?

आपका कर्नेल संस्करण अभी तक समर्थित नहीं है। ऑफसेट निकालने और पुनर्निर्माण के लिए नए डिवाइस जोड़ना का पालन करें।

प्र: लेखन 1 बार-बार विफल हो रहा है?

  • सही CPU कोर पर पिनिंग सुनिश्चित करें (CORE मैक्रो)
  • PSELECT_ENTER_DELAY_USEC टाइमिंग समायोजित करें
  • हस्तक्षेप करने वाली प्रक्रियाओं की जाँच करें

प्र: लेखन 2 perf 0 लौटाता है?

  • जाँचें कि क्या seccomp perf_event_open को अवरुद्ध करता है (ऐप संदर्भ में --bootstrap उपयोग करें)
  • सत्यापित करें कि KASLR बाईपास सफल हुआ (kaslr_base मान्य)

प्र: KernelSU लोड नहीं हो रहा?

  • पुष्टि करें कि ksud मौजूद है और निष्पादन योग्य है
  • नेटवर्क नीति फ़ाइल अखंडता जाँचें (load_policy फिक्स)

लाइसेंस

केवल अधिकृत सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए।

टूल डाउनलोड करें
CI रिलीज़ReSukiSU CI से डाउनलोड करें (ksud-aarch64-linux-android.zip)
प्रकारसंख्यानिष्कर्षण
kallsyms वैश्विक प्रतीक28tools/extract_target.py
BTF संरचना फ़ील्ड57tools/extract_btf.py
व्युत्पन्न मान9स्वचालित रूप से गणना
स्थिर स्थिरांक12हार्डकोडेड
संरचनाफ़ील्डउद्देश्य
task_struct17प्रक्रिया विवरणक, cred, seccomp
rt_mutex_waiter6UAF फोर्ज लक्ष्य
cred4क्रेडेंशियल, क्षमताएँ
seccomp3Seccomp फ़िल्टर स्थिति
pipe_inode_info11पाइप बफ़र संचालन
file_operations13नकली fops तालिका
mm_struct1मेमोरी विवरणक स्वामी
मॉड्यूलफ़ाइल(एँ)ज़िम्मेदारी
प्रवेशmain.cCLI पार्सिंग, W1/W2 डिस्पैच, बूटस्ट्रैप प्रवाह
PI मार्गfops.c / slide.cpselect/select स्टैक लेआउट, futex PI चेन हेरफेर
KASLRutil.c / fops.c / slide.cदोहरी-मोड बाईपास: boot_id लीक + fops तालिका लीक
हीप स्प्रेutil.corder-3 पृष्ठ आवंटन, SKB स्प्रे, forge ऑब्जेक्ट लेआउट
Phys R/Wpipe.cपाइप बफ़र हाईजैकिंग, मनमाना भौतिक मेमोरी एक्सेस
Priv Escroot.cCred अधिलेखन, क्षमता सत्यापन, seccomp साफ़
ADBminiadb.cहल्का ADB प्रोटोकॉल क्लाइंट, RSA प्रमाणीकरण
लीक इंजनkernelsnitch/mm_struct स्थान के लिए futex हैश टकराव