nmap高级使用
Nmap 高级扫描技术
TCP SYN 扫描
TCP SYN 扫描,也称为半开放扫描,是一种常用的隐秘扫描技术。它发送一个 SYN 包到目标端口,如果收到一个 SYN-ACK 响应,则认为端口是开放的,然后发送一个 RST 包来中断连接。
nmap -sS IP地址
TCP Connect 扫描
TCP Connect 扫描是 Nmap 的默认扫描类型,它会完整地建立 TCP 连接,然后关闭连接。这种扫描方式比 SYN 扫描更容易被防火墙检测到。
nmap -sT IP地址
UDP 扫描
UDP 扫描用于探测目标主机上的 UDP 端口。由于 UDP 是无连接的,所以这种扫描通常比 TCP 扫描慢。
nmap -sU IP地址
分片扫描
分片扫描是一种高级扫描技术,它将数据包分成多个片段进行发送,以尝试绕过防火墙的检测
nmap -sF IP地址
nmap --source-port 53 ip地址
-T4:设置扫描速度模板(0-5,数字越大速度越快)。T4通常用于快速扫描。
-f(Fragment packets):使用分片扫描来绕过防火墙。
--source-port 53:指定源端口。使用53端口常用于绕过防火墙。
--scan-delay 100ms:在每个扫描数据包之间增加 100 毫秒的延迟。减少被检测的可能性。
--max-rate 100:限制扫描速率为每秒 100 个数据包。减少被检测的可能性。
--data-length 25:在每个数据包中添加 25 字节的随机数据。通过混淆扫描流量,使其更难以被检测到。
--proxies http://proxy1:8080,http://proxy2:8080: 指定一个或多个代理服务器。以隐藏源 IP。
--tcp-timestamp --win 4096: 修改 TCP 时间戳和窗口大小,使数据包看起来更合法。
--spoof-mac 00:11:22:33:44:55: 伪造 MAC 地址。绕过防火墙和 IDS。 --script firewall-bypass: 尝试绕过防火墙规则
ACK 扫描
ACK 扫描用于确定防火墙规则,它发送一个 ACK 包并观察响应,以判断防火墙是否对特定的端口进行了过滤
nmap -sA IP地址
IDLE 扫描
IDLE 扫描是一种非常隐秘的扫描技术,它利用目标网络中的一台僵尸主机来进行扫描,从而避免直接暴露扫描者的 IP 地址。
nmap -sI 僵尸主机地址 ip地址
在使用这些高级扫描技术时,需要谨慎操作,并确保你有权对目标网络进行扫描。不当使用这些技术可能会违反法律或破坏网络设备的正常运行。
网络拓扑图
nmap --traceroute ip地址
--traceroute:显示扫描过程中到目标的路由路径(路由跟踪)
输出格式
Nmap 支持多种输出格式,包括正常文本、XML、JSON 和 GIF 图形输出。使用以下命令可以保存扫描结果:
nmap -oN scan_results.txt ip地址
nmap -oX scan_results.xml ip地址
-oN:将扫描结果输出到标准输出(默认)
-oX:将扫描结果输出为 XML 格式
-oG:将扫描结果输出为 Grepable 格式
-oA:将扫描结果输出为所有格式(标准输出、XML 和 Grepable)
nmap -oN output.txt -sV -p 80,443 example.com
# 保存为正常文本格式
nmap -oX output.xml -sV -p 80,443 example.com
# 保存为XML格式
nmap -oJ output.json -sV -p 80,443 example.com
# 保存为JSON格式