macOS 系统安装Python-nmap模块
使用Python进行渗透测试,少不了安装第三方库。本人的系统是macOS Monterey Version 12.3,开发工具Python 3.9.7,集成环境PyCharm Professional 2020.1。
根据以往安装包的过程,首先下载python-nmap包python-nmap-0.7.1.tar.gz到本地目录,然后执行解压命令:
tar -xzf python-namp-0.7.1.tar.gz
然后进入到python-nmap-0.7.1目录下,执行安装程序,如下:
python setup.py install
接下来打开PyCharm,建立一个测试文件,如下:
#_*_coding:utf-8_*_
# 作者 :liuxiaowei
# 创建时间 :3/28/22 9:45 PM
# 文件 :hacker.py
# IDE :PyCharm
import nmap
nm = nmap.PortScanner()
nm.scan('127.0.0.1', '22-443')
nm.command_line()
运行结果如下:
根据提示,应该是nmap模块没有在系统路径的环境变量里.通过搜索相关问题的解决办法的资料,很多都是编辑profile文件,然后export PATH添加路径。但是我采取的办法是在 nmap官网下载安装文件,然后安装到系统里,至此问题得到圆满解决。
import nmap
nm = nmap.PortScanner()
nm.scan('127.0.0.1', '22-443')
Out[4]:
{
'nmap': {
'command_line': 'nmap -oX - -p 22-443 -sV 127.0.0.1',
'scaninfo': {
'tcp': {
'method': 'connect', 'services': '22-443'}},
'scanstats': {
'timestr': 'Tue Mar 29 08:39:04 2022',
'elapsed': '0.79',
'uphosts': '1',
'downhosts': '0',
'totalhosts': '1'}},
'scan': {
'127.0.0.1': {
'hostnames': [{
'name': 'localhost', 'type': 'PTR'}],
'addresses': {
'ipv4': '127.0.0.1'},
'vendor': {
},
'status': {
'state': 'up', 'reason': 'conn-refused'},
'tcp': {
22: {
'state': 'open',
'reason': 'syn-ack',
'name': 'ssh',
'product': 'OpenSSH',
'version': '8.6',
'extrainfo': 'protocol 2.0',
'conf': '10',
'cpe': 'cpe:/a:openbsd:openssh:8.6'}}}}}
希望本文对遇到类似问题的人有所帮助。