
cve-2021-4034 के लिए PoC
cve-2021-4034 के लिए PoC
https://haxx.in द्वारा PoC पर आधारित: https://haxx.in/files/blasty-vs-pkexec.c. शायद वह https://github.com/blasty है?! मुझे नहीं पता।
https://github.com/daimoniac से थोड़ी मदद के साथ
gcc -Wall cve-2021-4034.c -o cve-2021-4034-exploit
asses_CVE-2021-4034.yml में hosts वेरिएबल को अपने उपयोग के अनुसार बदलें!
ansible-playbook -i </path/to/inventory.yml> </path/to/playbooks/>asses_CVE-2021-4034.yml
यह playbook एक्सप्लॉइट को होस्ट पर कॉपी करता है, उसे निष्पादित करता है और कई अवसरों पर whoami का मूल्यांकन करता है तथा एक्सप्लॉइट के रिटर्न वैल्यू के रूप में "root" की जाँच करता है।
जिन होस्ट्स पर Check result of privilege escalation कार्य विफल होता है, वहाँ प्रिविलेज एस्केलेशन सफल था।
प्ले रीकैप में जिन होस्ट्स पर failed=0 नहीं है, वे असुरक्षित हैं।
गहराई में? मुझे कोई जानकारी नहीं है। शायद अजीब मेमोरी मैशअप।
इस Ansible playbook की संचालनक्षमता के लिए आवश्यक है https://github.com/mike-artemis/cve-2021-4034/blob/main/cve-2021-4034.c#L50। https://haxx.in/files/blasty-vs-pkexec.c द्वारा सादा एक्सप्लॉइट केवल एक रूट-शेल खोलता है और Ansible playbook उसमें फंस जाता है। एक्सप्लॉइट के पेलोड को इसमें बदलने पर
" static char *a_argv[] = { \"bash\", \"-c\", \"whoami\", NULL };\n"
वर्तमान उपयोगकर्ता वापस आता है। Playbook प्रिविलेज एस्केलेशन के लिए उपयोगकर्ता की जाँच करता है और यदि ऐसा हुआ तो playbook को विफल कर देता है।