
निष्क्रिय निदान उपकरण जो AF_ALG सॉकेट पहुंच का परीक्षण करके जांचता है कि कोई Linux सिस्टम CVE-2026-31431 के प्रति संवेदनशील है या नहीं, शमन मार्गदर्शन और CI-अनुकूल निकास कोड प्रदान करता है।
एक सरल, सुरक्षित Python स्क्रिप्ट जो यह निर्धारित करती है कि कोई Linux सिस्टम CVE-2026-31431 ("कॉपी फेल") के प्रति संवेदनशील है या नहीं, जो कर्नेल 4.14 के बाद से सभी प्रमुख डिस्ट्रीब्यूशन को प्रभावित करने वाला एक स्थानीय विशेषाधिकार वृद्धि (local privilege escalation) है।
CVE-2026-31431 Linux कर्नेल के algif_aead क्रिप्टोग्राफिक सॉकेट मॉड्यूल में एक सीधी-रेखा लॉजिक बग है। AF_ALG सॉकेट्स को splice() के साथ संयोजन में उपयोग करके, एक अनप्रिविलेज्ड हमलावर setuid बाइनरी के पेज कैश में 4 बाइट्स को ओवरराइट कर सकता है और रूट प्राप्त कर सकता है।
| गुण | विवरण |
|---|
| रेस कंडीशन आवश्यक | ❌ नहीं – एक्सप्लॉइटेशन नियतात्मक (deterministic) है |
| कर्नेल ऑफसेट आवश्यक | ❌ नहीं – कोई वर्जन-विशिष्ट ऑफसेट आवश्यक नहीं |
| एक्सप्लॉइट जटिलता | रूट के लिए एकल 732-बाइट Python स्क्रिप्ट पर्याप्त है |
| यह चेकर | निष्क्रिय डायग्नोस्टिक केवल – भेद्यता को ट्रिगर नहीं करता |
स्क्रिप्ट उस सटीक एल्गोरिदम टेम्पलेट का उपयोग करके एक AF_ALG सॉकेट बनाने और बाइंड करने का प्रयास करती है जिस पर भेद्यता निर्भर करती है:
authencesn(hmac(sha256),cbc(aes))
| परिणाम | अर्थ |
|---|---|
| सॉकेट बनाया और बाइंड किया गया | संवेदनशील कोड पथ पहुंच योग्य है – तुरंत पैच करें |
EAFNOSUPPORT (errno 97) | मॉड्यूल लोड नहीं है – हमले की सतह अनुपलब्ध है |
Permission denied | MAC पॉलिसी (SELinux/AppArmor) एक्सेस को ब्लॉक करती है – सुरक्षित |
स्क्रिप्ट किसी भी तरह से भेद्यता को ट्रिगर नहीं करती है। यह पूरी तरह से निष्क्रिय है और चलाने के लिए सुरक्षित है।
रिपॉजिटरी को क्लोन करें या check_copyfail.py डाउनलोड करें, फिर चलाएँ:
python3 check_copyfail.py
____ _____ _ _
/ ___|___ _ __ _ _| ___|_ _(_) |
| | / _ \| '_ \| | | | |_ / _` | | |
| |__| (_) | |_) | |_| | _| (_| | | |
\____\___/| .__/ \__, |_| \__,_|_|_|
|_| |___/
CVE-2026-31431 "Copy Fail" – Reachability Checker
Phalanx CCS / d_0_4 | Defensive use only
-------------------------------------------------------
Kernel release: 6.1.0-28-amd64
Version range : Potentially affected range
AF_ALG target : authencesn(hmac(sha256),cbc(aes))
[!!!] VULNERABLE ATTACK SURFACE REACHABLE
Socket created and bound – AF_ALG reachable
Immediate mitigation:
echo 'install algif_aead /bin/false' | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead 2>/dev/null
Then update your kernel as soon as patches are available.
Upstream fix: commit a664bf3d603d
स्क्रिप्ट कोड 1 के साथ बाहर निकलती है यदि हमले की सतह पहुंच योग्य है, और 0 के साथ यदि सिस्टम सुरक्षित है — जिससे यह शेल स्क्रिप्ट्स, Ansible प्लेबुक्स और CI पाइपलाइनों में उपयोग के लिए उपयुक्त बनती है।
जब तक कर्नेल अपडेट उपलब्ध न हो, संवेदनशील मॉड्यूल को अक्षम करें:
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead 2>/dev/null
आधिकारिक फिक्स मेनलाइन कर्नेल में कमिट a664bf3d603d है। जैसे ही पैच उपलब्ध हों, अपने डिस्ट्रीब्यूशन के पैकेज मैनेजर के माध्यम से अपडेट करें।
यह चेकर आधुनिक Android डिवाइसों (Termux सहित) पर हमेशा सुरक्षित रिपोर्ट करेगा। अनिवार्य SELinux पॉलिसियों के कारण AF_ALG सॉकेट अनप्रिविलेज्ड ऐप्स के लिए अनुपलब्ध है, इसलिए मानक Android बिल्ड पर भेद्यता शोषणीय नहीं है।
यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है – विवरण के लिए LICENSE देखें। उपयोग, संशोधन और वितरण करने के लिए स्वतंत्र महसूस करें।
अस्वीकरण: यह टूल केवल रक्षात्मक डायग्नोस्टिक उद्देश्यों के लिए है।
इसका उपयोग उन सिस्टमों पर न करें जिनके आप स्वामी नहीं हैं या स्पष्ट लिखित अनुमति के बिना।