
Dieses Tool vergleicht die Patch-Level eines Ziels mit der Microsoft-Schwachstellendatenbank, um potenzielle fehlende Patches auf dem Ziel zu erkennen. Es benachrichtigt den Benutzer außerdem, wenn öffentliche Exploits und Metasploit-Module für die fehlenden Bulletins verfügbar sind.
Dieses Tool vergleicht die Patch-Level eines Zielsystems mit der Microsoft-Schwachstellendatenbank, um potenziell fehlende Patches auf dem Ziel zu erkennen. Es informiert den Benutzer auch darüber, ob für die fehlenden Sicherheitsbulletins öffentliche Exploits und Metasploit-Module verfügbar sind.
Es benötigt die Ausgabe des Befehls 'systeminfo' von einem Windows-Host, um diese mit der Microsoft-Sicherheitsbulletins-Datenbank zu vergleichen und den Patch-Level des Hosts zu bestimmen.
Es kann die Sicherheitsbulletins-Datenbank mit dem --update-Flag automatisch von Microsoft herunterladen und als Excel-Tabelle speichern.
Beim Betrachten der Befehlsausgabe ist es wichtig zu beachten, dass es zunächst alle Schwachstellen annimmt und diese dann basierend auf den Hotfix-Daten selektiv entfernt. Dies kann zu vielen Fehlalarmen führen, und es ist entscheidend zu wissen, welche Software tatsächlich auf dem Zielsystem läuft. Wenn es beispielsweise bekannte IIS-Exploits gibt, wird es diese markieren, selbst wenn IIS nicht auf dem Zielsystem läuft.
Die Ausgabe zeigt entweder öffentliche Exploits (E) oder Metasploit-Module (M) an, wie durch den Zeichenwert angegeben.
Es wurde stark von Linux_Exploit_Suggester von Pentura inspiriert.
Blogbeitrag: "Introducing Windows Exploit Suggester", https://blog.gdssecurity.com/labs/2014/7/11/introducing-windows-exploit-suggester.html
Datenbank aktualisieren
$ ./windows-exploit-suggester.py --update
[*] initiating...
[*] successfully requested base url
[*] scraped ms download url
[+] writing to file 2014-06-06-mssb.xlsx
[*] done
Abhängigkeiten installieren
(python-xlrd installieren, $ pip install xlrd --upgrade)
Übergeben Sie die "systeminfo"-Ausgabe und verweisen Sie auf die Microsoft-Datenbank
$ ./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
Mögliche Exploits für ein Betriebssystem können auch ohne Hotfix-Daten verwendet werden
$ ./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
Derzeit kann das Tool, wenn der 'systeminfo'-Befehl 'File 1' als Ausgabe für die Hotfixes anzeigt, nicht ermitteln, welche auf dem Ziel installiert sind. Wenn dies auftritt, muss die Liste der Hotfixes vom Zielhost abgerufen und mit dem --hotfixes-Flag übergeben werden.
Es unterscheidet derzeit nicht zwischen 'Editionen' des Windows-Betriebssystems wie z.B. 'Tablet' oder 'Media Center' oder verschiedenen Architekturen, wie z.B. nur Itanium-basiert.
Fehlalarme treten auch auf, wenn angenommen wird, dass ALLES auf dem Ziel-Windows-Betriebssystem installiert ist. Wenn Sie die 'File 1'-Ausgabe erhalten, versuchen Sie, 'wmic qfe list full' auszuführen und diese als Eingabe mit dem --hotfixes-Flag zusammen mit dem 'systeminfo'-Befehl zu übergeben.
Dieses Programm ist freie Software: Sie können es weiterverbreiten und/oder modifizieren unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version.
Dieses Programm wird in der Hoffnung bereitgestellt, dass es nützlich sein wird, aber OHNE JEGLICHE GEWÄHRLEISTUNG; sogar ohne die implizite Gewährleistung der MARKTREIFE oder der EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Siehe die GNU General Public License für weitere Details.
Sie sollten eine Kopie der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls nicht, siehe http://www.gnu.org/licenses/.