Skip to content
This repository was archived by the owner on Jul 19, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,10 @@ $ ./windows-exploit-suggester.py --update
```
install dependencies

(install python-xlrd, $ pip install xlrd --upgrade)
(install python-xlrd, $ python2 -m pip install xlrd --upgrade)

Either run this from a Windows OS or feed it "systeminfo" as input, and point it to the microsoft database

feed it "systeminfo" input, and point it to the microsoft database
```
$ ./windows-exploit-suggester.py --database 2014-06-06-mssb.xlsx --systeminfo win7sp1-systeminfo.txt
[*] initiating...
Expand Down
22 changes: 18 additions & 4 deletions windows-exploit-suggester.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
#
# Windows Exploit Suggester
Expand Down Expand Up @@ -49,7 +49,7 @@
#
# install dependencies
#
# (install python-xlrd, $ pip install xlrd --upgrade)
# (install python-xlrd, $ python2 -m pip install xlrd --upgrade)
#
# feed it "systeminfo" input, and point it to the microsoft database
#
Expand Down Expand Up @@ -97,7 +97,7 @@
# TROUBLESHOOTING
#
# If you're receiving the following error message, update the xlrd library
# $ pip install xlrd --update
# $ python2 -m pip install xlrd --update
#
# [*] initiating winsploit version 24...
# [*] database file detected as xls or xlsx based on extension
Expand Down Expand Up @@ -964,6 +964,8 @@ def getname(ostext):
[" 7","7"],
[" 8","8"],
["2012","2012"],
["2016","2016"],
["2019","2019"],
["8.1","8.1"],
[" 10","10"]]

Expand Down Expand Up @@ -1040,7 +1042,19 @@ def getarchitecture(ostext):
if getname(ostext) == "2012" and architecture == "32":
if ARGS.verbose:
ALERT("forcing unidentified architecture to 64-bit because OS identified as Windows Server 2012 does not support 32-bit")
architecture = "64"
architecture = "64"

# windows server 2016 is only 64-bit arch
if getname(ostext) == "2016" and architecture == "32":
if ARGS.verbose:
ALERT("forcing unidentified architecture to 64-bit because OS identified as Windows Server 2016 does not support 32-bit")
architecture = "64"

# windows server 2019 is only 64-bit arch
if getname(ostext) == "2019" and architecture == "32":
if ARGS.verbose:
ALERT("forcing unidentified architecture to 64-bit because OS identified as Windows Server 2019 does not support 32-bit")
architecture = "64"

return architecture

Expand Down