
يدقق تعرض نواة لينكس لاستغلالات رفع الامتيازات ويتحقق من إجراءات تعزيز أمان النواة باستخدام التحليل الإرشادي وفحوصات 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 | متعدد | ليس بعد | - | URL |
| needrestart | متعدد | ليس بعد | - | 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
...
لكل ثغرة استغلال، يتم حساب التعرّض. حالات "التعرّض" التالية ممكنة:
محتمل جدًا - من المرجّح جدًا أن تكون النواة (kernel) المُقيَّمة متأثرة، وهناك فرصة كبيرة جدًا أن يعمل ثغرة الاستغلال (PoC exploit) مباشرةً دون أي تعديلات جوهرية.
محتمل - من الممكن أن يعمل ثغرة الاستغلال، لكن من المرجّح جدًا الحاجة إلى تخصيص ثغرة الاستغلال (PoC exploit) لتناسب هدفك.
أقل احتمالًا - يلزم إجراء تحليل يدوي إضافي للتحقق مما إذا كانت النواة متأثرة.
غير محتمل - من غير المرجّح جدًا أن تكون النواة متأثرة (لا يُعرض ثغرة الاستغلال في مخرجات الأداة)
يمكن لـ LES التحقق من معظم إعدادات الأمان المتاحة في نواة Linux لديك. فهو لا يتحقق فقط من إعدادات وقت الترجمة (CONFIGs) الخاصة بالنواة، بل يتحقق أيضًا من إعدادات وقت التشغيل (sysctl)، مما يعطي صورة أكثر اكتمالًا عن الوضع الأمني لنواة قيد التشغيل. تُعد هذه الوظيفة استمرارًا حديثًا لمفتاح --kernel الخاص بأداة checksec.sh من Tobias Klein. مثال على مخرجات الأداة:
$ ./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 للثغرات المعروفة علنًا:
$ ./linux-exploit-suggester.sh
اعرض حالة ميزات الأمان على جهاز Linux:
$ ./linux-exploit-suggester.sh --checksec
قيّم مدى تعرّض نواة Linux للثغرات المعروفة علنًا بناءً على سلسلة 'uname' المقدّمة (أي مخرجات الأمر uname -a):
$ ./linux-exploit-suggester.sh --uname <uname-string>
لمزيد من أمثلة الاستخدام، انظر هنا.
من المفترض أنك تعرف الآن ما هو LES وما يمكنه فعله من أجلك. الآن انظر ما يمكنك فعله من أجل LES:
Tags في LES، مثل وسم: ubuntu=12.04{kernel:3.(2|5).0-(23|29)-generic} الذي ينص على: تم التحقق من أن الثغرة الموسومة تعمل بشكل صحيح على Ubuntu 12.04 مع النوى: 3.2.0-23-generic، 3.2.0-29-generic، 3.5.0-23-generic و3.5.0-29-generic؛. مع إضافة هذا الوسم، سيقوم LES تلقائيًا بإبراز ورفع Rank الديناميكي للثغرة عند تشغيلها على Ubuntu 12.04 مع أحد إصدارات النواة المدرجة. سيساعدك هذا (والآخرين) أثناء اختبارات الاختراق على تحديد آلات Linux المعرضة للخطر الحرج بسرعة.ext-url إلى LES وعدّل Tags لتعكس الأهداف المضافة حديثًا. انظر هذا المقال للحصول على مثال ممتاز لتكييف ثغرة PoC محددة مع إصدارات نواة مختلفة.FEATURES (إن لم يكن موجودًا بالفعل) وانشر تحليلك على: https://github.com/mzet-/les-res/blob/master/features/<feature-name>.md.bcoles على مساهماته الممتازة والمتكررة في LES.