wesng v1.03 releases: Windows Exploit Suggester
Windows Exploit Suggester – Next Generation (WES-NG)
WES-NG is a tool based on the output of Windows’ systeminfo utility that provides you with the list of vulnerabilities the OS is vulnerable to, including any exploits for these vulnerabilities. Every Windows OS between Windows XP and Windows 11, including their Windows Server counterparts, is supported.
This GitHub repository will regularly update the database of vulnerabilities so running wes.py with the –update parameter will get you the latest version. In case for some reason, you want to generate the .csv file with hotfix information yourself, use the scripts from the /collector folder to compile the database. Read the comments at the top of each script and execute them in the order they are listed below. After executing these scripts you will end up with the CVEs.csv file. The WES-NG collector pulls information from various sources:
- Microsoft Security Bulletin Data: KBs for older systems 
- MSRC: The Microsoft Security Update API of the Microsoft Security Response Center (MSRC) is nowadays the standardized way to obtain information about Microsoft updates 
- NIST National Vulnerability Database (NVD): Complement vulnerabilities with Exploit-DB links  These are combined into a single .csv file which is compressed and hosted in this GitHub repository.
- Support for 21H2 of Windows 10, Windows 11 and Windows Server 2022
Download & Use
- Download WES-NG using pip install wesng or using the following commandline: git clone https://github.com/bitsadmin/wesng –depth 1
- Obtain the latest database of vulnerabilities by executing the command wes.py –update
- There are two options to check for missing patches: a. Launch missingkbs.vbs on the host to have Windows determine which patches are missing b. Use Windows’ built-in systeminfo.exe tool 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
- 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 database to determine which patches are applicable to the system and to which vulnerabilities are currently exposed, including exploits if available.
- As the data provided by Microsoft’s MSRC feed is frequently incomplete and false positives are reported by wes.py, @DominicBreuker contributed the –muc-lookup parameter to validate 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 overview of all available parameters for both missingpatches.vbs and wes.py, check CMDLINE.md.
Copyright (c) 2019, Arris Huijgen
All rights reserved.