该工具将目标的补丁级别与 Microsoft 漏洞数据库进行比较,以检测目标上可能缺失的补丁。如果存在针对缺失公告的公开漏洞利用程序和 Metasploit 模块,它还会通知用户。
它需要 Windows 主机的 'systeminfo' 命令输出,以便与 Microsoft 安全公告数据库进行比较,并确定主机的补丁级别。
它能够通过 --update 标志从 Microsoft 自动下载安全公告数据库,并将其保存为 Excel 电子表格。
查看命令输出时,务必注意:该工具会假定所有漏洞均存在,然后根据修补程序(hotfix)数据有选择地将其排除。这可能导致大量误报,因此了解目标主机上实际运行的软件至关重要。例如,即使目标主机未运行 IIS,只要存在已知的 IIS 漏洞利用程序,它也会将其标记出来。
输出会以字符值的形式显示公开漏洞利用程序(E)或 Metasploit 模块(M)。
其设计深受 Pentura 的 Linux_Exploit_Suggester 启发。
博客文章:"Introducing Windows Exploit Suggester",https://blog.gdssecurity.com/labs/2014/7/11/introducing-windows-exploit-suggester.html
更新数据库
$ ./windows-exploit-suggester.py --update
[*] initiating...
[*] successfully requested base url
[*] scraped ms download url
[+] writing to file 2014-06-06-mssb.xlsx
[*] done
安装依赖项
(安装 python-xlrd,$ pip install xlrd --upgrade)
将 "systeminfo" 输入提供给它,并指向 Microsoft 数据库
$ ./windows-exploit-suggester.py --database 2014-06-06-mssb.xlsx --systeminfo win7sp1-systeminfo.txt
[*] initiating...
[*] database file detected as xls or xlsx based on extension
[*] reading from the systeminfo input file
[*] querying database file for potential vulnerabilities
[*] comparing the 15 hotfix(es) against the 173 potential bulletins(s)
[*] there are now 168 remaining vulns
[+] windows version identified as 'Windows 7 SP1 32-bit'
[*]
[M] MS14-012: Cumulative Security Update for Internet Explorer (2925418) - Critical
[E] MS13-101: Vulnerabilities in Windows Kernel-Mode Drivers Could Allow Elevation of Privilege (2880430) - Important
[M] MS13-090: Cumulative Security Update of ActiveX Kill Bits (2900986) - Critical
[M] MS13-080: Cumulative Security Update for Internet Explorer (2879017) - Critical
[M] MS13-069: Cumulative Security Update for Internet Explorer (2870699) - Critical
[M] MS13-059: Cumulative Security Update for Internet Explorer (2862772) - Critical
[M] MS13-055: Cumulative Security Update for Internet Explorer (2846071) - Critical
[M] MS13-053: Vulnerabilities in Windows Kernel-Mode Drivers Could Allow Remote Code Execution (2850851) - Critical
[M] MS13-009: Cumulative Security Update for Internet Explorer (2792100) - Critical
[M] MS13-005: Vulnerability in Windows Kernel-Mode Driver Could Allow Elevation of Privilege (2778930) - Important
[*] done
即使没有修补程序数据,也可以使用针对某个操作系统的可能漏洞利用程序
$ ./windows-exploit-suggester.py --database 2014-06-06-mssb.xlsx --ostext 'windows server 2008 r2'
[*] initiating...
[*] database file detected as xls or xlsx based on extension
[*] getting OS information from command line text
[*] querying database file for potential vulnerabilities
[*] comparing the 0 hotfix(es) against the 196 potential bulletins(s)
[*] there are now 196 remaining vulns
[+] windows version identified as 'Windows 2008 R2 64-bit'
[*]
[M] MS13-009: Cumulative Security Update for Internet Explorer (2792100) - Critical
[M] MS13-005: Vulnerability in Windows Kernel-Mode Driver Could Allow Elevation of Privilege (2778930) - Important
[E] MS11-011: Vulnerabilities in Windows Kernel Could Allow Elevation of Privilege (2393802) - Important
[M] MS10-073: Vulnerabilities in Windows Kernel-Mode Drivers Could Allow Elevation of Privilege (981957) - Important
[M] MS10-061: Vulnerability in Print Spooler Service Could Allow Remote Code Execution (2347290) - Critical
[E] MS10-059: Vulnerabilities in the Tracing Feature for Services Could Allow Elevation of Privilege (982799) - Important
[E] MS10-047: Vulnerabilities in Windows Kernel Could Allow Elevation of Privilege (981852) - Important
[M] MS10-002: Cumulative Security Update for Internet Explorer (978207) - Critical
[M] MS09-072: Cumulative Security Update for Internet Explorer (976325) - Critical
目前,如果 'systeminfo' 命令输出的修补程序信息为 'File 1',则该工具将无法确定目标上安装了哪些修补程序。如果出现这种情况,需要从目标主机获取修补程序列表,并通过 --hotfixes 标志传入。
它目前不会区分 Windows 操作系统的不同'版本'(例如 'Tablet' 或 'Media Center'),也不会区分不同的体系结构(例如仅基于 Itanium 的体系结构)。
此外,由于它假定目标 Windows 操作系统上安装了所有内容,也会产生误报。如果您收到 'File 1' 输出,请尝试执行 'wmic qfe list full',并将其与 'systeminfo' 一起通过 --hotfixes 标志作为输入传入。
本程序是自由软件:您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,该许可证为第 3 版,或者(由您选择)任何更新的版本。
本程序的发布是希望它有用,但不提供任何担保;甚至不包含适销性或特定用途适用性的默示担保。详情请参阅 GNU 通用公共许可证。
您应该已经随本程序收到一份 GNU 通用公共许可证的副本。如果没有,请参阅 http://www.gnu.org/licenses/。