
शैक्षणिक PoC CVE-2021-4034, PwnKit, polkit के pkexec के माध्यम से LPE। केवल अधिकृत उपयोग।
PwnKit के लिए प्रूफ ऑफ कॉन्सेप्ट, जो polkit के pkexec में एक स्थानीय विशेषाधिकार वृद्धि (local privilege escalation) है। डिफ़ॉल्ट इंस्टॉल पर कोई भी अन-प्रिविलेज्ड स्थानीय उपयोगकर्ता रूट बन सकता है।
pkexec के संवेदनशील संस्करण प्रोसेस आर्गुमेंट काउंट को गलत तरीके से संभालते हैं। इससे नियंत्रित पर्यावरण चर (environment variables) pkexec के एनवायरनमेंट में पुनः शामिल हो जाते हैं, जिसके परिणामस्वरूप एक हमलावर-नियंत्रित शेयर्ड ऑब्जेक्ट रूट के रूप में चलता है। इसे 25 जनवरी 2022 को Qualys रिसर्च टीम द्वारा सार्वजनिक किया गया था और CVSS v3.1 पर इसका स्कोर 7.8 उच्च है। NVD प्रविष्टि CVE-2021-4034 है।
व्यावहारिक रूप से 2009 के बाद से हर polkit रिलीज़ समन्वित फिक्स तक प्रभावित थी। वितरण ने प्रकटीकरण तिथि पर या उसके बाद पैच किए गए पैकेज जारी किए, इसलिए अपने विक्रेता के अपडेट को वर्तमान रखें।
यह एक अच्छी तरह से प्रलेखित, सार्वजनिक रूप से प्रकट भेद्यता के लिए एक शैक्षिक संदर्भ है। मैं इसका उपयोग pkexec आर्गुमेंट हैंडलिंग दोष का अध्ययन करने, अधिकृत लैब्स और आकलनों में पैच स्थिति को मान्य करने, और डिटेक्शन तथा रेमेडिएशन नोट्स रखने के लिए करता हूँ।
इसे केवल उन सिस्टम्स पर चलाएँ जिनके आप मालिक हैं या जिन्हें परीक्षण के लिए अधिकृत किया गया है।
gcc cve-2021-4034-poc.c -o cve-2021-4034-poc
./cve-2021-4034-poc
एक संवेदनशील होस्ट पर यह आपको रूट शेल में डाल देता है। Debian 10 buster और CentOS 7 के विरुद्ध सत्यापित।
polkit और pkexec को आपके वितरण के फिक्स्ड रिलीज़ में पैच करें। यदि आप तुरंत पैच नहीं कर सकते हैं, तो pkexec बाइनरी पर chmod 0755 के साथ SUID बिट हटा दें, यह स्वीकार करते हुए कि आप pkexec विशेषाधिकार प्रत्यायोजन खो देंगे। डिटेक्शन के लिए, खाली argv या GCONV_PATH, CHARSET या SHELL जैसे अजीब एनवायरनमेंट के साथ pkexec चलने पर अलर्ट करें, ठीक पहले जब रूट शेल दिखाई दे।
यह भेद्यता Qualys रिसर्च टीम द्वारा पाई गई और जिम्मेदारी से प्रकट की गई।
oss-security सलाह: https://seclists.org/oss-sec/2022/q1/80
यह कोड केवल अध्ययन और अधिकृत सुरक्षा परीक्षण के लिए प्रकाशित किया गया है। इसे उन सिस्टम्स के विरुद्ध चलाना जिनके आप मालिक नहीं हैं या जिनके परीक्षण के लिए आपके पास लिखित अनुमति नहीं है, अवैध है और इसके आपराधिक और सिविल दायित्व हो सकते हैं। इसका उपयोग अपनी लैब्स में या हस्ताक्षरित एंगेजमेंट स्कोप के तहत करें। इसके साथ आप जो भी करते हैं उसके लिए आप जिम्मेदार हैं।