
यह CVE-2023-4911 के लिए एक (अभी बहुत कच्चा) प्रूफ ऑफ कॉन्सेप्ट है। अब तक मैंने केवल Ubuntu 22.10 kinetic पर इसे काम करते हुए सत्यापित किया है। एक्सप्लॉइट के वर्तमान संस्करण में काफी मात्रा में "मैजिक" ऑफसेट हैं। अगर आपके पास heap shaping को बेहतर बनाने के लिए सुझाव हैं, तो बेझिझक मुझे PR भेजें :)।
यह एक्सप्लॉइट मूल रूप से Qualys के उत्कृष्ट विवरण का एक कार्यान्वयन है। यह कुछ स्थानों पर भिन्न है। ऐसा ज़रूरी नहीं है क्योंकि मुझे लगता है कि मैं बेहतर जानता हूँ, यह सिर्फ वही है जो मेरे VM पर काम किया। शायद सुधार की गुंजाइश है।
make का उपयोग करके कंपाइल करें।./exploit को एक लिखने योग्य डायरेक्टरी से चलाएँ, जिसमें suid_lib.so और exploit दोनों हों। यह वर्तमान डायरेक्टरी में U नामक फ़ोल्डर बनाएगा और उसे आवश्यक लाइब्रेरियों से भर देगा।मेरे सीमित परीक्षण में, एक्सप्लॉइट को लगभग 4000-8000 प्रयासों की आवश्यकता होती है। स्टैक स्प्रे Qualys के कार्यान्वयन जितना अच्छा नहीं है, इसलिए इसमें थोड़ा अधिक समय लगता है।
यहाँ एक्सप्लॉइट के काम करने का एक उदाहरण है (तेज़ किया गया): https://youtu.be/uw0EJ5zGEKE
अगर आप इस पर काम करना चाहते हैं, तो यहाँ कुछ विचार दिए गए हैं जिनसे आप शुरुआत कर सकते हैं: