项目简介
本项目是一个互联网规模的端口扫描器,能在5分钟内扫描完整个互联网,单机传输速度可达每秒1000万个数据包。其使用方式(参数、输出)与著名的端口扫描器 nmap
相似,内部采用异步传输,拥有自己的TCP/IP栈,能灵活支持任意端口和地址范围的扫描。
项目的主要特性和功能
- 高速扫描:单机每秒可传输1000万个数据包,能短时间扫描整个互联网。
- 多协议支持:支持对FTP、HTTP、IMAP4等多种协议进行端口扫描和横幅检查。
- 异步传输:采用异步设计,有独立的发送和接收线程,运行速度取决于底层数据包传输能力。
- 随机化扫描:独特的随机化目标方式,支持“分片”扫描,可多机、多网卡或多IP源地址协作扫描。
- 多格式输出:支持XML、二进制、grepable、JSON、列表等多种输出格式。
- IPv4和IPv6共存:可在同一扫描中同时包含IPv4和IPv6地址。
- 漏洞检查:包含对特定漏洞(如Heartbleed)的检查功能。
- 可定制性:用户可通过配置文件或命令行参数自定义扫描范围、端口、速率等,还能创建和编辑自定义的探测包。
安装使用步骤
安装
Debian/Ubuntu系统
bash
sudo apt-get --assume-yes install git make gcc
cd masscan
make
若要安装(Linux系统),可运行:
bash
make install
使用多线程编译可加快速度(树莓派需注意内存,可使用 -j4
等较小数字):
bash
make -j
其他系统
- Windows(Visual Studio):使用VS10项目。
- Windows(MinGW):输入
make
。 - Windows(cygwin):无法工作。
- Mac OS X(XCode):使用XCode4项目。
- Mac OS X(命令行):输入
make
。 - FreeBSD:输入
gmake
。 - 其他:尝试直接编译所有文件,
cc src/*.c -o bin/masscan
。
使用
扫描网段的部分端口
bash
masscan -p80,8000-8100 10.0.0.0/8 2603:3001:2d00:da00::/112
查看完整选项列表
bash
masscan -p80,8000-8100 10.0.0.0/8 2603:3001:2d00:da00::/112 --echo > xxx.conf
masscan -c xxx.conf --rate 1000
横幅检查
- 分配单独IP地址:
bash masscan 10.0.0.0/8 -p80 --banners --source-ip 192.168.1.200 masscan 2a00:1450:4007:810::/112 -p80 --banners --source-ip 2603:3001:2d00:da00:91d7:b54:b498:859d
- 端口防火墙配置(Linux):
bash iptables -A INPUT -p tcp --dport 61000 -j DROP masscan 10.0.0.0/8 -p80 --banners --source-port 61000
扫描整个互联网
bash
masscan 0.0.0.0/0 -p0-65535 --excludefile exclude.txt -oX scan.xml --max-rate 100000
也可将配置保存到文件,如 myscan.conf
:
plaintext
rate = 100000.00
output-format = xml
output-status = all
output-filename = scan.xml
ports = 0-65535
range = 0.0.0.0-255.255.255.255
excludefile = exclude.txt
使用配置文件进行扫描:
bash
masscan -c myscan.conf
获取输出
- XML格式:
masscan -oX <filename>
或masscan --output-format xml --output-filename <filename>
。 - 二进制格式:使用
--readscan
读取二进制扫描文件,结合-oX
可生成XML结果文件。 - grepable格式:
masscan -oG <filename>
或masscan --output-format grepable --output-filename <filename>
。 - JSON格式:
masscan -oJ <filename>
或masscan --output-format json --output-filename <filename>
。 - 列表格式:
masscan -oL <filename>
或masscan --output-format list --output-filename <filename>
。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】