
गैर-विनाशकारी डिटेक्टर CVE-2026-31431 (कॉपी फेल) स्थानीय विशेषाधिकार वृद्धि के लिए XCP-ng 8.3 Dom0 में, पेज-कैश भ्रष्टाचार परीक्षण के माध्यम से कर्नेल भेद्यता को मान्य करता है।
CVE-2026-31431 ("कॉपी फेल") के लिए एक सुरक्षित, गैर-विनाशकारी डिटेक्टर स्क्रिप्ट, जिसे 5 मई, 2026 के सुरक्षा अपडेट से पहले XCP-ng 8.3 LTS के विरुद्ध मान्य किया गया है।
⚠️ केवल अधिकृत उपयोग। इस स्क्रिप्ट को केवल उन सिस्टमों पर चलाएं जिनके आप स्वामी हैं या जिन पर परीक्षण करने के लिए आप स्पष्ट रूप से अधिकृत हैं।
CVE-2026-31431, जिसे "कॉपी फेल" कहा जाता है, Linux कर्नेल के algif_aead क्रिप्टोग्राफिक इंटरफ़ेस में एक स्थानीय विशेषाधिकार वृद्धि (LPE) भेद्यता है। authencesn टेम्पलेट में एक तर्क दोष — जो 2017 में पेश किया गया था — एक गैर-विशेषाधिकार प्राप्त स्थानीय उपयोगकर्ता को किसी भी पठनीय फ़ाइल के कर्नेल के पेज कैश में नियंत्रित 4-बाइट लेखन करने की अनुमति देता है, जिससे रूट तक विशेषाधिकार वृद्धि संभव हो जाती है।
a664bf3d603d हर्बर्ट ज़ू द्वाराXCP-ng का Dom0 नियंत्रण डोमेन Linux कर्नेल पर चलता है और हाइपरवाइज़र प्रबंधन परत है। Dom0 तक शेल पहुंच वाला कोई भी गैर-विशेषाधिकार प्राप्त उपयोगकर्ता — जिसमें CI/CD पाइपलाइनों, मॉनिटरिंग एजेंटों, बैकअप टूल्स या स्वचालन के लिए बनाए गए सेवा खाते शामिल हैं — इस भेद्यता का फायदा उठाकर रूट प्राप्त कर सकता है। Dom0 में रूट से, उस होस्ट पर सभी अतिथि VM से समझौता हो जाता है।
एक डिफ़ॉल्ट XCP-ng इंस्टॉलेशन में न्यूनतम जोखिम होता है क्योंकि बहुत कम प्रक्रियाएं गैर-रूट उपयोगकर्ताओं के रूप में चलती हैं। वास्तविक जोखिम समय के साथ बढ़ता है जब ऑपरेटर शेल पहुंच को प्रतिबंधित किए बिना वैध उद्देश्यों के लिए सेवा खाते जोड़ते हैं।
अपने Dom0 सेवा खातों का ऑडिट करें:
awk -F: '$7 ~ /bash|sh/' /etc/passwd
यह एक प्रयोगशाला डिटेक्टर है, विशेषाधिकार वृद्धि उपकरण नहीं। यह:
algif_aead / authencesn पेज-कैश स्क्रैच-राइट प्रिमिटिव को ट्रिगर करने का प्रयास करता हैसिस्टम बाइनरी, /etc/passwd, और अन्य सिस्टम फ़ाइलों को कभी नहीं छुआ जाता। पेज कैश भ्रष्टाचार केवल मेमोरी में होता है — डिस्क पर कुछ भी वापस नहीं लिखा जाता।
os.splice के लिए आवश्यक)python3 xcp_ng_cve_2026_31431_tester.py
| कोड | अर्थ |
|---|---|
0 | कोई भ्रष्टाचार नहीं देखा गया — सिस्टम संभवतः पैच किया गया है या algif_aead अक्षम है |
1 | ट्रिगर त्रुटि — algif_aead अनुपलब्ध या अवरुद्ध हो सकता है |
2 | भेद्य — पेज कैश भ्रष्टाचार की पुष्टि हुई |
नोट: पैच किए गए सिस्टम पर निकास कोड
1अपेक्षित व्यवहार है, स्क्रिप्ट त्रुटि नहीं। यदिauthencesnको कर्नेल स्तर पर अक्षम कर दिया गया है (जैसा कि XCP-ng 5 मई के फिक्स में है), तो सॉकेट बाइंड विफल हो जाएगा और स्क्रिप्ट कोड1के साथ बाहर निकल जाएगी।
| तिथि | घटना |
|---|---|
| 29 अप्रैल, 2026 | CVE-2026-31431 सार्वजनिक रूप से खुलासा हुआ |
| 4 मई, 2026 | VATES ने VSA-2026-013 प्रकाशित किया |
| 5 मई, 2026 | XCP-ng 8.3 LTS मई सुरक्षा अपडेट जारी — कर्नेल फिक्स उपलब्ध |
अपने XCP-ng होस्ट को अपडेट करें और रिबूट करें:
yum update
reboot
रिबूट के बाद, अपडेटेड कर्नेल चल रहा है यह सत्यापित करें:
uname -r
पैचिंग के बाद इस डिटेक्टर स्क्रिप्ट को फिर से चलाएं। एक पैच किया गया सिस्टम निकास कोड 1 (ट्रिगर त्रुटि) लौटाएगा क्योंकि भेद्य authencesn टेम्पलेट अब उपलब्ध नहीं है।
नोट: XCP-ng फिक्स भेद्य
authencesnघटक को हटाने के परिणामस्वरूप IPSec ESN समर्थन को अक्षम कर देता है। अधिकांश वातावरणों के लिए इसका कोई व्यावहारिक प्रभाव नहीं है। VATES ने संकेत दिया है कि भविष्य का पैच उचित फिक्स के साथ इस कार्यक्षमता को बहाल कर सकता है।
मिटिगेशन लागू करने से पहले, पुष्टि करें कि algif_aead मॉड्यूल के रूप में (=m) या कर्नेल में निर्मित (=y) संकलित है:
grep CONFIG_CRYPTO_USER_API_AEAD /boot/config-$(uname -r)
=m — मॉड्यूल-आधारित; modprobe ब्लैकलिस्ट काम करेगी=y — कर्नेल में निर्मित; modprobe ब्लैकलिस्ट चुपचाप विफल होगी और कोई सुरक्षा प्रदान नहीं करेगी=y वाले RHEL-परिवार कर्नेल के लिए, इसके बजाय grubby बूट पैरामीटर का उपयोग करें:
grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
reboot
यह स्क्रिप्ट rootsecdev के मूल कार्य का एक संशोधित व्युत्पन्न है। पुनर्वितरण से पहले अपस्ट्रीम रिपॉजिटरी के लाइसेंस को सत्यापित करें और सुनिश्चित करें कि आपका उपयोग इसकी शर्तों का अनुपालन करता है।
यह स्क्रिप्ट 5 मई, 2026 तक एक अनपैच्ड कर्नेल चलाने वाले XCP-ng 8.3 LTS पर मान्य की गई थी। यदि आपने ऐसा नहीं किया है तो तुरंत आधिकारिक VATES सुरक्षा अपडेट लागू करें।