Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-4034 — यह PwnKit भेद्यता के लिए एक्सप्लॉइट का मेरा सरल कार्यान्वयन है। | Kitploit
उपकरण/GitHubGitHub/nicoibarburu/cve-2021-4034
विशेषाधिकार वृद्धिशोषणलर्निंग और शिक्षाबाइनरी शोषण
GitHubnicoibarburu/cve-2021-4034

CVE-2021-4034

यह PwnKit भेद्यता के लिए एक्सप्लॉइट का मेरा सरल कार्यान्वयन है।

रिपॉजिटरी देखें
4 दिन पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

प्रूफ ऑफ कॉन्सेप्ट (Proof of Concept): CVE-2021-4034 (PwnKit)

नोट: यह रिपॉजिटरी और इसकी सामग्री स्नातक अंतिम परियोजना (GrAL) का हिस्सा हैं, जो केवल शैक्षिक उद्देश्यों और अकादमिक अनुसंधान के लिए बनाई गई हैं।

विवरण

यह रिपॉजिटरी CVE-2021-4034 भेद्यता (जिसे PwnKit के नाम से भी जाना जाता है) के लिए एक प्रूफ ऑफ कॉन्सेप्ट (PoC) प्रस्तुत करती है। यह मेमोरी भ्रष्टाचार भेद्यता Linux प्रणालियों पर Polkit के pkexec घटक को प्रभावित करती है। pkexec को खाली तर्क सूची (argc == 0) के साथ निष्पादित करने पर, पर्यावरणीय चरों में हेरफेर करके इसे एक मनमाना साझा लाइब्रेरी लोड करने के लिए बाध्य किया जा सकता है, जिससे स्थानीय विशेषाधिकार वृद्धि प्राप्त होती है।

शोषण के चरण (पर्यावरण विश्लेषण)

नीचे, भेद्यता का शोषण करने के लिए निष्पादन वातावरण तैयार करने हेतु उठाए जाने वाले कदमों का वर्णन किया गया है। यह प्रक्रिया निर्धारित करती है कि pkexec की मेमोरी रीड/राइट त्रुटि का किस प्रकार लाभ उठाया जाता है:

1. पर्यावरण की तैयारी (gconv संरचना)

यह एक्सप्लॉइट GLib द्वारा त्रुटि संदेश मुद्रित करने के प्रयास के दौरान वर्ण रूपांतरण को प्रबंधित करने के तरीके का दुरुपयोग करता है। इसके लिए, पहला कदम एक विशिष्ट निर्देशिका संरचना बनाना है, जो GLib के लिए GCONV रूपांतरण मॉड्यूल के स्थानीय भंडार के रूप में कार्य करेगी।

2. पर्यावरणीय चरों का हेरफेर

भेद्यता की कुंजी GCONV_PATH पर्यावरणीय चर को इंजेक्ट करना है, जो pkexec की argc == 0 स्थिति के कारण उत्पन्न सीमा-से-बाहर (out-of-bounds) लेखन का लाभ उठाता है। इस प्रकार, प्रोग्राम को एक असामान्य वर्णसेट का उपयोग करने के लिए बाध्य किया जाता है, जो GLib को संकेत देता है कि वर्ण रूपांतरण मॉड्यूल को पिछले चरण में बनाई गई नियंत्रित निर्देशिका में खोजा जाना चाहिए।

3. दुर्भावनापूर्ण साझा लाइब्रेरी बनाना (.so)

अपने कोड को निष्पादित करने के लिए, एक साझा लाइब्रेरी (shared object या .so) संकलित की जानी चाहिए। जब pkexec एक ऐसे वर्णसेट को संसाधित करने का प्रयास करता है जिसे वह ढूंढ नहीं पाता, तो यह इस लाइब्रेरी को हमारी नकली gconv निर्देशिका से लोड करेगा। चूँकि pkexec SUID बिट सक्रिय वाला एक बाइनरी है (यह root के रूप में निष्पादित होता है), इस लाइब्रेरी को लोड करने पर हमारा कोड root विशेषाधिकार प्राप्त कर लेगा, सिस्टम पर पूर्ण नियंत्रण ले लेगा (उदाहरण के लिए, root शेल खोलकर)।

4. gconv-modules फ़ाइल का कॉन्फ़िगरेशन

अंत में, उस स्थानीय निर्देशिका में gconv-modules नामक एक कॉन्फ़िगरेशन फ़ाइल बनाई जानी चाहिए। यह फ़ाइल एक अनुक्रमणिका के रूप में कार्य करती है: यह GLib को बताती है कि अनुरोधित विशिष्ट वर्णसेट के रूपांतरण के लिए उसे कौन सी विशिष्ट लाइब्रेरी (.so) लोड करनी चाहिए। यह फ़ाइल pkexec द्वारा अनुरोधित रूपांतरण को चरण 3 में बनाई गई साझा लाइब्रेरी से जोड़ती है।

संकलन और सफाई

प्रोजेक्ट में एक Makefile शामिल है जो C बाइनरी के संकलन और पर्यावरण की सफाई को स्वचालित करता है।

  • प्रोजेक्ट संकलित करने के लिए: $ make

  • बनाई गई फ़ाइलों (अस्थायी, फ़ोल्डर और बाइनरी) को साफ करने के लिए: $ make clean

टूल डाउनलोड करें