
लिनक्स कर्नेल के authencesn टेम्पलेट में AF_ALG और splice() के माध्यम से स्थानीय विशेषाधिकार वृद्धि (local privilege escalation) भेद्यता का दस्तावेज़ीकरण और विश्लेषण, जिसमें प्रभावित संस्करण, पहचान और शमन शामिल हैं।
लोकल प्रिविलेज एस्केलेशन Linux कर्नेल के
authencesnक्रिप्टोग्राफिक टेम्पलेट मेंAF_ALG+splice()के माध्यम से।
29 अप्रैल 2026 को Theori (Xint Code) द्वारा खुलासा किया गया।
| फ़ील्ड | विवरण |
|---|---|
| CVE | CVE-2026-31431 |
| उपनाम | कॉपी फेल |
| CVSS | 7.8 उच्च |
| प्रकार | लोकल प्रिविलेज एस्केलेशन (LPE) |
| परिचय | Linux कर्नेल 4.14 (2017, कमिट 72548b093ee3) |
| फिक्स | मेनलाइन कमिट a664bf3d603d |
| आवश्यकता | स्थानीय अनप्रिविलेज्ड शेल एक्सेस |
| रिमोट वेक्टर | कोई नहीं — केवल स्थानीय |
कर्नेल के authencesn AEAD रैपर में एक तर्क दोष एक अनप्रिविलेज्ड स्थानीय उपयोगकर्ता को सिस्टम पर किसी भी पठनीय फ़ाइल के पेज कैश में एक निर्धारित, नियंत्रित 4-बाइट लेखन करने की अनुमति देता है — जिसमें setuid बाइनरी जैसे /usr/bin/su शामिल हैं।
मूल कारण 2017 का इन-प्लेस प्रोसेसिंग ऑप्टिमाइज़ेशन है जिसने पेज कैश पेजों को एक लिखने योग्य स्कैटरलिस्ट में रखा। authencesn एल्गोरिदम विस्तारित अनुक्रम संख्या पुनर्व्यवस्था के दौरान अपने इच्छित आउटपुट क्षेत्र के बाहर 4 बाइट्स स्क्रैच डेटा लिखता है। ऑप्टिमाइज़ेशन द्वारा पेश की गई स्कैटरलिस्ट संरचना के कारण, वे 4 बाइट्स splice() के माध्यम से फीड की गई फ़ाइल के पेज कैश में पहुँच जाते हैं — फ़ाइल अनुमतियों को पूरी तरह से बायपास करते हुए।
कोई रेस कंडीशन नहीं। कोई पुनः प्रयास नहीं। कोई क्रैश जोखिम नहीं। सभी परीक्षण किए गए वितरणों पर निर्धारित।
कमजोर: Linux कर्नेल 4.14 से 6.18.21 और 6.19.x से पहले 6.19.12।
इस श्रेणी में कर्नेल भेजने वाले सभी प्रमुख वितरण प्रभावित हैं, जिनमें शामिल हैं:
| डिस्ट्रो | परीक्षण किया गया संस्करण |
|---|---|
| Ubuntu 24.04 LTS | 6.17.0-1007-aws |
| Amazon Linux 2023 | 6.18.8-9.213.amzn2023 |
| RHEL 10.1 | 6.12.0-124.45.1.el10_1 |
| SUSE 16 | 6.12.0-160000.9-default |
प्रभावित नहीं: Ubuntu 26.04 (Resolute) और बाद के संस्करण।
मेनलाइन कमिट a664bf3d603d वाले कर्नेल में अपडेट करें, जो 2017 के इन-प्लेस ऑप्टिमाइज़ेशन को वापस लेता है।
# Ubuntu / Debian
sudo apt update && sudo apt upgrade -y && sudo reboot
# RHEL / AlmaLinux / Amazon Linux
sudo dnf clean metadata && sudo dnf upgrade && sudo reboot
# SUSE
sudo zypper refresh && sudo zypper update kernel-default && sudo reboot
algif_aead अक्षम करें (अस्थायी)यदि तुरंत पैच करना संभव नहीं है, तो हमले की सतह को बंद करने के लिए कमजोर मॉड्यूल को अक्षम करें।
RHEL-परिवार प्रणालियों के लिए नोट: RHEL/AlmaLinux/CentOS पर
algif_aeadकर्नेल में निर्मित है (CONFIG_CRYPTO_USER_API_AEAD=y)।modprobe.dवर्कअराउंड इन प्रणालियों पर काम नहीं करता। इसके बजायinitcall_blacklistविधि का उपयोग करें।
Debian/Ubuntu (मॉड्यूल लोड करने योग्य है):
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif.conf
sudo rmmod algif_aead 2>/dev/null || true
RHEL-परिवार (कर्नेल में निर्मित — रिबूट की आवश्यकता है):
sudo grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
sudo reboot
रिबूट के बाद पुष्टि करें:
grep initcall_blacklist /proc/cmdline
अविश्वसनीय वर्कलोड के लिए — कंटेनर, CI रनर, सैंडबॉक्स्ड वातावरण — पैच स्थिति की परवाह किए बिना seccomp नीति के माध्यम से AF_ALG सॉकेट निर्माण को ब्लॉक करें। यह कमजोर कर्नेल पर भी हमले की सतह को सीमित करता है।
जाँचें कि क्या algif_aead वर्तमान में लोड है या उपयोग में है:
# जाँचें कि मॉड्यूल लोड है या नहीं
lsmod | grep algif_aead
# जाँचें कि किसी प्रक्रिया में AF_ALG सॉकेट खुला है या नहीं
lsof | grep AF_ALG
ss -xa | grep alg
रनटाइम डिटेक्शन सिग्नेचर Sysdig Secure में उपलब्ध हैं (नियम: AF_ALG Page Cache Poisoning Leading to Privilege Escalation)।
xD The Watcher — रेड टीमर, एथिकल हैकर और AI सुरक्षा शोधकर्ता
GitHub: @xd20111
ब्लॉग: yourhacker
यह रिपॉजिटरी शोध और रक्षात्मक उद्देश्यों के लिए भेद्यता का दस्तावेजीकरण करती है। आधिकारिक तकनीकी राइटअप और आधिकारिक PoC के लिए, ऊपर लिंक किए गए Theori के खुलासे का संदर्भ लें।
यदि आपके खतरे के मॉडल में साझा-कर्नेल मल्टी-टेनेंसी शामिल है — साझा होस्ट पर कंटेनर, CI रनर, बिल्ड फार्म — तो पैच होने तक अलगाव सीमा अब काफी कमजोर है। हार्डवेयर या VM-स्तरीय अलगाव सही प्रतिक्रिया है, नेमस्पेस सीमाएँ नहीं।
| डर्टी काउ (2016) | डर्टी पाइप (2022) | कॉपी फेल (2026) |
|---|
| रेस कंडीशन आवश्यक | हाँ | आंशिक | नहीं |
| संस्करण-विशिष्ट | हाँ | हाँ | नहीं |
| विश्वसनीयता | अस्थिर | मध्यम | निर्धारित |
| डिस्ट्रो कवरेज | सीमित | सीमित | 2017 से सभी |
| घटक | प्रभाव |
|---|
| dm-crypt / LUKS | ✅ प्रभावित नहीं |
| SSH | ✅ प्रभावित नहीं |
| IPsec / XFRM | ✅ प्रभावित नहीं |
| kTLS / इन-कर्नेल TLS | ✅ प्रभावित नहीं |
| OpenSSL / GnuTLS / NSS (डिफ़ॉल्ट बिल्ड) | ✅ प्रभावित नहीं |
OpenSSL जिसमें afalg इंजन स्पष्ट रूप से सक्षम है | ⚠️ यूज़रस्पेस क्रिप्टो पर वापस आ जाता है |
एप्लिकेशन सीधे aead/skcipher/hash AF_ALG सॉकेट बाइंड कर रहे हैं | ⚠️ टूट जाएगा — lsof | grep AF_ALG से जाँचें |
| संसाधन | लिंक |
|---|
| NVD प्रविष्टि | https://nvd.nist.gov/vuln/detail/CVE-2026-31431 |
| Theori पूर्ण राइटअप | https://xint.io/blog/copy-fail-linux-distributions |
| कॉपी फेल साइट | https://copy.fail |
| CERT-EU सलाह | https://cert.europa.eu/publications/security-advisories/2026-005/ |
| Sysdig विश्लेषण | https://sysdig.com/blog/cve-2026-31431-copy-fail-linux-kernel-flaw-lets-local-users-gain-root-in-seconds |
| The Register कवरेज | https://theregister.com/2026/04/30/linux_cryptographic_code_flaw/ |
| AlmaLinux पैच नोट्स | https://almalinux.org/blog/2026-05-01-cve-2026-31431-copy-fail/ |
| CloudLinux KernelCare | https://blog.cloudlinux.com/cve-2026-31431-copy-fail-kernel-update |
| तिथि | घटना |
|---|
| 2017 | कमिट 72548b093ee3 के माध्यम से प्रतिगमन पेश किया गया |
| अप्रैल 2026 की शुरुआत | अपस्ट्रीम फिक्स विलय (कमिट a664bf3d603d) |
| 29 अप्रैल 2026 | Theori / Xint Code द्वारा सार्वजनिक खुलासा |
| 30 अप्रैल 2026 | वितरण पैच भेजना शुरू |
| 1 मई 2026 | AlmaLinux पैच किए गए कर्नेल उत्पादन रिपॉजिटरी में |