Masscan工具详解

Masscan 是什么?

Masscan 是一款超高速的互联网规模端口扫描器。由 Robert Graham 开发,其核心设计目标是"尽可能快地扫描整个互联网"。

二、 核心特性与惊人速度的原理

Masscan 的速度是其最引人注目的特点,它能在几分钟内扫描整个互联网的所有 IP 地址。其高速原理基于以下几点:

自定义 TCP/IP 堆栈:

它不使用操作系统的标准网络堆栈(如 Linux 的 connect()系统调用)。

它实现了自己的、高度优化的 TCP/IP 堆栈,通过 PF_RING或 RAWPACKET接口直接与网卡驱动交互,绕过了内核的协议处理,极大地减少了开销。

异步和无状态扫描:

扫描是无状态的。这意味着 Masscan 发送 SYN 包后,并不在内存中维护每个连接的状态(如操作系统内核为每个 Socket 所做的那样)。

它只是简单地记录"在时间 T,向 IP:Port 发送了一个 SYN 包"。

当收到一个 SYN/ACK 或 RST 响应时,它会检查这个响应是否与之前发送的某个 SYN 包匹配。这种设计使其内存占用极低,可以同时发起数百万个连接。

可配置的极高数据包速率:

通过 --rate参数,你可以直接指定每秒发送的数据包数量(例如 --rate 100000表示每秒10万个包)。这是其速度的直接控制开关。

三、 基本用法

基本命令语法

bash 复制代码
masscan <目标IP范围> -p <端口范围> [选项]

最简单的例子:扫描一个IP的80端口
masscan 192.168.1.1 -p80

常见扫描示例:

bash 复制代码
扫描一个网段的常用端口
masscan 10.0.0.0/8 -p80,443,22,21,3389

扫描所有端口(1-65535)
masscan 192.168.1.1-192.168.1.100 -p1-65535

从文件读取目标列表
masscan -iL targets.txt -p80

排除特定IP
masscan 10.0.0.0/8 -p80 --exclude 10.0.0.1

将结果保存到文件(重要!)
# 标准文本格式
masscan 192.168.1.0/24 -p80 -oR results.txt
# XML格式(兼容Nmap)
masscan 192.168.1.0/24 -p80 -oX results.xml
# 二进制格式(用于后续再次格式化输出)
masscan 192.168.1.0/24 -p80 -oB results.bin
masscan --readscan results.bin -oX results.xml # 将二进制转换为XML

四、 核心选项详解

五、典型工作流示例:外部渗透测试的信息收集阶段

bash 复制代码
# 1. 使用 Masscan 快速发现目标网络(example.com)的开放端口
sudo masscan 93.184.216.0/24 -p1-65535 --rate 10000 -e eth0 -oX masscan_results.xml

# 2. 从 Masscan 结果中提取IP和端口,生成给 Nmap 使用的列表
# (这里可以用脚本处理,或者手动整理)
# 假设我们发现了 93.184.216.34 开放了 80, 443, 8000

# 3. 使用 Nmap 进行精细化的服务和版本探测
nmap -sV -sC -O -p80,443,8000 93.184.216.34 -oA nmap_detailed_scan
相关推荐
Xudde.1 小时前
friendly2靶机渗透
笔记·学习·安全·web安全·php
NewCarRen2 小时前
适用于低流量和高流量场景的车载自组织网络认证与验证方案
网络安全·汽车网络安全
眠晚晚4 小时前
漏洞发现笔记分享
笔记·web安全·网络安全
QZ166560951594 小时前
如何统一管理纷繁复杂的后端API?—— 解析API网关的关键作用
网络安全
GZ_TOGOGO7 小时前
网络安全认证考取证书有哪些?
安全·web安全·网络安全·cisp
飞行增长手记8 小时前
IP协议从跨境到物联网的场景化应用
服务器·前端·网络·安全
瀚高PG实验室8 小时前
如何将HGDB安全版(RPM包形式)安装在非root用户下
服务器·网络·安全·瀚高数据库
三七吃山漆9 小时前
Morse Decoder
安全·misc
JM丫9 小时前
buuctf-ciscn_2019_c_1
网络安全·ctf