python-nmap
Posted tomyyyyy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-nmap相关的知识,希望对你有一定的参考价值。
安装
windows:
pip install python_nma
Linux:
wge t http://xael.org/pages/python-nmap-0.6.1.tar.gz
tar -zxvf python-nmap-0.6.1.tar.gz
cd python-nmap-0.6.1
python setup.py install
使用
nm=nmap.PortScanner() #实例化
scan( host , port , args ) 方法:以指定方式扫描指定主机或网段的指定端口
- host :?要扫描的主机或网段,可以是一个单独的ip:192.168.10.10 ;也可以是一个小范围网段:192.168.10.10-20 ;也可以是一个大网段:192.168.10.0/24
- port :? ? 可选参数,要扫描的端口,多个端口用逗号隔开,如:20,21,22,23,24
- args :可选参数,要扫描的方式
import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
也可以这样
nm.scan(hosts='192.168.1.0/24', arguments='-n -sP -PE -PA21,23,80,3389')
command_line() 方法:返回的扫描方法映射到具体的nmap命令行,也就是我们上面执行的nm.scan()命令,对应的具体的nmap的命令
import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
a=nm.command_line()
print(a)
###########################
nmap -oX - -p 20,21 -sV 192.168.125.134
scaninfo() 方法:返回nmap扫描信息,格式为字典类型
import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
a=nm.scaninfo()
print(a)
###########################
'tcp': 'services': '20-21', 'method': 'syn'
all_hosts() 方法:返回nmap扫描的主机清单,格式为列表类型
import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-12', '22,21','-sV')
####################################################
['192.168.10.10','192.168.10.11','192.168.10.12']
以上是关于python-nmap的主要内容,如果未能解决你的问题,请参考以下文章