masscan-scan

$npx mdskill add wgpsec/AboutSecurity/masscan-scan

Execute ultra-fast port scans across massive CIDR ranges.

  • Identifies open ports in large networks at millions of packets per second.
  • Requires root privileges and operates as an asynchronous stateless scanner.
  • Outputs results in list, JSON, XML, or grepable formats for integration.
  • Works as a preliminary step before service identification with nmap.

SKILL.md

.github/skills/masscan-scanView on GitHub ↗
---
name: masscan-scan
description: "使用 masscan 进行超大规模高速端口扫描。当需要扫描大范围 CIDR 网段、全互联网规模扫描时使用。masscan 是异步无状态扫描器,速度可达每秒百万包级别,适合大规模资产发现。需要 root 权限。任何涉及大规模网段扫描、高速端口发现、互联网测绘的场景都应使用此技能"
metadata:
  tags: "masscan,port,scan,端口扫描,高速扫描,大规模,CIDR,网段,资产发现,异步扫描"
  category: "tool"
---

# masscan 超大规模高速端口扫描方法论

masscan 是异步无状态端口扫描器,核心优势:**极致速度**(理论可达 1000 万包/秒)+ **大规模扫描**(专为全网扫描设计)+ **nmap 兼容输出**。需要 root 权限。

项目地址:https://github.com/robertdavidgraham/masscan

## 工具选择策略

masscan 适合大规模网段(/16 以上)扫描,速度远超 nmap 和 naabu。但不做服务识别,推荐流程:masscan 快速发现端口 → nmap -sV 做服务识别。小范围扫描用 naabu 更方便。

## Phase 1: 基本扫描

```bash
# 扫描单个目标(需 root)
sudo masscan 192.168.1.1 -p 80,443,8080

# 扫描网段
sudo masscan 10.0.0.0/24 -p 1-1000

# 全端口扫描
sudo masscan 192.168.1.0/24 -p 0-65535

# 控制发包速率(默认 100 包/秒)
sudo masscan 10.0.0.0/16 -p 80,443 --rate 10000
```

## Phase 2: 大规模扫描

```bash
# B 段扫描(65536 个 IP)
sudo masscan 10.0.0.0/16 -p 22,80,443,3389 --rate 50000

# A 段扫描(谨慎使用)
sudo masscan 10.0.0.0/8 -p 80,443 --rate 100000

# 从文件读取目标
sudo masscan -iL targets.txt -p 80,443

# 排除特定 IP
sudo masscan 10.0.0.0/16 -p 80 --excludefile exclude.txt
```

## Phase 3: 输出格式

```bash
# List 格式(简洁,推荐)
sudo masscan 10.0.0.0/24 -p 80,443 -oL results.txt

# JSON 格式
sudo masscan 10.0.0.0/24 -p 80,443 -oJ results.json

# nmap XML 格式(兼容 nmap 工具链)
sudo masscan 10.0.0.0/24 -p 80,443 -oX results.xml

# Grepable 格式
sudo masscan 10.0.0.0/24 -p 80,443 -oG results.gnmap
```

## Phase 4: 高级选项

```bash
# Banner 抓取
sudo masscan 10.0.0.0/24 -p 80 --banners

# 指定网卡
sudo masscan 10.0.0.0/24 -p 80 -e eth0

# 指定源 IP
sudo masscan 10.0.0.0/24 -p 80 --adapter-ip 192.168.1.100

# 暂停和恢复扫描
sudo masscan 10.0.0.0/8 -p 80 --resume paused.conf
# Ctrl+C 暂停时会生成 paused.conf

# 使用配置文件
sudo masscan -c masscan.conf
```

## 渗透测试常用组合

| 场景 | 命令 |
|------|------|
| 内网快速发现 | `sudo masscan 10.0.0.0/16 -p 22,80,443,3389 --rate 10000 -oL results.txt` |
| Web 服务发现 | `sudo masscan CIDR -p 80,443,8080,8443 --rate 50000 -oL web.txt` |
| 数据库端口 | `sudo masscan CIDR -p 3306,5432,1433,6379,27017 --rate 10000` |
| 全端口扫描 | `sudo masscan target -p 0-65535 --rate 10000 -oL all.txt` |

More from wgpsec/AboutSecurity

SkillDescription
401-403-bypass401/403 访问拒绝绕过方法论。当遇到管理后台、API 端点返回 401/403 Forbidden 时使用。覆盖路径操纵、HTTP 方法篡改、Header 注入、协议降级、组合攻击
ad-acl-abuseActive Directory ACL 滥用攻击方法论。当 BloodHound 发现 GenericAll/WriteDACL/WriteOwner/GenericWrite/ForceChangePassword 等危险 ACE 时使用。覆盖 ACE 枚举、权限滥用链、Shadow Credentials、RBCD 攻击
ad-delegation-attackKerberos 委派攻击(非约束/约束/RBCD)。当 BloodHound 发现委派配置、或已获取有 SPN 的服务账号/机器账号控制权时使用。通过 S4U 协议滥用可实现跨服务模拟任意用户,常用于域内权限提升和横向移动。
ad-domain-attackActive Directory 域环境攻击全链路。当目标主机在域环境中(systeminfo 显示 Domain 非 WORKGROUP)、发现 88/389/636 端口、或获取到域用户凭据时使用。覆盖域信息收集、用户枚举、Kerberoasting、AS-REP Roasting、委派攻击、ACL 滥用、DCSync、Golden/Silver Ticket
ad-persistenceAD 域环境持久化技术。当已获取域管/本地管理员权限、需要建立持久访问以确保重启或密码更改后仍能回到目标环境时使用。覆盖主机级持久化(计划任务/注册表Run/COM劫持/WMI事件订阅/Windows服务/启动文件夹)、域级持久化(Golden Ticket/Silver Ticket/Skeleton Key/DSRM/AdminSDHolder)、DCShadow/GoldenGMSA高级技术、清理命令与检测规避
ad-trust-attack域信任关系攻击。当目标存在多域/多林环境时使用。包含父子域提权(Golden Ticket + ExtraSid)、跨林攻击(SID History/MSSQL Trust Links)、单向信任利用。已获取子域 Domain Admin 或发现信任关系时优先加载。
adcs-certipy-attackActive Directory Certificate Services (ADCS) 证书攻击。当发现域内有 CA 服务器、ADCS Web Enrollment、证书模板配置错误时使用。覆盖 ESC1-ESC11 所有证书滥用路径、Certipy 工具链、证书伪造、NTLM 中继到 ADCS。发现 ADCS/CA/证书/certsrv 相关内容时一定要使用此技能
adinfo-enum使用 Adinfo 进行 Active Directory 信息收集。当获得域用户凭据后需要快速收集域环境信息时使用。Adinfo 是一个快速 AD 信息收集工具,一条命令输出域控列表、域管用户、信任关系、GPO、SPN、委派配置等关键信息——比手动 LDAP 查询快得多。发现域环境后第一步信息收集使用此技能
agent-security|
ai-data-security|