forked from geekcomputers/Python
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnmap_scan.py
43 lines (31 loc) · 1.34 KB
/
nmap_scan.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from __future__ import print_function
import optparse # Import the module
import nmap # Import the module
# Script Name : nmap_scan.py
# Author : Craig Richards
# Created : 24th May 2013
# Last Modified :
# Version : 1.0
# Modifications :
# Description : This scans my scripts directory and gives a count of the different types of scripts, you need nmap installed to run this
def nmapScan(tgtHost, tgtPort): # Create the function, this fucntion does the scanning
nmScan = nmap.PortScanner()
nmScan.scan(tgtHost, tgtPort)
state = nmScan[tgtHost]["tcp"][int(tgtPort)]["state"]
print("[*] " + tgtHost + " tcp/" + tgtPort + " " + state)
def main(): # Main Program
parser = optparse.OptionParser(
"usage%prog " + "-H <host> -p <port>"
) # Display options/help if required
parser.add_option("-H", dest="tgtHost", type="string", help="specify host")
parser.add_option("-p", dest="tgtPort", type="string", help="port")
(options, args) = parser.parse_args()
tgtHost = options.tgtHost
tgtPorts = str(options.tgtPort).split(",")
if (tgtHost == None) | (tgtPorts[0] == None):
print(parser.usage)
exit(0)
for tgtPort in tgtPorts: # Scan the hosts with the ports etc
nmapScan(tgtHost, tgtPort)
if __name__ == "__main__":
main()