
Ubuntu एक ओपन-सोर्स GNU/Linux ऑपरेटिंग सिस्टम है जो मुख्य रूप से डेस्कटॉप अनुप्रयोगों पर केंद्रित है और Debian GNU/Linux पर आधारित है। हाल ही में एक व्हाइट-हैट हैकर ने Ubuntu के नवीनतम संस्करण (Ubuntu 16.04) में एक स्थानीय विशेषाधिकार वृद्धि भेद्यता (local privilege escalation vulnerability) का खुलासा किया है, जिसका CVE ID CVE-2017-16995 है। यह भेद्यता eBPF bpf(2) को कॉल करने वाले Linux कर्नेल सिस्टम में मौजूद है। जब उपयोगकर्ता एक दुर्भावनापूर्ण BPF प्रोग्राम प्रदान करता है, तो eBPF वेरिफ़ायर मॉड्यूल में गणना त्रुटि उत्पन्न होती है, जिससे मनमाना मेमोरी रीड/राइट (arbitrary memory read/write) की समस्या उत्पन्न होती है। कम विशेषाधिकार वाला उपयोगकर्ता इस भेद्यता का उपयोग करके प्रशासनिक विशेषाधिकार प्राप्त कर सकता है। यह भेद्यता पुराने संस्करणों में पहले ही ठीक कर दी गई है, लेकिन नवीनतम संस्करण में इसका अभी भी शोषण किया जा सकता है। आधिकारिक रूप से अभी तक कोई पैच जारी नहीं किया गया है, इसलिए यह भेद्यता 0day स्थिति में है।
Linux Kernel Version 4.14-4.4 केवल Ubuntu/Debian वितरण को प्रभावित करता है
उच्च जोखिम
bearcat@ubuntu:/opt$ lsb_release -a
<br>No LSB modules are available.
<br>Distributor ID: Ubuntu
<br>Description: Ubuntu 16.04.4 LTS
<br>Release: 16.04
<br>Codename: xenial
<br>bearcat@ubuntu:/opt$ uname -a
<br>Linux ubuntu 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
<br>bearcat@ubuntu:/opt$ id
<br>uid=1000(bearcat) gid=1000(bearcat) <br>groups=1000(bearcat),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),110(lxd),115(lpadmin),116(sambashare)
<br>bearcat@ubuntu:/opt$ ls
<br>exploit.c
<br>bearcat@ubuntu:/opt$ gcc exploit.c -o exploit
<br>bearcat@ubuntu:/opt$ ./exploit
<br>task_struct = ffff88003a0db800
<br>uidptr = ffff8800374b76c4
<br>spawning root shell
<br>root@ubuntu:/opt# id
<br>uid=0(root) gid=0(root) groups=0(root),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),110(lxd),115(lpadmin),116(sambashare),1000(bearcat)
<br>root@ubuntu:/opt#
फिलहाल कोई स्पष्ट पैच अपग्रेड समाधान प्रस्तावित नहीं किया गया है, लेकिन उपयोगकर्ताओं को सलाह दी जाती है कि वे कर्नेल पैरामीटर संशोधित करके सामान्य उपयोगकर्ताओं के लिए bpf(2) सिस्टम कॉल के उपयोग को प्रतिबंधित करें, जिससे भेद्यता के प्रभाव को कम किया जा सके:
पैरामीटर "kernel.unprivileged_bpf_disabled = 1" सेट करके, bpf(2) कॉल तक पहुंच को प्रतिबंधित करके इस विशेषाधिकार वृद्धि को रोका जा सकता है
root@Ubuntu# echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled
Linux कर्नेल संस्करण को अपग्रेड करें; यह सर्वर को पुनः प्रारंभ (reboot) करने के बाद प्रभावी होगा:
इस चरण की विशिष्ट क्रियाएं पर्यावरण सेटअप प्रक्रिया में पहले ही वर्णित की जा चुकी हैं; उपयोगकर्ता को केवल कर्नेल संस्करण बदलने की आवश्यकता है!
कोड पैच https://github.com/torvalds/linux/commit/95a762e2c8c942780948091f8f2a4f32fce1ac6f