使用 Nmap 进行高级隐蔽扫描
接下来是更高级的技术,这一步将重点放在执行隐蔽扫描上,以进一步降低被检测到的可能性。我们将利用 Nmap 的 Idle Scan(空闲扫描)功能,该功能允许扫描通过一个空闲的(僵尸)主机进行反弹,从而使扫描难以追溯到你的位置。
再次确认我们仍在工作区中:
cd /home/labex/project
使用 Nmap 命令执行空闲扫描。空闲扫描命令如下:
sudo nmap -sI [zombie_host]:[zombie_port] [target_host] -p [target_port]
zombie_port
是可选的,如果你不指定它,Nmap 将使用默认端口 80。
这次,我们将使用 127.0.0.1
作为空闲主机来扫描 localhost
的 8080 端口:
sudo nmap -sI 127.0.0.1 localhost -p 8080 > /home/labex/project/idle_scan.txt
-sI
是空闲扫描的标志。它告诉 Nmap 使用 127.0.0.1
作为空闲(僵尸)主机来对 localhost
的 8080 端口进行扫描。这是一种巧妙的技巧,可以在隐藏扫描来源的同时执行扫描。结果将保存到 idle_scan.txt
文件中。
检查 idle_scan.txt
文件的内容以查看扫描结果:
cat /home/labex/project/idle_scan.txt
输出将类似于以下内容:
...
跳过对 localhost (127.0.0.1) 的空闲扫描 —— 你无法对自己的机器(localhost)进行空闲扫描。
Nmap 扫描报告 for localhost (127.0.0.1)
主机已启动。
PORT 状态 服务
8080/tcp 未知 http-proxy
Nmap 完成:扫描了 1 个 IP 地址(1 台主机启动),耗时 2.03 秒
在我们的案例中,我们在同一台机器上模拟了空闲主机和目标,因此扫描将被跳过。然而,在真实场景中,这种技术对于隐蔽扫描非常有效。