
हैक किया गया Dirty Pipe (CVE-2022-0847) PoC जो रूट शेल उत्पन्न करने के लिए SUID बाइनरी का अपहरण करता है। (और क्षतिग्रस्त बाइनरी को पुनर्स्थापित करने का भी प्रयास करता है)
हैक किया गया डर्टी पाइप (CVE-2022-0847) PoC जो SUID बाइनरी को हाईजैक करके रूट शेल प्राप्त करता है। (और क्षतिग्रस्त बाइनरी को पुनर्स्थापित करने का भी प्रयास करता है)
लिनक्स कर्नेल में copy_page_to_iter_pipe और push_pipe फ़ंक्शनों में नए पाइप बफर संरचना के "flags" सदस्य में उचित प्रारंभिकरण (initialization) की कमी पाई गई, जिससे इसमें पुराने (stale) मान मौजूद हो सकते हैं। एक अन-प्रिविलेज्ड स्थानीय उपयोगकर्ता इस दोष का उपयोग करके केवल-पठनीय (read only) फ़ाइलों द्वारा समर्थित पेज कैश में पेजों पर लिख सकता है और इस प्रकार सिस्टम पर अपने विशेषाधिकारों को बढ़ा सकता है।
'डर्टी पाइप' (Dirty Pipe) के रूप में जानी जाने वाली एक नई लिनक्स भेद्यता स्थानीय उपयोगकर्ताओं को सार्वजनिक रूप से उपलब्ध एक्सप्लॉइट्स के माध्यम से रूट विशेषाधिकार प्राप्त करने की अनुमति देती है।
आज, सुरक्षा शोधकर्ता Max Kellermann ने 'डर्टी पाइप' भेद्यता का जिम्मेदारीपूर्वक खुलासा किया और बताया कि यह लिनक्स कर्नेल 5.8 और उसके बाद के संस्करणों को प्रभावित करती है, यहाँ तक कि एंड्रॉइड डिवाइसों को भी।
इस भेद्यता को CVE-2022-0847 के रूप में ट्रैक किया जाता है और यह एक गैर-विशेषाधिकार प्राप्त उपयोगकर्ता को केवल-पठनीय फ़ाइलों में डेटा इंजेक्ट और ओवरराइट करने की अनुमति देता है, जिसमें SUID प्रक्रियाएँ भी शामिल हैं जो रूट के रूप में चलती हैं।
Kellerman ने यह बग तब खोजा जब वह एक ऐसे बग का पता लगा रहे थे जो उनके एक ग्राहक के वेब सर्वर एक्सेस लॉग को दूषित कर रहा था।
फिर Bl4sty ने एक और संस्करण लिखा। /etc/passwd जैसी फ़ाइल को ओवरराइट करने के बजाय, यह उपयोगकर्ता द्वारा निर्दिष्ट SUID बाइनरी (जैसे /bin/su) को ओवरराइट करता है, और शेलकोड इंजेक्ट करता है जिसे फिर विशेषाधिकार प्राप्त उपयोगकर्ता (यानी रूट) अनुमतियों के साथ निष्पादित किया जाता है।
gcc dirtypipez.c -o exploit
./exploit /bin/su