
CVE-2022-0185 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो एक लिनक्स कर्नेल हीप बफर ओवरफ्लो है जो FUSE और ROP चेन के माध्यम से स्थानीय विशेषाधिकार वृद्धि और कंटेनर एस्केप को सक्षम करता है।
CVE-2022-0185 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो लिनक्स कर्नेल के legacy_parse_param फंक्शन (fs/fs_context.c) में हीप-आधारित बफर ओवरफ्लो है। यह एक स्थानीय अनप्रिविलेज्ड उपयोगकर्ता को रूट तक विशेषाधिकार बढ़ाने की अनुमति देता है।
मूल एक्सप्लॉइट Crusaders of Rust द्वारा। पूर्ण लेख: https://www.willsroot.io/2022/01/cve-2022-0185.html
यह बग legacy_parse_param() के अंदर सीमा जांच में एक पूर्णांक अंडरफ्लो है। जब आंतरिक बफर size 4095 बाइट्स तक पहुँचता है, तो अहस्ताक्षरित घटाव रैप अराउंड हो जाता है और जांच को बायपास करता है, जिससे kmalloc-4k स्लैब में असीमित हीप ओवरफ्लो सक्षम होता है।
प्रभावित कर्नेल: Linux 5.1 – 5.15 पैच किया गया: Linux 5.16+
make
# Enter a user namespace to get CAP_SYS_ADMIN
unshare -Urm
# Run the exploit — makes /bin/bash SUID
./exploit_fuse
# Get a root shell
bash -p
यह Ubuntu कर्नेल ≥ 5.7 पर काम करता है। अपने कर्नेल संस्करण के लिए
exploit_fuse.cमेंsingle_startऔरmodprobe_pathऑफसेट समायोजित करें।
./exploit_kctf
~50% विश्वसनीयता, Kubernetes 1.22 (कर्नेल 5.10) पर लक्षित।
केवल शैक्षिक और अनुसंधान उद्देश्यों के लिए। उन सिस्टमों के खिलाफ उपयोग न करें जिनके आप मालिक नहीं हैं या जिनके परीक्षण की आपको स्पष्ट अनुमति नहीं है।
| फ़ाइल | विवरण |
|---|
exploit_fuse.c | FUSE + SYSVIPC का उपयोग कर Ubuntu LPE एक्सप्लॉइट |
exploit_kctf.c | पाइप + ROP चेन का उपयोग कर kCTF कंटेनर एस्केप |
fakefuse.c / .h | रेस कंडीशन के लिए कस्टम FUSE फाइलसिस्टम |
util.c / .h | साझा उपयोगिताएँ |
libfuse/, libfuse3.a | स्टेटिकली कंपाइल्ड libfuse (कोई dl_open नहीं) |
Makefile | बिल्ड स्क्रिप्ट |