
CVE-2026-31431 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो algif_aead मॉड्यूल में Linux कर्नेल की एक स्थानीय विशेषाधिकार वृद्धि भेद्यता है, जो अविशेषाधिकार प्राप्त उपयोगकर्ताओं को पेज कैश में 4-बाइट राइट के माध्यम से रूट प्राप्त करने में सक्षम बनाती है।
इस रिपॉजिटरी में CVE-2026-31431 के लिए एक प्रूफ ऑफ कॉन्सेप्ट एक्सप्लॉइट शामिल है, जो एक उच्च-गंभीरता वाली Linux कर्नेल स्थानीय विशेषाधिकार वृद्धि भेद्यता है जो किसी भी अन-प्रिविलेज्ड स्थानीय उपयोगकर्ता को रूट एक्सेस प्राप्त करने की अनुमति देती है। यह दोष, जिसे "कॉपी फेल" नाम दिया गया है, algif_aead मॉड्यूल में स्थित है और इसे AF_ALG सॉकेट इंटरफेस और splice() सिस्टम कॉल के साथ जोड़कर किसी भी पठनीय फ़ाइल के पेज कैश में नियंत्रित 4-बाइट लेखन किया जा सकता है, जैसे कि setuid बाइनरी /usr/bin/su।
यह भेद्यता 2017 के बाद से जारी लगभग सभी Linux कर्नेल को प्रभावित करती है, जिसमें सभी प्रमुख डिस्ट्रीब्यूशन (Ubuntu, Debian, RHEL, SUSE, Amazon Linux और कई अन्य) शामिल हैं। इसे 29 अप्रैल 2026 को सार्वजनिक रूप से खुलासा किया गया था। एक फिक्स अपस्ट्रीम (कमिट a664bf3d603d) में प्रतिबद्ध किया गया है, लेकिन कई विक्रेता अभी भी पैच किए गए कर्नेल जारी करने की प्रक्रिया में हैं। जब तक एक फिक्स्ड कर्नेल उपलब्ध नहीं होता, अस्थायी शमन के रूप में algif_aead कर्नेल मॉड्यूल को अक्षम करने की दृढ़ता से सलाह दी जाती है।
⚠ महत्वपूर्ण: यह सामग्री केवल शैक्षिक और अधिकृत सुरक्षा अनुसंधान उद्देश्यों के लिए प्रदान की गई है। इसे उन सिस्टमों के खिलाफ उपयोग न करें जिनके आप मालिक नहीं हैं या स्पष्ट अनुमति के बिना।
रिपॉजिटरी में दो PoC कार्यान्वयन शामिल हैं जो विभिन्न कोणों से शोषण का प्रदर्शन करते हैं।
copy-fail-poc-short.py — न्यूनतम, मूल के करीबएक संक्षिप्त संस्करण जो मूल रूप से प्रकाशित Python एक्सप्लॉइट के बहुत करीब रहता है। यह एकल-अक्षर चर नामों का उपयोग करता है और टिप्पणियों या स्थिरांकों को छोड़ देता है, जिससे यह अत्यंत कॉम्पैक्ट (732 बाइट्स) हो जाता है। यह वैरिएंट:
/usr/bin/su और एक रॉ AF_ALG AEAD सॉकेट खोलता है।os.splice का उपयोग करता है।/usr/bin/su निष्पादित करता है।copy-fail-poc.py — पूरी तरह से रीफैक्टर्ड, व्यापकएक पूरी तरह से फिर से लिखा गया, अच्छी तरह से प्रलेखित संस्करण जो Python सर्वोत्तम प्रथाओं का पालन करता है। यह वैरिएंट:
send_data_over_crypto_socket()) का उपयोग करता है।यह संस्करण उन लोगों के लिए आदर्श है जो भेद्यता को गहराई से समझना चाहते हैं या आगे के शोध के लिए कोड को अनुकूलित करना चाहते हैं।
उच्च स्तर पर, एक्सप्लॉइट:
setuid बाइनरी (/usr/bin/su) खोलता है।AF_ALG AEAD सॉकेट बनाता है और इसे तर्क दोष को ट्रिगर करने के लिए आवश्यक मापदंडों के साथ कॉन्फ़िगर करता है।splice() तंत्र का लाभ उठाते हुए।algif_aead मॉड्यूल में दोष के कारण, कर्नेल गलती से लक्ष्य बाइनरी के पेज कैश में हमलावर-नियंत्रित डेटा के 4 बाइट्स लिखता है।/usr/bin/su के इन-मेमोरी पेज कैश को संशोधित करना प्रभावी रूप से बाइनरी को रनटाइम पर पैच करता है, जिससे एक अन-प्रिविलेज्ड उपयोगकर्ता एक पैच किए गए संस्करण को निष्पादित कर सकता है जो रूट शेल लौटाता है।एक्सप्लॉइट अत्यंत विश्वसनीय है (100% सफलता दर) और इसके लिए किसी रेस विंडो या प्रति-कर्नेल ऑफसेट की आवश्यकता नहीं होती है।
a664bf3d603d (git.kernel.org)