扫描工具之Masscan命令详解
Masscan 是一款高效,快速的端口扫描工具,通常用于大规模的网络扫描,以发现开放的服务或潜在的安全漏洞。
一、基本使用方法
- 查看帮助信息:
masscan -h 或者 masscan --help
- 扫描单个IP的指定端口
masscan 192.168.1.1 -p 80,443
- 扫描单个IP的端口范围
masscan 192.168.1.1 -p 1-1000
- 扫描IP范围的指定端口
masscan 192.168.1.1-192.168.1.150 -p 80,443
- 扫描IP段的指定端口
masscan 192.168.1.0/24 -p 80,443,8080
- 扫描IP段的指定速率
masscan 192.168.1.0/24 -p 80 --rate=1000
- 扫描UDP端口
masscan 192.168.1.1 -p U:53
解释:--rate 选项用于指定扫描速率,单位是每秒发包数(pps)。这里设置扫描速率为每秒 1000 个数据包,可根据网络情况和需求调整该值。较高的速率可以加快扫描速度,但可能会增加被防火墙或入侵检测系统检测到的风险。
- 排除特定 IP 地址或范围
masscan 192.168.1.0/24 -p 80 --exclude 192.168.1.100
解释:--exclude 选项用于排除指定的 IP 地址或 IP 地址范围。该命令会扫描 192.168.1.0/24 范围内除 192.168.1.100 之外的所有 IP 地址的 80 端口。
或者使用文件排除
masscan 192.168.1.0/24 -p1-1000 --excludefile exclude.txt
- 抓取服务横幅
masscan 192.168.1.1 -p80 --banners
解释:--banners 选项用于抓取目标服务的横幅信息,例如 HTTP 服务器版本、
- 保存扫描结果为不同的格式
masscan 192.168.1.100 -p 80 -oG scan_result.txt
解释:输出的文件格式可以是json, xml,binary、grepable、list
生成json:-oJ <文件名>.json,生成xml:-oX <文件名>.json,二进制:-oB <文件名>.bin
- 指定多个网卡并行发包
masscan 192.168.1.0/24 -p80 --adapter eth0,eth1
- 绕过链接限制
masscan 192.168.1.0/24 -p80--connection-timeout 2 --max-retries 1
解释: --connection-timeout:超时时间(秒)。--max-retries:重试次数。
- 实时查看
masscan 192.168.1.0/24 -p80--status-update 5
解释:--status-update 5:每5秒输出进度。
二、高级使用方法
- 扫描整个互联网
- 使用恢复功能
- 随机化扫描顺序
masscan 192.168.1.0/24 -p0-65535 --randomize-hosts --randomize-ports
解释:避免触发IPS/IDS的序列检测。
- 绕过防火墙
- 持续扫描(断点续传)
解释:--resume:从上次中断恢复。
三、注意事项
- 法律合规:未经授权扫描属违法行为,务必取得书面许可。
- 网络影响:高速扫描可能导致目标网络拥塞,建议非高峰时段操作。
- 误报控制:Masscan可能误判防火墙干扰的端口为开放,需二次验证。