
项目说明
Windows Exploit Suggester - Next Generation (WES-NG)
WES-NG is a 工具 based on the output of Windows'
systeminfo utility which provides the list of the OS is to, including any exploits for these . Every Windows OS between Windows XP and Windows 11, including their Windows Ser, is supported.
At the BITSADMIN blog an in-depth article on WES-NG is a: Windows Security Updates for Hackers.
Usage
1. Download WES-NG using
pip install wesng or using the following commandline:
git clone --depth 1
2. Obtain the latest 数据库 of by executing the command
wes.py --update
3. There are two options to check for missing patches:
a. Launch
missingkbs.vbs or
missingkbs.ps1 on the host to ha determine which patches are missing
b. Use Windows' built-in
systeminfo.exe 工具 to obtain the system information of the local system, or from a remote system using
systeminfo /S MyRemoteHost, and redirect this to a file:
systeminfo > systeminfo.txt
4. Depending on the method chosen in step 3 execute WES-NG:
a. With the
missing.txt file as input:
wes.py --missing missing.txt (or
wes.py -m missing.txt)
b. With the
systeminfo.txt file as the parameter:
wes.py systeminfo.txt
WES-NG then uses the 数据库 to determine which patches are applicable to the system and to which are currently exposed, including exploits if a.
5. As the data provided by Microsoft's MSRC feed is frequently incomplete and false positives are reported by
wes.py, contributed the
--muc-lookup parameter to identified missing patches from the
systeminfo.txt file against Microsoft's Update Catalog. Additionally, make sure to check the Eliminating false positives page at the Wiki on how to interpret the results.
For an o of all a parameters for
missingkbs.vbs,
missingkbs.ps1 and
wes.py, check CMDLINE.md.
Demo
!Gif animation showing usage of Windows Exploit Suggester - Next Generation
Collector
This GitHub repository regularly updates the 数据库 of , so running
wes.py with the
--update parameter gets the latest .
If manual generation of the .csv file with hotfix information is required, use the scripts from the /collector folder to compile the 数据库. Read the comments at the top of each script and execute them in the order as they are listed below. Executing these scripts will produce definitions.zip.
The WES-NG collector pulls information from sources:
Microsoft Security Bulletin Data: KBs for older systems [1]
MSRC: The Microsoft Security Update API of the Microsoft Security Response Center (MSRC): Standard 源码 of information for modern Microsoft Updates [2]
NIST National 数据库 (NVD): Complement with Exploit-DB links [3]
OffSec Exploit-DB [4]
These are combined into a single .csv file which is compressed and hosted in this GitHub repository.
Rationale
I de WES-NG because while GDSSecurity's Windows-Exploit-Suggester worked excellently for operating systems in the Windows XP and Windows Vista era, GDSSecurity's Windows-Exploit-Suggester does not work for operating systems like Windows 11 and published in recent years. This is because Microsoft replaced the Microsoft Security Bulletin Data Excel file [1] on which GDSSecurity's Windows-Exploit-Suggester is fully dependent, by the MSRC API [2]. The Microsoft Security Bulletin Data Excel file has not been updated since Q1 2017, so later operating systems and cannot be detected. Thanks , for this great 工具 which has served many of us for so many years!
Bugs
Bugs can be submitted via the Issues page
For false positives in results, please read the Eliminating false positives page at the Wiki first. In case that doesn't significantly reduce the number of false positives, follow the steps at the Report false positives page on the Wiki.
Changelog
See CHANGELOG.md
Impro
Add support for NoPowerShell's Get-SystemInfo cmdlet output
Add support for alternati formats of systeminfo (cs)
More testing on the returned false positi - see also the wiki
References
[1]
[2]
[3]
[4]
#
Authored by Arris Huijgen ( - )
项目信息
开发语言:Python
Star 数:4946
技术要点
该项目属于黑客技术方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕Windows Exploit Suggester - Next Generation展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
使用与学习建议
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
免责声明
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。