
CVE-2026-31431 (कॉपी फेल) के लिए Ubuntu/Debian VPS पर त्वरित शमन और पैच स्क्रिप्ट
🌐 English | Português | Español | 中文 | Íslenska
CVE-2026-31431 के लिए एक-कमांड शमन और पैच — लिनक्स कर्नेल "कॉपी फेल" स्थानीय विशेषाधिकार वृद्धि भेद्यता। स्क्रिप्ट प्रभावित algif_aead मॉड्यूल को अक्षम करती है, apt के माध्यम से आपके कर्नेल को अपग्रेड करती है, और (वैकल्पिक रूप से) सिस्टम को अद्यतित रखने के लिए एक systemd टाइमर स्थापित करती है।
Ubuntu सर्वर के लिए डिज़ाइन किया गया (डेबियन-आधारित सिस्टम के साथ भी संगत)।
⚠️ स्क्रिप्ट चलाने से पहले उसकी समीक्षा करें। यह एक सुरक्षा उपकरण है जो रूट के रूप में चलता है। इसे
sudoमें पाइप करने से पहलेcopyfail.shपढ़ें। जब संभव हो तो हमेशा अपने वितरण की आधिकारिक कर्नेल अद्यतन प्रक्रिया को प्राथमिकता दें।
CVE-2026-31431 ("कॉपी फेल") कर्नेल के algif_aead (उपयोगकर्तास्पेस क्रिप्टो API का AEAD सॉकेट इंटरफ़ेस) में एक तर्क दोष है। एक स्थानीय अन-विशेषाधिकार प्राप्त उपयोगकर्ता किसी भी पठनीय फ़ाइल के पेज कैश में एक निर्धारित 4-बाइट लेखन ट्रिगर कर सकता है — जिसमें setuid बाइनरी भी शामिल हैं — और सेकंडों में रूट एक्सेस प्राप्त कर सकता है। यह दोष 2017 में पेश किया गया था (कमिट 72548b093ee3) और 2017 और फिक्स के बीच निर्मित हर कर्नेल को प्रभावित करता है। यह स्क्रिप्ट आपके वितरण का कर्नेल पैच लागू करते समय कमजोर मॉड्यूल को अक्षम करती है।
apt-get और awk उपलब्धsudo)wget -O copyfail.sh https://raw.githubusercontent.com/paulorlima9/copyfail-fix/main/copyfail.sh
chmod +x copyfail.sh
sudo ./copyfail.sh
पहली बार चलाने पर, स्क्रिप्ट निम्न कार्य करेगी:
algif_aead मॉड्यूल को ब्लैकलिस्ट करने के लिए /etc/modprobe.d/disable-algif.conf लिखेगीalgif_aead को अनलोड करेगीapt-get update && apt-get upgrade -y चलाएगीनया कर्नेल लोड करने के लिए अपग्रेड के बाद रिबूट आवश्यक है।
sudo ./copyfail.sh [options]
| विकल्प | संक्षिप्त | विवरण |
|---|---|---|
--help | -h | सहायता संदेश दिखाएँ |
--mitigate | -m | केवल शमन लागू करें (algif_aead मॉड्यूल अक्षम करें) |
--upgrade | -u | केवल कर्नेल/पैकेज अपग्रेड करें (apt-get upgrade) |
--check | -c | वर्तमान स्थिति दिखाएँ (कर्नेल संस्करण, मॉड्यूल, शमन) |
--revert | -r | शमन वापस लें (कर्नेल पैच और रिबूट के बाद) |
--supervision | -s | systemd टाइमर के माध्यम से स्वचालित दैनिक अद्यतन सक्षम करें |
पूर्ण फिक्स — शमन लागू करें और कर्नेल अपग्रेड करें:
sudo ./copyfail.sh
केवल स्थिति जाँचें:
sudo ./copyfail.sh --check
केवल शमन (कोई कर्नेल अपग्रेड नहीं):
sudo ./copyfail.sh --mitigate
कर्नेल पैच और रिबूट की पुष्टि के बाद शमन वापस लें:
sudo ./copyfail.sh --revert
दैनिक स्वचालित अद्यतन सक्षम करें (सुपरविज़न):
sudo ./copyfail.sh --supervision
सुपरविज़न सुविधा एक systemd टाइमर स्थापित करती है जो हर 24 घंटे में एक बार apt-get upgrade चलाता है, यह सुनिश्चित करता है कि आपका वितरण उन्हें प्रकाशित करते ही कर्नेल पैच प्राप्त हो जाएं।
सक्षम होने पर, दो systemd इकाइयाँ बनाई जाती हैं:
copyfail-fix-supervision.service — वनशॉट सेवा जो --upgrade के साथ स्क्रिप्ट निष्पादित करती हैcopyfail-fix-supervision.timer — टाइमर जो सेवा को दैनिक (और बूट के 5 मिनट बाद) ट्रिगर करता है# टाइमर स्थिति जाँचें
systemctl status copyfail-fix-supervision.timer
# अगला निर्धारित रन देखें
systemctl list-timers copyfail-fix-supervision.timer
# स्वचालित अद्यतन अक्षम करें
sudo systemctl stop copyfail-fix-supervision.timer
sudo systemctl disable copyfail-fix-supervision.timer
# मैन्युअल रूप से अद्यतन ट्रिगर करें
sudo systemctl start copyfail-fix-supervision.service
/etc/modprobe.d/disable-algif.conf में install algif_aead /bin/false लिखता है ताकि मॉड्यूल अगले बूट पर लोड न हो सकेrmmod algif_aead कॉल करता है (यदि मॉड्यूल उपयोग में है तो छोड़ दिया जाता है — रिबूट आवश्यक)apt-get update के बाद एक गैर-इंटरैक्टिव apt-get upgrade चलाता है--check के साथ, uname -r, lsmod, modprobe फ़ाइल, और नवीनतम स्थापित linux-image-* पैकेज का निरीक्षण करता है--revert के साथ, modprobe फ़ाइल हटाता है और modprobe के माध्यम से मॉड्यूल को पुनः लोड करता हैनिष्पादन के दौरान, स्क्रिप्ट प्रगति संकेतक प्रदर्शित करती है:
+ (हरा) — क्रिया लागू- (लाल) — क्रिया वापस ली गई. (ग्रे) — क्रिया छोड़ी गई (पहले से लागू या लागू नहीं)! (पीला) — चेतावनी (जैसे रिबूट आवश्यक)MIT