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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Detections-CVE-2026-31431 — CVE-2026-31431 Linux कर्नेल LPE भेद्यता (Copy Fail) के लिए डिटेक्शन नियम, YARA हस्ताक्षर, auditd/Wazuh नियम और MISP इवेंट टेम्पलेट। IoC, शमन चरण और शोषण विश्लेषण शामिल है। | Kitploit
उपकरण/GitHubGitHub/insomnisec/detections-cve-2026-31431
समझौता संकेतक (IOC) प्रबंधनविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणफोरेंसिकखतरा खुफियाघुसपैठ का पता लगानालर्निंग और शिक्षाघटना प्रतिक्रिया

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
GitHubinsomnisec/detections-cve-2026-31431

Detections-CVE-2026-31431

CVE-2026-31431 Linux कर्नेल LPE भेद्यता (Copy Fail) के लिए डिटेक्शन नियम, YARA हस्ताक्षर, auditd/Wazuh नियम और MISP इवेंट टेम्पलेट। IoC, शमन चरण और शोषण विश्लेषण शामिल है।

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

MOVING TO: https://github.com/insomnisec/public_cve_detections

FOR BETTER LONG TERM MANAGEMENT OF DETECTION PUBLICATIONS

THIS REPO WILL BE REMOVED IN JUNE 2026

PLEASE USE THE OTHER REPO GOING FORWARD

CVE-2026-31431 "Copy Fail" — Detection & Response Package

Published: 2026-04-30
CVSSv3: 7.8 (High)
Type: Local Privilege Escalation (LPE)
Subsystem: Linux kernel algif_aead / authencesn cryptographic template
Affected: Linux kernels 4.14 – 6.18.21 (virtually all distributions since 2017)
References:

  • Xint/Theori Write-up
  • Official PoC
  • oss-security Disclosure
  • copy.fail

Table of Contents

  1. Vulnerability Summary
  2. How the Exploit Works
  3. Detection Limitations
  4. Immediate Mitigation
  5. YARA Rule
  6. Auditd Rules
  7. Wazuh Rules
  8. MISP Event Template
  9. Patching & Remediation
  10. Key IoCs Reference

Vulnerability Summary

CVE-2026-31431 एक तर्क दोष है जो कर्नेल 4.14 (2017) में तीन स्वतंत्र परिवर्तनों के संगम पर पेश किया गया था:

  1. The authencesn template (added 2011 for IPsec ESN support) writes 4 bytes of scratch data past its output buffer boundary.
  2. AF_ALG gained AEAD support in 2015, allowing userspace to submit data via splice() from page-cached files.
  3. In 2017, algif_aead.c was optimized to operate in-place (req->src == req->dst), placing live page-cache pages into a writable scatterlist.

परिणाम: एक अविशेषाधिकार प्राप्त उपयोगकर्ता किसी भी पठनीय फ़ाइल की कर्नेल की पेज-कैश प्रतिलिपि में ठीक 4 आक्रमणकारी-नियंत्रित बाइट्स लिख सकता है — जिसमें setuid बाइनरी और /etc/passwd शामिल हैं — बिना डिस्क पर फ़ाइल को छुए। कार्यशील PoC एक 732-बाइट Python स्क्रिप्ट है। कोई रेस कंडीशन नहीं। कोई प्रति-वितरण ऑफसेट नहीं। Ubuntu, RHEL, Amazon Linux, और SUSE पर विश्वसनीय।


