关于python-masscan的使用方法

此模块基于masscan模块,仍然需要下载masscan。

下载连接如下:https://github.com/robertdavidgraham/masscan

linux安装如下:

下载方式不限,这里采用gitclone安装,如果没有安装,请先安装git,root用户下操作

apt-get install git # Ubuntu安装
yum install git # centos、Redhat安装

下载masscan,并编译

cd /
git clone https://github.com/robertdavidgraham/masscan.git
cd masscan
make
cd bin
ls 
./masscan

以下是运行成功截图,仅供参考

Python中的mask是什么意思 python masscan_git

Python中的mask是什么意思 python masscan_Python中的mask是什么意思_02

Python中的mask是什么意思 python masscan_github_03

运行成功,测试实例

./masscan -p80,8000-8100 10.0.0.0/8 --rate=10000

Python中的mask是什么意思 python masscan_python_04


自行选择是否添加至环境变量,具体做法自行百度

添加至环境变量可如下操作,否则提示命令未找到

masscan -p80,8000-8100 10.0.0.0/8 --rate=10000

make编译错误是因为未安装c编译环境,具体解决方案自行百度

安装python-masscan

pip install python-masscan

Python中的mask是什么意思 python masscan_github_05

需要配置环境路径

cd /usr/local/lib/pyton3.8/site-packages # 此处路径不唯一,实际为pip安装路径
# 可以再次使用 
pip install python-masscan # 查看安装路径

Python中的mask是什么意思 python masscan_linux_06

cd masscan
ls

Python中的mask是什么意思 python masscan_python_07

vi masscan

找到PortScanner类

在__init__函数里在masscan_search_path参数中追加刚才安装的masscan路径即可

Python中的mask是什么意思 python masscan_github_08

测试用例

python

测试代码如下:

import masscan
masscan = masscan.PortScanner()
masscan.scan('10.0.0.0/8',ports='80,8000-8100',arguments='--max-rate 10000')

Python中的mask是什么意思 python masscan_python_09

及成功,等待运行结束出成果即可,类似如下:

Python中的mask是什么意思 python masscan_python_10

windos使用如下:

路径配置存在差异,

class PortScanner(object):
    """Class which allows to use masscan from Python."""

    def __init__(self, masscan_search_path=(
    'masscan', '/usr/bin/masscan', '/usr/local/bin/masscan', '/sw/bin/masscan', '/opt/local/bin/masscan','D:\webscan-master\webscan-master\masscan.exe')):

追加本地masscan可运行文件路径即可

至于如何编译生成masscan路径,可参考如下

https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E5%B9%B3%E5%8F%B0%E8%BF%90%E8%A1%8CMasscan%E5%92%8CNmap/

或我这里提供给你

链接如下

链接:https://pan.baidu.com/s/1LS1EGesPqNSJbhF_H_EitA
提取码:54tt
复制这段内容后打开百度网盘手机App,操作更方便哦

别的和linux无差异