
लिनक्स कर्नेल को विशेषाधिकार वृद्धि शोषण के प्रति जोखिम का ऑडिट करता है और अनुमानात्मक विश्लेषण तथा config/sysctl जांचों का उपयोग करके कर्नेल सख्तीकरण सुरक्षा उपायों को सत्यापित करता है।
त्वरित डाउनलोड:
wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh -O les.sh
LES के उपयोग और आंतरिक कार्यप्रणाली के बारे में विवरण:
https://blog.z-labs.eu/2019/05/10/les-paper.html
LES के लिए अतिरिक्त संसाधन:
https://github.com/mzet-/les-res
| नाम | CVE | LES में | सत्यापित | संदर्भ |
|---|---|---|---|---|
| CopyFail | CVE-2026-31431 | अभी नहीं | - | https://copy.fail/ |
| DirtyFrag | CVE-2026-43284 | अभी नहीं | - | https://www.openwall.com/lists/oss-security/2026/05/07/8 |
| DirtyAH6 | अभी नहीं | - | https://heyitsas.im/posts/lpe-quartet/ | |
| PPPoEject | अभी नहीं | - | https://heyitsas.im/posts/lpe-quartet/ | |
| TUNderflow | अभी नहीं | - | https://heyitsas.im/posts/lpe-quartet/ | |
| DiagSpill | अभी नहीं | - | https://heyitsas.im/posts/lpe-quartet/ | |
| OVSwrap | अभी नहीं | - | https://heyitsas.im/posts/ovswrap/ | |
| CIFSwith | अभी नहीं | - | https://heyitsas.im/posts/cifswitch/ | |
| RefluXFS | अभी नहीं | - | URL | |
| vsockpwn | CVE-2025-21756 | अभी नहीं | - | https://hoefler.dev/articles/vsock.html |
| CrackArmor | multiple | अभी नहीं | - | URL |
| needrestart | multiple | अभी नहीं | - | https://www.qualys.com/2024/11/19/needrestart/needrestart.txt |
| StackRot | CVE-2023-3269 | अभी नहीं | - | https://www.openwall.com/lists/oss-security/2023/07/28/1 |
LES टूल को किसी दिए गए Linux कर्नेल/Linux-आधारित मशीन के लिए सुरक्षा कमियों का पता लगाने में सहायता करने के लिए डिज़ाइन किया गया है। यह निम्नलिखित कार्यक्षमता प्रदान करता है:
टूल दिए गए Linux सिस्टम के सार्वजनिक रूप से ज्ञात Linux विशेषाधिकार उन्नयन एक्सप्लॉइट्स के प्रति जोखिम का आकलन करता है (यहाँ विस्तार से चर्चा की गई ह्यूरिस्टिक विधियों का उपयोग करते हुए यहाँ)। टूल आउटपुट का उदाहरण:
$ ./linux-exploit-suggester.sh
...
[+] [CVE-2017-16995] eBPF_verifier
Details: https://ricklarabee.blogspot.com/2018/07/ebpf-and-analysis-of-get-rekt-linux.html
Exposure: highly probable
Tags: debian=9.0{kernel:4.9.0-3-amd64},fedora=25|26|27,[ ubuntu=14.04 ]{kernel:4.4.0-89-generic},ubuntu=(16.04|17.04){kernel:4.(8|10).0-(19|28|45)-generic}
Download URL: https://www.exploit-db.com/download/45010
Comments: CONFIG_BPF_SYSCALL needs to be set && kernel.unprivileged_bpf_disabled != 1
[+] [CVE-2017-1000112] NETIF_F_UFO
Details: http://www.openwall.com/lists/oss-security/2017/08/13/1
Exposure: probable
Tags: [ ubuntu=14.04{kernel:4.4.0-*} ],ubuntu=16.04{kernel:4.8.0-*}
Download URL: https://raw.githubusercontent.com/xairy/kernel-exploits/master/CVE-2017-1000112/poc.c
ext-url: https://raw.githubusercontent.com/bcoles/kernel-exploits/cve-2017-1000112/CVE-2017-1000112/poc.c
Comments: CAP_NET_ADMIN cap or CONFIG_USER_NS=y needed. SMEP/KASLR bypass included. Modified version at 'ext-url' adds support for additional distros/kernels
[+] [CVE-2016-8655] chocobo_root
Details: http://www.openwall.com/lists/oss-security/2016/12/06/1
Exposure: probable
Tags: [ ubuntu=(14.04|16.04){kernel:4.4.0-(21|22|24|28|31|34|36|38|42|43|45|47|51)-generic} ]
Download URL: https://www.exploit-db.com/download/40871
Comments: CAP_NET_RAW capability is needed OR CONFIG_USER_NS=y needs to be enabled
...
प्रत्येक एक्सप्लॉइट के लिए, एक्सपोज़र की गणना की जाती है। निम्नलिखित 'Exposure' स्थितियाँ संभव हैं:
Highly probable - मूल्यांकित कर्नेल संभवतः प्रभावित है और इसकी बहुत अच्छी संभावना है कि PoC एक्सप्लॉइट बिना किसी बड़े संशोधन के सीधे काम करेगा।
Probable - यह संभव है कि एक्सप्लॉइट काम करेगा लेकिन सबसे अधिक संभावना है कि आपके लक्ष्य के अनुरूप PoC एक्सप्लॉइट को अनुकूलित करने की आवश्यकता होगी।
Less probable - यह सत्यापित करने के लिए अतिरिक्त मैन्युअल विश्लेषण की आवश्यकता है कि कर्नेल प्रभावित है या नहीं।
Unprobable - अत्यधिक असंभावित कि कर्नेल प्रभावित है (एक्सप्लॉइट टूल के आउटपुट में प्रदर्शित नहीं होता है)
LES आपके Linux कर्नेल द्वारा उपलब्ध अधिकांश सुरक्षा सेटिंग्स की जाँच कर सकता है। यह न केवल कर्नेल कंपाइल-टाइम कॉन्फ़िगरेशन (CONFIGs) का सत्यापन करता है बल्कि रन-टाइम सेटिंग्स (sysctl) का भी सत्यापन करता है, जिससे चल रहे कर्नेल की सुरक्षा स्थिति की अधिक पूर्ण तस्वीर मिलती है। यह कार्यक्षमता Tobias Klein के checksec.sh टूल के लिए --kernel स्विच की आधुनिक निरंतरता है। टूल आउटपुट का उदाहरण:
$ ./linux-exploit-suggester.sh --checksec
Mainline kernel protection mechanisms:
[ Disabled ] GCC stack protector support (CONFIG_HAVE_STACKPROTECTOR)
https://github.com/mzet-/les-res/blob/master/features/stackprotector-regular.md
[ Disabled ] GCC stack protector STRONG support (CONFIG_STACKPROTECTOR_STRONG)
https://github.com/mzet-/les-res/blob/master/features/stackprotector-strong.md
[ Enabled ] Low address space to protect from user allocation (CONFIG_DEFAULT_MMAP_MIN_ADDR)
https://github.com/mzet-/les-res/blob/master/features/mmap_min_addr.md
[ Disabled ] Restrict unprivileged access to kernel syslog (CONFIG_SECURITY_DMESG_RESTRICT)
https://github.com/mzet-/les-res/blob/master/features/dmesg_restrict.md
[ Enabled ] Randomize the address of the kernel image (KASLR) (CONFIG_RANDOMIZE_BASE)
https://github.com/mzet-/les-res/blob/master/features/kaslr.md
[ Disabled ] Hardened user copy support (CONFIG_HARDENED_USERCOPY)
https://github.com/mzet-/les-res/blob/master/features/hardened_usercopy.md
...
Linux बॉक्स के सार्वजनिक रूप से ज्ञात exploits के प्रति exposure का आकलन करें:
$ ./linux-exploit-suggester.sh
Linux बॉक्स पर सुरक्षा सुविधाओं की स्थिति दिखाएँ:
$ ./linux-exploit-suggester.sh --checksec
प्रदान किए गए 'uname' स्ट्रिंग (अर्थात् uname -a कमांड का आउटपुट) के आधार पर सार्वजनिक रूप से ज्ञात exploits के संदर्भ में Linux kernel के exposure का आकलन करें:
$ ./linux-exploit-suggester.sh --uname <uname-string>
अधिक उपयोग उदाहरणों के लिए, यहाँ देखें।
अब आपको पता होना चाहिए कि LES क्या है और यह आपके लिए क्या कर सकता है। अब देखें कि आप LES के लिए क्या कर सकते हैं: