
CVE-2026-74469 के लिए स्थानीय विशेषाधिकार उन्नयन PoC, जो Linux x86-64 सिस्टम पर root प्राप्त करने के लिए SCTP डायग्नोस्टिक-रिप्लाई कर्नेल मेमोरी करप्शन का उपयोग करता है।
[!WARNING] यह PoC केवल रक्षकों, मेंटेनरों और अधिकृत सुरक्षा टीमों को उन सिस्टमों पर पैच, शमन, डिटेक्शन और एक्सपोज़र को सत्यापित करने में मदद करने के लिए प्रदान किया गया है जिनके वे स्वामी हैं या जिनका परीक्षण करने के लिए स्पष्ट रूप से अधिकृत हैं।
यह सुनिश्चित करना पूरी तरह से आपकी ज़िम्मेदारी है कि इस सामग्री का आपका उपयोग वैध, अधिकृत, नियंत्रित और एक पृथक परीक्षण वातावरण में किया जाए।
[!WARNING] यह PoC विनाशकारी है। यह लगभग 8 MiB कर्नेल मेमोरी को अधिलेखित करता है और रीबूट तक
diagspill_holdबलिदान-मेमोरी धारक द्वारा रखे गए भ्रष्ट पेज टेबल छोड़ देता है। उस प्रक्रिया को मारने से कर्नेल अस्थिर हो सकता है।असंबंधित मेमोरी भ्रष्ट हो सकती है और मशीन पैनिक कर सकती है। केवल एक डिस्पोज़ेबल VM/फेंकने योग्य होस्ट में चलाएँ।
PoC:
sudo के माध्यम से एक रूट शेल खोलता
है, और भ्रष्ट मैपिंग रखने वाली प्रक्रिया को डिटैच करता है।PoC x86-64 को मानता है और लक्षित करता है ताकि चीज़ें सरल रहें। सिद्धांत रूप में, बग आर्क-विशिष्ट नहीं होना चाहिए।
पूर्णता के लिए विस्तृत रूप से गणना:
6.17.0-35-generic के साथ Ubuntu 24.04, या 6.19.10-300.fc44.x86_64 के साथ
Fedora 44 (आप इन जाँचों को हटाने का प्रयास कर सकते हैं, लेकिन अन्य
डिस्ट्रो/कर्नेल संस्करणों के लिए प्रति-लक्ष्य अनुकूलन/ग्रूमिंग की आवश्यकता हो
सकती है)MemTotal 3,700,000 और 4,200,000 KiB के बीच_, या - हों/root या पासवर्डलेस sudo तक कोई पूर्व-मौजूद पढ़ने की पहुँच नहींsctp_diag कर्नेल समर्थन, ट्रांसपेरेंट ह्यूज-पेज आवंटन, 2,048
वर्कर्स और डायग्नोस्टिक सॉकेट वॉल के लिए पर्याप्त प्रोसेस/फ़ाइल सीमाएँ, और
Ubuntu पर लगभग 2,343 MiB या Fedora पर 3,125 MiB पेज टेबल बनाए रखने के लिए
पर्याप्त x86-64 एड्रेस स्पेस और मेमोरी/etc/sudoers.d इन्क्लूड और एक निष्पादन योग्य /usr/bin/sudo/usr/bin/env, libc और Linux UAPI
डेवलपमेंट हेडर के साथ , , , , , और PoC बहुत vCPU-गिनती-/RAM-संवेदनशील है, इसलिए यह 4 vCPUs और 4 GB RAM लागू करता है। अन्य vCPU/मेमोरी संयोजनों के लिए आपको संभवतः प्रति-लक्ष्य अनुकूलन/ग्रूमिंग की आवश्यकता होगी।
इसे passwd प्रविष्टि वाले एक अपरिविलेज्ड उपयोगकर्ता के रूप में चलाएँ; बड़े
SCTP एसोसिएशन को बनाने में PoC को थोड़ा समय लग सकता है।
python3 diagspill_root_repro.py
एक रन के बाद (सफल हो या नहीं), सुरक्षित रहने के लिए diagspill_hold को
मुक्त करने के लिए मशीन को रीबूट करें। यदि आप इसे सीधे मारते हैं, तो आप
लगभग निश्चित रूप से कर्नेल को अस्थिर कर देंगे।
ccidsudotrueshrm