
CVE-2026-31431 Copy Fail — MCP के ज़रिए Linux कर्नेल LPE परीक्षक
📖 इंस्टॉलेशन गाइड — त्वरित आरंभ, मैन्युअल सेटअप और समस्या निवारण
CVE-2026-31431 — अब तक खोजी गई सबसे गंभीर Linux कमजोरी। अब MCP के माध्यम से नियंत्रणीय।
Python के 732 बाइट्स। कोई कंपाइलेशन नहीं। कोई रेस कंडीशन नहीं। कोई per-distro ऑफ़सेट नहीं। एक शॉट में, 2017 के बाद से बने हर Linux कर्नेल पर यूनिवर्सल root।
यह टूल एक MCP सर्वर + वेब डैशबोर्ड है जो किसी भी सुलभ Linux सिस्टम की इस कमजोरी के लिए जाँच करता है। इसे इसलिए बनाया गया क्योंकि मूल PoC का उपयोग पहले से ही बेहद आसान है — यह केवल एक UI, नेटवर्क स्कैनिंग और फ्लीट ट्रैकिंग जोड़ता है।
चेतावनी: यह एक वास्तविक कर्नेल LPE है। इसका उपयोग केवल उन्हीं सिस्टमों पर करें जिनके आप मालिक हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति है। अधिकांश क्षेत्राधिकारों में अनधिकृत उपयोग एक संगीन अपराध है।
1. इसे एक AI ने एक घंटे में खोजा।
Theori के Xint Code प्लेटफ़ॉर्म ने एक ही ऑपरेटर प्रॉम्प्ट के साथ Linux crypto/ सबसिस्टम को स्कैन किया।
एक घंटे बाद, उसके पास एक यूनिवर्सल LPE थी जो नौ वर्षों तक हर मानव समीक्षक, स्टैटिक एनालिसिस टूल और फ़ज़र से बचती रही थी। यह बग 2017 से मौजूद था और इसके लिए क्रॉस-सबसिस्टम तर्क (AF_ALG सॉकेट प्रोवेनेंस + authencesn स्क्रैच-राइट व्यवहार) की आवश्यकता थी — ठीक उसी तरह का संबंध जिसमें LLM-नेटिव टूल उत्कृष्ट होते हैं। खोज लागत नगण्य थी। कमजोरी परिदृश्य के लिए इसके निहितार्थ अस्तित्वगत हैं।
2. एक्सप्लॉइट शुद्ध Python के 732 बाइट्स है, बिना किसी डिपेंडेंसी के। कोई कंपाइलेशन टूलचेन आवश्यक नहीं। स्थापित करने के लिए कोई लाइब्रेरी नहीं। कोई आर्किटेक्चर-विशिष्ट ऑफ़सेट नहीं। यह x86_64 सर्वर, aarch64 राउटर, ARM NAS डिवाइस, और Python 3.10+ चलाने वाले किसी भी अन्य Linux हार्डवेयर पर समान रूप से काम करता है। आप इसे वेब शेल में पेस्ट कर सकते हैं, netcat पर पाइप कर सकते हैं, या USB स्टिक से लिख सकते हैं। हथियारीकरण की बाधा प्रभावी रूप से शून्य है।
3. यह डिस्क पर कोई निशान नहीं छोड़ता।
एक्सप्लॉइट केवल कर्नेल के इन-मेमोरी पेज कैश को दूषित करता है। /usr/bin/su की डिस्क-पर बाइनरी कभी संशोधित नहीं होती।
ऑन-डिस्क चेकसम की तुलना करके काम करने वाला हर फ़ाइल इंटीग्रिटी टूल — AIDE, Tripwire, dm-verity — कुछ भी गलत नहीं देखता।
रीबूट होने पर यह दूषण गायब हो जाता है। यह पता लगाने का एकमात्र तरीका कि एक्सप्लॉइट चलाया गया था,
उसे auditd या eBPF के माध्यम से उड़ान में पकड़ना है। फोरेंसिक दृष्टिकोण से, एक्सप्लॉइट अदृश्य है।
4. अरबों डिवाइस कभी पैच नहीं होंगे।
प्रमुख डिस्ट्रोज़ (Ubuntu, RHEL, Debian, SUSE) ने 72 घंटों के भीतर पैच जारी कर दिए।
लेकिन यह कर्नेल बग 2017 के बाद से बने हर उस Linux डिवाइस में समाया हुआ है जिसमें
CONFIG_CRYPTO_USER_API_AEAD=y है — जो अनिवार्य रूप से सभी में है। OpenWrt राउटर
(2026-05-02 तक कोई पैच नहीं)। 2019 के वेंडर कर्नेल चलाने वाले IP कैमरे। जमे हुए फर्मवेयर शाखाओं वाले स्मार्ट TV।
मेडिकल इन्फ्यूजन पंप जिन्हें हर अपडेट के लिए FDA पुनः-प्रमाणन की आवश्यकता होती है। 10-वर्षीय समर्थन जीवनचक्र वाले
औद्योगिक नियंत्रक। Android डिवाइस एक आकस्मिक SELinux पॉलिसी प्रतिबंध द्वारा सुरक्षित हैं — कोई कर्नेल फिक्स नहीं —
और रूटेड/कस्टम-ROM डिवाइस, पुराने Fire टैबलेट और Android TV स्टिक पूरी तरह से उजागर हैं। कुल संख्या लाखों में नहीं है।
यह अरबों में है। और उनमें से अधिकांश के लिए, पैच कभी नहीं आएगा।
यह सार्वजनिक PoC के चारों ओर बना एक सुरक्षा परीक्षण और जागरूकता टूल है। यह ऐसा कुछ नहीं करता जो मूल 732-बाइट स्क्रिप्ट पहले से नहीं करती। यह जो जोड़ता है:
एक्सप्लॉइट स्वयं सार्वजनिक है, आसानी से कॉपी किया जा सकता है, और इसे अज्ञात नहीं बनाया जा सकता। यह टूल उन लोगों के लिए परीक्षण को तेज़ और सुरक्षित बनाने के लिए मौजूद है जिनके पास परीक्षण का अधिकार है।
git clone https://github.com/sandraschi/copy-fail-mcp
cd copy-fail-mcp
just
यह सभी उपलब्ध कमांड दिखाने वाला एक इंटरैक्टिव डैशबोर्ड खोलता है। डिपेंडेंसी स्थापित करने के लिए just bootstrap चलाएँ, फिर शुरू करने के लिए just serve या just dev चलाएँ।
यदि आपके पास just स्थापित नहीं है:
pip install copy-fail-mcp
copy-fail check --host 192.168.1.100
copy-fail serve --http --port 10955
User → AF_ALG socket (authencesn) → splice() target file → HMAC fails
↓
4 bytes written past AEAD boundary
↓
Into page cache of /usr/bin/su
↓
su is now corrupted in memory
↓
Run su → root shell
बग: दो सबसिस्टम व्यवहार जो अलग-अलग हानिरहित हैं, संयुक्त होने पर घातक बन जाते हैं। AF_ALG का splice पथ पेज कैश पेजों को लिखने योग्य आउटपुट के रूप में उजागर करता है। authencesn वैध AEAD सीमा से 4 बाइट्स आगे स्क्रैच स्पेस के रूप में लिखता है। इन्हें एक साथ रखें और आप किसी भी पठनीय फ़ाइल के इन-मेमोरी प्रतिनिधित्व को सटीक नियंत्रित डेटा के साथ दूषित कर सकते हैं। एक्सप्लॉइट /usr/bin/su की अनुमति जाँच को लक्षित करता है।
MIT। एक्सप्लॉइट स्क्रिप्ट Taeyang Lee / Theori / Xint Code Research Team द्वारा है (मूल PoC)।
| गुण | Copy Fail | Dirty COW (2016) | Dirty Pipe (2022) |
|---|
| एक्सप्लॉइट आकार | 732 बाइट्स (Python stdlib) | ~200 लाइनें C | ~100 लाइनें C |
| कंपाइलेशन आवश्यक | नहीं — शुद्ध Python | हाँ — C कंपाइल करें | हाँ — C कंपाइल करें |
| रेस कंडीशन | नहीं — नियतिवादी | हाँ — रेस विंडो | नहीं |
| Per-distro ऑफ़सेट | कोई नहीं — हर जगह एक ही स्क्रिप्ट | कोई नहीं | कोई नहीं |
| डिस्क-पर निशान | नहीं — केवल पेज कैश, चेकसम साफ़ | नहीं | नहीं |
| कंटेनर एस्केप | हाँ — साझा पेज कैश | हाँ | हाँ |
| कर्नेल संस्करण | >= 4.14 (2017–वर्तमान) | >= 2.6.22 (2007–2018) | >= 5.8 (2020–2022) |
| प्रभावित डिवाइस | अरबों (अभी भी बढ़ रहे हैं) | 2018 में फिक्स की गई | 2022 में फिक्स की गई |
| कभी पैच नहीं किया जाएगा | अरबों IoT/एम्बेडेड/राउटर | अधिकतर पैच हो चुके | अधिकतर पैच हो चुके |
| किसके द्वारा खोजी गई | AI (Xint Code, 1 घंटे का स्कैन) | मानव शोधकर्ता | मानव शोधकर्ता |
| खोज लागत | क्लाउड कंप्यूट में ~$6 | महीनों का मानवीय प्रयास | महीनों का मानवीय प्रयास |
| टूल | विवरण | इनग्रेस |
|---|
cf_scan_network | /24 सबनेट में SSH होस्ट्स की जाँच करें, Linux पहचानें | प्रत्यक्ष (async TCP) |
cf_check_target | कर्नेल, AEAD कॉन्फ़िग, डिस्ट्रो पैच स्थिति जाँचें | SSH एजेंट |
cf_run_exploit | SSH के माध्यम से PoC तैनात करें, निष्पादित करें, root की रिपोर्ट करें | SSH एजेंट |
cf_assess | एक ही चरण में जाँच + एक्सप्लॉइट | SSH एजेंट |
cf_apply_mitigation | मॉड्यूल ब्लैकलिस्ट या initcall ब्लैकलिस्ट | SSH एजेंट |
cf_get_exploit_script | कच्चा 732-बाइट PoC टेक्स्ट के रूप में लौटाएँ | कोई भी चैनल |
cf_exploit_local | मैन्युअल तैनाती के लिए PoC को स्थानीय पथ पर लिखें | स्थानीय शेल |