Nmap
From ksplice’s blog. After being acquired by Oracle, this article is lost on their new blog at Oracle. This is the archive I found.
扫描 TCP 端口 22, 80:
nmap -sS -p22,80 192.168.1.0/24
-sS表示扫描 TCP 端口,-sU表示 UDP 端口-p端口范围可以用-p1-500的形式制定范围,-p-表示所有端口。
nmap 会先发送 ICMP echo 来判断目标是否存在。对于 TCP 端口扫描,nmap 再发送
SYN 包,等待 SYN/ACK 回复。
可以用 nmap 发送不合法的包:
-sNnull scan-sXXmas scan--mutchop packets into little fragments--badsumsend invalid checksum
不合法的包可以用来判断 OS 类型,下面的命令可以探测 OS 类型::
nmap -sS -O 192.168.1.0/24
检查到端口打开后还可以更进一步:
-sV检查服务器软件版本 (version detection subsystem)
其他:
--source-port指定 nmap 发出的 TCP/UDP 包的端口-STCP idle scan (高级玩意)- nmap 支持 XML 等输出格式
- nmap 还有用 Lua 写的插件