How the Exploit Works```

Attacker opens AF_ALG socket (family 38, type 5) └─ Binds to "authencesn(hmac(sha256),cbc(aes))" └─ Sets SOL_ALG (279) options including key and authsize └─ Accepts a connection socket

Attacker opens target file (e.g., /etc/passwd) read-only └─ Uses splice() to feed page-cache pages into the AEAD socket's RX buffer └─ Sends crafted AAD via sendmsg() — bytes 4–7 of AAD = attacker-controlled write value

authencesn performs in-place decryption: └─ scatterwalk_map_and_copy writes seqno_lo into the chained page-cache page └─ recvmsg() returns an error (HMAC fails — expected), but the write already happened

Page-cache now contains attacker-modified copy of the file └─ Kernel executes from page-cache, not disk └─ On-disk file is UNCHANGED — file integrity tools see nothing

The PoC `/etc/passwd` को लक्षित करता है: यह चल रहे उपयोगकर्ता के UID फ़ील्ड का ऑफ़सेट ढूंढता है और उसे `0000` से ओवरराइट करता है, फिर रूट शेल प्राप्त करने के लिए `su` को कॉल करता है।

---

## पता लगाने की सीमाएँ

> **नीचे कोई नियम तैनात करने से पहले यह अनुभाग पढ़ें।**

इस एक्सप्लॉइट की दो विशेषताएँ हैं जो डिटेक्शन कवरेज को काफी सीमित करती हैं:

**1. राइट पेज कैश में जाता है, फ़ाइल सिस्टम में नहीं।**
कोई भी डिटेक्शन टूल जो फ़ाइल सिस्टम इवेंट — `inotify`, `fanotify`, AIDE, Tripwire, auditd पथ वॉच — को मॉनिटर करता है, **संशोधन को नहीं देखेगा**। डिस्क पर फ़ाइल कभी नहीं लिखी जाती। इसका मतलब है कि `/usr/bin/su` या `/etc/passwd` के लिए auditd पथ वॉच में `-p w` (राइट) फ़्लैग वास्तविक एक्सप्लॉइट राइट को नहीं पकड़ पाएंगे।

**2. तंत्र वैध कर्नेल इंटरफ़ेस का उपयोग करता है।**
`AF_ALG` सॉकेट, `splice()`, और `authencesn` सभी के वैध उपयोग हैं (IPsec, कर्नेल सेल्फ-टेस्ट, sendfile-शैली I/O)। डिटेक्शन को किसी एक को अलग-थलग करने के बजाय इन प्राइमिटिव के *संयोजन* पर ध्यान केंद्रित करना चाहिए, और IPsec चलाने या कर्नेल क्रिप्टो परीक्षण करने वाले सिस्टम पर झूठी सकारात्मकताएँ अपेक्षित हैं।

**डिटेक्शन क्या पकड़ सकता है:**
- `socket(AF_ALG, SOCK_SEQPACKET, 0)` सिस्कॉल
- उपरोक्त के साथ सहसंबंधित `splice()` सिस्कॉल, विशेष रूप से setuid बाइनरी एक्सेस के पास
- PoC स्क्रिप्ट स्वयं (YARA के माध्यम से)
- प्रक्रिया मेमोरी या स्क्रिप्ट फ़ाइलों में विशिष्ट `authencesn(hmac(sha256),cbc(aes))` एल्गोरिदम स्ट्रिंग

**डिटेक्शन क्या नहीं पकड़ सकता:**
- वास्तविक पेज-कैश राइट (इन-मेमोरी, कोई फ़ाइल सिस्टम इवेंट नहीं)
- संशोधित पेज-कैश एंट्री का पोस्ट-एक्सप्लॉइटेशन उपयोग (सामान्य `su` या `passwd` कॉल जैसा दिखता है)
- ऐसे वेरिएंट जो Python या विशिष्ट एल्गोरिदम स्ट्रिंग से बचते हैं

---

## तत्काल शमन

डिटेक्शन नियम तैनात करने से पहले, किसी भी अप्रतिबंधित होस्ट पर इस शमन को लागू करें:```bash
# Disable algif_aead kernel module — blocks the exploit primitive entirely
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead 2>/dev/null || true

शमन सक्रिय है इसकी पुष्टि करें आधिकारिक डिटेक्टर का उपयोग करके:```bash

Exit 0 = not vulnerable / mitigated

Exit 2 = VULNERABLE

python3 test_cve_2026_31431.py

> **नोट:** `rmmod` कमांड विफल हो जाएगा यदि मॉड्यूल वर्तमान में लोड नहीं है; यह स्वीकार्य है। `modprobe.d` कॉन्फ़िगरेशन भविष्य में लोड होने से रोकता है। इस शमन का मानक TLS, SSH, या फ़ाइलसिस्टम एन्क्रिप्शन कार्यभार पर कोई प्रभाव नहीं पड़ता है — यह केवल समर्पित VPN गेटवे के बाहर असामान्य, `authencesn` टेम्पलेट का उपयोग करके विस्तारित अनुक्रम संख्याओं (ESN) वाले IPsec को प्रभावित करता है।

---

## YARA नियम

`cve_2026_31431.yar` के रूप में सहेजें

> **स्कैनिंग दायरा:** यह नियम डिस्क पर या मेमोरी डंप से निकाले गए Python स्क्रिप्ट फ़ाइलों को स्कैन करने के लिए डिज़ाइन किया गया है। यह ज्ञात PoC और करीबी वेरिएंट से मेल खाएगा। यह syscall स्तर पर शोषण गतिविधि का पता नहीं लगाएगा — इसके लिए auditd/Wazuh नियमों का उपयोग करें।```yara
rule CVE_2026_31431_CopyFail_PoC_HighConfidence {
    meta:
        description     = "High-confidence match: CVE-2026-31431 Copy Fail PoC or close variant"
        author          = "Detection Engineering"
        reference       = "https://xint.io/blog/copy-fail-linux-distributions"
        cve             = "CVE-2026-31431"
        date            = "2026-04-30"
        severity        = "High"
        cvss            = "7.8"

    strings:
        // Algorithm string unique to this exploit path — very high fidelity
        $alg_full      = "authencesn(hmac(sha256),cbc(aes))" ascii

        // Specific socket call signature from PoC: AF_ALG=38, SOCK_SEQPACKET=5
        $socket_call   = "socket(38,5,0)" ascii

        // SOL_ALG socket option (decimal 279)
        $solalg        = "setsockopt(279" ascii

        // Hex key/iv payload written via setsockopt in PoC
        $key_payload   = "0800010000000010" ascii

        // splice() usage in context of AEAD operations
        $splice        = "splice(" ascii

        // Target indicators from PoC (page-cache corruption targets)
        $target_passwd = "/etc/passwd" ascii
        $target_su     = "/usr/bin/su" ascii

        // AF_ALG aead bind strings
        $aead_bind     = "\"aead\"" ascii

    condition:
        // High-confidence: unique algorithm string alone is sufficient
        $alg_full
        or
        // Medium-confidence: socket primitive + option number
        ($socket_call and $solalg)
        or
        // Medium-confidence: splice into AEAD socket targeting a setuid path
        ($aead_bind and $splice and ($target_passwd or $target_su))
        or
        // PoC hex payload present alongside splice
        ($key_payload and $splice)
}
टूल डाउनलोड करें