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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
DIRTYFAIL — लिनक्स पेज-कैश लेखन भेद्यताओं के लिए डिटेक्टर + PoC: Copy Fail (CVE-2026-31431) और Dirty Frag (CVE-2026-43284/43500)। केवल अधिकृत सुरक्षा अनुसंधान के लिए। | Kitploit
उपकरण/GitHubGitHub/karazajac/dirtyfail
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगपेपर और शोधलर्निंग और शिक्षारेड टीमिंगकंटेनर एस्केपबाइनरी शोषणलैब और अभ्यास
GitHubkarazajac/dirtyfail
2612164 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

DIRTYFAIL

लिनक्स पेज-कैश लेखन भेद्यताओं के लिए डिटेक्टर + PoC: Copy Fail (CVE-2026-31431) और Dirty Frag (CVE-2026-43284/43500)। केवल अधिकृत सुरक्षा अनुसंधान के लिए।

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

DIRTYFAIL

एक एकीकृत डिटेक्टर और PoC हार्नेस, Copy Fail और Dirty Frag लिनक्स पेज-कैश लेखन भेद्यता परिवारों के लिए।``` ██████╗ ██╗██████╗ ████████╗██╗ ██╗███████╗ █████╗ ██╗██╗ ██╔══██╗██║██╔══██╗╚══██╔══╝╚██╗ ██╔╝██╔════╝██╔══██╗██║██║ ██║ ██║██║██████╔╝ ██║ ╚████╔╝ █████╗ ███████║██║██║ ██║ ██║██║██╔══██╗ ██║ ╚██╔╝ ██╔══╝ ██╔══██║██║██║ ██████╔╝██║██║ ██║ ██║ ██║ ██║ ██║ ██║██║███████╗ ╚═════╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝╚══════╝

DIRTYFAIL एक छोटा, अच्छी तरह से प्रलेखित C टूल है जो सुरक्षा शोधकर्ताओं के लिए है।
यह पता लगाता है कि कोई Linux होस्ट इस परिवार के तीन CVEs के लिए
असुरक्षित है या नहीं, और — स्पष्ट, टाइप की गई पुष्टि के साथ — एक वास्तविक
proof-of-concept चलाता है जो कॉल करने वाले को असुरक्षित सिस्टम पर
root शेल में डाल देता है।

| CVE / वैरिएंट | नाम | DIRTYFAIL कवरेज |
|---|---|---|
| **CVE-2026-31431** | Copy Fail (algif_aead `authencesn` पेज-कैश लेखन) | पता लगाना + पूर्ण PoC |
| **CVE-2026-43284 v4** | Dirty Frag — IPv4 xfrm-ESP पेज-कैश लेखन          | पता लगाना + पूर्ण PoC |
| **CVE-2026-43284 v6** | Dirty Frag — IPv6 xfrm-ESP पेज-कैश लेखन (`esp6`) | पता लगाना + पूर्ण PoC |
| **CVE-2026-43500**    | Dirty Frag — RxRPC पेज-कैश लेखन                  | पता लगाना + पूर्ण PoC |
| Copy Fail GCM वैरिएंट | xfrm-ESP `rfc4106(gcm(aes))` पेज-कैश लेखन        | पता लगाना + पूर्ण PoC |

**बोनस मोड:**

- **`--scan --active`** — sentinel-STORE सक्रिय प्रोब। डिफ़ॉल्ट `--scan`
  प्रति-CVE पूर्वशर्तें (कर्नेल, मॉड्यूल, LSM स्थिति) के साथ-साथ एक
  Copy Fail प्रिमिटिव का सक्रिय प्रोब रिपोर्ट करता है। `--active` जोड़ने से
  sentinel-फ़ाइल STORE प्रोब अन्य चारों प्रिमिटिव (ESP v4,
  ESP v6, RxRPC, GCM) तक विस्तृत होता है: प्रत्येक `/tmp` sentinel के विरुद्ध
  कर्नेल ट्रिगर चलाता है और केवल तभी VULNERABLE रिपोर्ट करता है जब मार्कर बाइट्स वास्तव में
  पहुँचते हैं। यह पूर्ण exploit चलाए बिना backport-पैच किए गए
  कर्नेल (पूर्वशर्तें असुरक्षित कहती हैं लेकिन प्रोब सुरक्षित कहता है) को
  बिना-पैच वाले कर्नेल से अलग करने का एकमात्र तरीका है। `/etc/passwd` को
  कभी स्पर्श नहीं किया जाता। V6 STORE शिफ्ट प्रति कर्नेल बिल्ड स्वतः कैलिब्रेट करता है।
- **`--exploit-backdoor`** — लगातार बना रहने वाला uid-0 बैकडोर: लंबाई-मिलान वाला
  `/etc/passwd` में `nologin`/`false`/`sync` पंक्ति का अधिलेखन
  `dirtyfail::0:0:<pad>:/:/bin/bash` के साथ। पेज निकाले जाने तक शेल से बाहर निकलने के बाद भी
  बना रहता है। `--cleanup-backdoor` के लिए स्थिति `/var/tmp/.dirtyfail.state` पर
  संग्रहीत होती है। `dirtyfail` उपयोगकर्ता नाम जानबूझकर
  इस प्रोजेक्ट से मेल खाता है ताकि इसे किसी भी ऑडिट में तुरंत पहचाना जा सके —
  यदि आपको अधिकृत red-team अभ्यास के लिए कोई अलग पहचानकर्ता चाहिए तो
  `src/backdoor.c` में `NEW_USER` बदलें।
- **AppArmor बायपास** — Ubuntu की
  `apparmor_restrict_unprivileged_userns=1` नीति को एकल-हॉप
  `change_onexec("crun")` पुनः-निष्पादन के माध्यम से एक unconfined प्रोफ़ाइल में पराजित करता है जो
  userns क्षमताएँ बनाए रखती है। प्रत्येक exploit मोड इसे
  आंतरिक रूप से fork के माध्यम से संभालता है: पैरेंट init नेमस्पेस में रहता है, चाइल्ड
  बायपास करतब करता है, पैरेंट वैश्विक पेज कैश पढ़ता है और REAL init-ns root के लिए
  `su` चलाता है। विरासती `--aa-bypass` फ़्लैग अभी भी
  बायपास तंत्र को अलग से डीबग करने के लिए मौजूद है। देखें [§8.5 आर्किटेक्चर](#85-architecture-outerinner-fork-based-bypass)।

## सत्यापित कार्यक्षमता

DIRTYFAIL को कई डिस्ट्रो और कर्नेल संस्करणों पर **अनुभवजन्य रूप से एंड-टू-एंड सत्यापित** किया गया है।
नीचे दिया गया मैट्रिक्स प्रत्येक डिस्ट्रो की नई स्थापना के विरुद्ध
प्रत्येक `--exploit-*` मोड चलाने के प्रति-मोड परीक्षण परिणाम
दर्शाता है।

| डिस्ट्रो | कर्नेल | LSM | Copy Fail | xfrm-ESP v4 | xfrm-ESP v6 | RxRPC | GCM | Backdoor | SU shellcode |
|---|---|---|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
| Ubuntu 24.04 LTS | `6.8.0-111-generic` | AppArmor | 🛡²  | ✅ | ✅ | ✅ | ✅¹ | ✅¹ | (परीक्षण नहीं किया गया) |
| Debian 13.4 | `6.12.86+deb13` | कोई नहीं | 🛡 | 🛡 | 🛡 | 🛡 | 🛡 | 🛡 | 🛡⁵ |
| AlmaLinux 10.1 | `6.12.0-124.8.1.el10_1` | SELinux | ✅ | ✅ | ✅ | ⏭³ | ✅ | ✅ | ✅ |
| Fedora 44 (Server) | `6.19.10-300.fc44` | SELinux | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Ubuntu 26.04 LTS | `7.0.0-15-generic` | AppArmor (सख्त) | 🛡 | 🛡⁴ | 🛡⁴ | 🛡⁴ | 🛡⁴ | 🛡⁴ | 🛡⁵ |

**संकेत:** ✅ exploit पहुँचा और वास्तविक init-ns root उत्पन्न किया  · 🛡 शमित — exploit कर्नेल बग तक नहीं पहुँच सकता (कर्नेल पैच किया गया या LSM अविशेषाधिकृत पथ को रोकता है)  · ⏭ लागू नहीं (पूर्वशर्त गायब)

### सक्रिय-प्रोब सत्यापन (`--scan --active`)

`--active` फ़्लैग पता लगाने के दौरान प्रति CVE एक sentinel-फ़ाइल STORE प्रोब जोड़ता है
। हमने प्रोब आउटपुट को उपरोक्त समान 4 डिस्ट्रो के विरुद्ध सत्यापित किया
(Debian, Fedora, AlmaLinux, Ubuntu 26.04) — नीचे दिया गया मैट्रिक्स
प्रति-मोड प्रोब परिणाम दिखाता है और पूर्ण-exploit
वास्तविकता से एक-से-एक मेल खाता है:

| डिस्ट्रो | Copy Fail प्रोब | ESP v4 प्रोब | ESP v6 प्रोब | RxRPC प्रोब | GCM प्रोब |
|---|:-:|:-:|:-:|:-:|:-:|
| Debian 13.4 | अक्षत 🛡 | अक्षत 🛡 | अक्षत 🛡 | अक्षत 🛡 | अक्षत 🛡 |
| Fedora 44   | marker @0 ✅ | STORE @0 ✅ | STORE @8 ✅ | बाइट परिवर्तन ✅ | sentinel[0] 0x41→0x27 ✅ |
| AlmaLinux 10.1 | marker @0 ✅ | STORE @0 ✅ | STORE @8 ✅ | पूर्वशर्तें ⏭ | sentinel बदला ✅ |
| Ubuntu 26.04 | अक्षत 🛡 | LSM-अवरुद्ध 🛡 | LSM-अवरुद्ध 🛡 | LSM-अवरुद्ध 🛡 | LSM-अवरुद्ध 🛡 |

V6 प्रोब का STORE लैंडिंग ऑफ़सेट (Fedora और Alma पर 8) अनुभवजन्य
`V6_STORE_SHIFT` से मेल खाता है जिसे `calibrate_v6_shift()` रनटाइम पर
खोजता है — यह पुष्टि करता है कि स्वतः-कैलिब्रेशन पहले से
हार्ड-कोडित स्थिरांक को कर्नेल बिल्ड में सही ढंग से बदल देता है।

¹ GCM और Backdoor के लिए `algif_aead` लोड करने योग्य होना आवश्यक है। Ubuntu 24.04
`/etc/modprobe.d/disable-algif_aead.conf` भेजता है जो इसे Copy Fail शमन के रूप में
ब्लैकलिस्ट करता है। ब्लैकलिस्ट हटाए जाने पर (जैसे शमन से पहले के कर्नेल पर)
दोनों मोड एंड-टू-एंड काम करते हैं।

² Copy Fail का algif_aead पथ modprobe ब्लैकलिस्ट द्वारा शमित है;
कर्नेल में अंतर्निहित CVE प्रिमिटिव समान है चाहे
`authencesn` पहुँच योग्य हो या नहीं। xfrm-ESP, RxRPC, और GCM वैरिएंट सभी
उसी कर्नेल पर पहुँचते हैं क्योंकि वे algif_aead से नहीं जाते।

³ AlmaLinux 10 का `kernel-modules-extra` पैकेज डिफ़ॉल्ट रूप से
Minimal इंस्टॉल में स्थापित नहीं होता, इसलिए `rxrpc.ko` डिस्क पर गायब है।
EPEL या AlmaLinux extras रिपॉजिटरी से `kernel-modules-extra-$(uname -r)` स्थापित करने से
मॉड्यूल वापस आ जाता है; स्टॉक minimal इंस्टॉल पर RxRPC
अप्राप्य है।

⁴ **Ubuntu 26.04 LTS अविशेषाधिकृत शोषण को व्यापक रूप से रोकता है।**
शिप किया गया कर्नेल `7.0.0-15.15` (रिलीज़ 2026-04-22) **मेनलाइन पैच
`f4c50a4034e6` (विलय 2026-05-07) से ~2 सप्ताह पूर्व** का है — इसलिए
बग अभी भी कर्नेल में मौजूद है। Ubuntu की सुरक्षा
**AppArmor कड़ाई के माध्यम से रक्षा-गहराई** है, न कि कर्नेल पैच:

- `apparmor_restrict_unprivileged_userns=1` डिफ़ॉल्ट रूप से सक्षम है।
- `unshare(CLONE_NEWUSER)` पर, कर्नेल-स्तरीय AppArmor प्रवर्तन
  किसी भी प्रोफ़ाइल (जिसमें `(unconfined)`-चिह्नित
  जैसे `crun`, `chrome`, डिफ़ॉल्ट `unconfined` शामिल हैं) को स्वतः ही
  `<profile>//&unprivileged_userns (mixed)` उप-प्रोफ़ाइल में स्थानांतरित कर देता है जिसमें
  `audit deny capability` होता है। नए userns के अंदर uid 0 को कोई कैप नहीं मिलती।
- `change_onexec` किसी भिन्न प्रोफ़ाइल पर मदद नहीं करता — यहाँ तक कि
  `crun` प्रोफ़ाइल (जिसमें स्पष्ट `userns,` अनुमति और
  `flags=(unconfined)` है) भी unshare पर स्वतः स्थानांतरित हो जाती है। इसके माध्यम से सत्यापित
  `aa-exec -p crun bash -c 'unshare -U -n cat /proc/self/attr/current'`
  → `crun//&unprivileged_userns (mixed)`।
- `newuidmap`/`newgidmap` (setuid root) सफलतापूर्वक uid_map लिखते हैं,
  लेकिन `setresuid(0)` तब सफल होता है जबकि `ioctl(SIOCSIFFLAGS)` और
  हर अन्य CAP_NET_ADMIN-गेटेड syscall EPERM लौटाता है क्योंकि
  क्षमता अस्वीकृति प्रति-नेमस्पेस है, प्रति-uid नहीं।
टूल डाउनलोड करें