本文目录导读:

- 核心原则
- 方法一:基于 ARP 协议(最快,推荐用于同网段)
- 方法二:基于 ICMP 协议(Ping 扫描,适用跨网段)
- 方法三:基于 TCP 协议(端口探测,最可靠但最慢)
- 方法四:被动发现(监听流量)
- 特殊场景与技巧
- 总结推荐(根据场景)
- 注意事项
内网存活主机快速发现是内网渗透测试或运维管理中的基础步骤,方法主要分为主动扫描和被动监听两大类,以下是一些常用且高效的技巧和工具:
核心原则
- 速度优先:优先使用无状态扫描(如
masscan)或 ARP 协议(二层网络)。 - 隐蔽性:如果是为了渗透测试,建议使用 ICMP 或 SYN 扫描,避免未授权的全连接扫描(易被日志记录)。
- 协议选择:ARP 最快(仅限同一网段),ICMP 次之,TCP/UDP 端口探测最慢但更可靠。
基于 ARP 协议(最快,推荐用于同网段)
ARP 是二层广播协议,只要主机在线,无论是否开放端口或防火墙拦截,都会响应,这是同网段内最强、最快的方法。
- 工具与命令:
arp-scan(Linux):专门用于快速扫描局域网。# 扫描整个 /24 网段,几秒内出结果 sudo arp-scan --localnet # 或指定网段 sudo arp-scan 192.168.1.0/24
fping(Linux/Windows):对 ARP 协议支持好,速度极快。fping -g 192.168.1.0/24 -a -q # -a: 只显示存活主机, -q: 安静模式
Netdiscover(Linux):实时 ARP 嗅探或扫描。sudo netdiscover -r 192.168.1.0/24
- Windows (Powershell):利用
ARP表间接发现(主动发送 ARP 请求后查表)。# 先 ping 整个网段(可写脚本循环),然后查看 ARP 表 1..254 | % {"192.168.1.$_"} | ForEach-Object {Test-Connection $_ -Count 1 -Quiet} arp -a nbtscan:对于 Windows 主机(NetBIOS),可以发现主机名和 MAC。nbtscan 192.168.1.0/24
基于 ICMP 协议(Ping 扫描,适用跨网段)
用于跨网段或三层设备,注意:防火墙可能屏蔽 ICMP。
- 工具与命令:
fping:依然是首选,速度比系统自带的ping快很多。fping -a -g 10.0.0.1 10.0.0.254 2>/dev/null
nmap -sn:Ping 扫描(发送 ICMP echo、TCP SYN 到 80/443 等)。nmap -sn 192.168.1.0/24 # -sn: 只做 Ping 扫描,不扫描端口
masscan:无状态扫描,速度极快(适用于大内网)。# 使用 ICMP Ping 扫描 masscan 10.0.0.0/24 --icmp -p 0
hping3:更灵活,可发送定制 ICMP 包。hping3 -1 192.168.1.1-254 --rand-source
基于 TCP 协议(端口探测,最可靠但最慢)
当 ARP 和 ICMP 都被限制时(例如主机只开放了特定端口),可以扫描常见端口。
- 核心逻辑:发送 SYN 包,如果收到 SYN/ACK 则主机存活。
- 工具与命令:
nmap -T4 -sS -p 80,443,22,445,3389:SYN 半开扫描,速度快且相对隐蔽。nmap -T4 -sS -p 80,443,22,445,3389 192.168.1.0/24
masscan:极速端口扫描。# 扫描 445 端口来判断 Windows 主机 masscan 192.168.1.0/24 -p445 --rate=10000
tcping:专门测试 TCP 端口连通性(如 445,3389)。# 批量扫描 445 端口 for i in {1..254}; do echo 192.168.1.$i; done | xargs -P 50 -I {} sh -c 'tcping {} 445 -c 1 -t 1 >/dev/null 2>&1 && echo {} alive'
被动发现(监听流量)
最隐蔽,不发送任何数据包,通过监听网络流量来发现主机。
- 工具:
tcpdump/wireshark:抓取 ARP 广播、DHCP 请求、NetBIOS 名称请求等。sudo tcpdump -i eth0 -nn -c 1000 arp or port 67 or port 137
Responder:常用于内网渗透,可被动监听并收集主机名、IP、用户等信息。Netstat -n:在本地查看当前建立的连接,可以发现正在通信的远程主机 IP。
特殊场景与技巧
- 扫描多网段:使用
nmap -sn 192.168.1.0/24 10.0.0.0/24或masscan大范围。 - 绕过防火墙:
- ICMP 被禁,改用 TCP SYN 扫描(如端口 80、443、445)。
- 使用
-Pn参数(nmap),跳过 Ping 检测,直接进行端口扫描(慢但有效)。
- 识别操作系统:
nmap -O或p0f(被动识别)。 - 批量执行脚本:
- Linux (Bash):
for i in {1..254}; do ping -c 1 -W 1 192.168.1.$i | grep -q "64 bytes" && echo "192.168.1.$i alive"; done - Windows (Powershell):
$subnet = "192.168.1" 1..254 | ForEach-Object { $ip = "$subnet.$_"; if(Test-Connection $ip -Count 1 -Quiet){ Write-Host "$ip alive" } }
- Linux (Bash):
总结推荐(根据场景)
| 场景 | 推荐方案 | 命令 |
|---|---|---|
| 同网段快速探测 | ARP 扫描 | arp-scan --localnet 或 fping -g |
| 跨网段/大内网 | ICMP + TCP 结合 | nmap -sn 目标网段 (先快速发现) |
| 渗透测试(隐蔽) | SYN 半开扫描 + 被动监听 | nmap -sS -p 80,443,445 目标网段 |
| 绕过 ICMP 屏蔽 | TCP 端口扫描 (445) | masscan 目标网段 -p445 --rate=10000 |
| Windows 环境 | nbtscan (NetBIOS) + arp -a |
nbtscan 192.168.1.0/24 |
注意事项
- 授权:未经授权的内网扫描可能违反单位安全政策或法律(《网络安全法》)。
- 流量影响:
masscan如果速率设置过高(如--rate=100000),可能造成网络拥塞或设备卡顿,建议从1000逐步调高。 - 日志记录:防火墙、IDS/IPS 设备通常会记录端口扫描行为。
- 虚拟机/容器:如果内网有大量 VMware、Docker 虚拟网卡,可能会扫描出多余的“虚拟主机”IP(但 MAC 地址通常属于虚拟化厂商)。
建议先走ARP(同网段)或ICMP(跨网段),若不行再试 TCP 端口探测。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播