Zmap 安装使用指南
前言
zmap,一个网络端口开放性的快速扫描工具。传言:一小时之内扫描完整过互联网。
这段时间有需要扫描一些 IP 段开放 443,80 等端口的主机,网络较大,一般需要扫一个 b 段,nmap 等扫描工具就显得太慢了。
安装
本次演示为 Ubuntu 系统
一、编译安装
1、安装 cmake make gcc 等编译工具
1 | sudo apt-get -y install cmake make gcc |
2、下载源码包并解压
1 | wget https://github.com/zmap/zmap/archive/refs/tags/v3.0.0-beta1.zip |
3、编译并安装
1 | cd zmap-3.0.0-beta1 |
4、检查是否安装成功
1 | zmap -V |
二、使用包管理器安装(推荐)
Debian / Ubuntu / kali
1 | apt install -y zmap |
Centos / Rocky
1 | apt install -y zmap |
使用命令
基本参数
参数 (注意区分大小写) | 说明 |
---|---|
-p | –target-port=port 指定扫描端口 |
-o | –output-file=name 指定输出的文件 |
-b | –blacklist-file=path 黑名单文件,即排除在扫描范围外的地址 |
-B | 是指的是带宽 |
-n | 扫描多少个目标 |
-G | 指定网关的 mac 地址 |
-t | 扫描时间 |
-T | 扫描线程数 |
扫描选项
参数(注意区分大小写) | 说明 |
---|---|
-n | –max-targets=n 检测的上限范围,可以是一个数字如-n 10000,也可以是扫描地址空间中的百比 |
-N | –max-results=n 接收到一定数量的结果后退出扫描 |
-t | –max-runtime=secs 最大扫描(发包)时间 |
-r | –rate=pps 设置发包速率(packets/sec) |
-B | –bandwidth=bps 设置发包带宽(bits/second |
-c | –cooldown-time=secs 接受返回的时间 (default=8) |
-e | –seed=n 选择地址的排列序号 |
-T | –sender-threads=n 发包的线程数 (默认为1) |
-P | –probes=n 送达每个IP的探测器数量(默认为1) |
-S | –source-ip=ip |
-G | –gateway-mac=addr 设置网关的mac地址,可伪造。(DDOS的参数之一) |
网络端口
参数 (注意区分大小写) | 说明 |
---|---|
ZMap允许用户定义和编写自己的探测器模块 | |
–list-probe-modules | 列出可用的探测器模块 |
-M, –probe-module=name | 选择探测器模块 (默认为 tcp_synscan ) |
–probe-args=args | 设置探测器模块的参数 |
–list-output-fields | 列出所选择的探测器模块 |
附加选项
参数 (注意区分大小写) | 说明 |
---|---|
-C | –config=filename 读一个配置文件,其中可以包含特殊的选项 |
-q | –quiet 安静模式 |
-g | –summary 在扫描结束后,打印配置和结果汇总 |
-v | –verbosity=n log的等级 (0-5, 默认为3) |
-h | –help 显示帮助 |
-V | –version 打印版本 |
其他问题
默认情况下 Zamp 扫描整个互联网 IP 段,不扫描私有网段
因此扫描私网网段时需要从黑名单中把私网地址去掉,配置文件地址:/etc/zmap/zmap.conf
和/etc/zmap/blacklist.conf
zmap 设置了带宽限制之后,实际对于出口带宽的利用率为 70% 左右。例如
zmap --bandwidth=100Mbps
,此时实际出口带宽的使用量在 70Mbps左右。配置参数中的数据包速率与带宽限定。在使用的2.1.1版本zmap,配置参数中的 –rate(-r) 与 –bandwidth(-B) 两项,当配置了后者,也就是带宽限制之后,数据包发送项会被覆盖。例如:zmap -B 10Mbps -r 2000 -p 8080 这样的参数,实际上发送数据的速率是 15000p/s,而非 2000p/s
根据测试如果设置的的发包速率太大,目标网段又太小,可能无法正确完成扫描甚至结果为空,请根据实际情况调整速度和目标网络大小。
实测-r 2000扫描b段的一个端口大约1-2分钟完成,速度很快了,准确性还是可以的,扫描速度和范围、网络带宽、设备性能要结合,可以从较低的发包速率开始调整,直到结果准确时间又快最合适。结果最好手工验证几个,确认是否有偏差。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 鸭鸭梨!
评论