資安文章3 min
Nmap 網路掃描主題插圖

nmap 心得筆記:用生活比喻理解網路掃描

從「站在門口敲門」的比喻,認識 Nmap 如何發現主機、掃描連接埠、辨識服務與作業系統,並透過 NSE 腳本檢查常見漏洞。

資安入門Nmap網路掃描主機發現NSE
Nmap 網路掃描主題插圖

什麼是 Nmap?

Nmap(Network Mapper)是知名的開源網路掃描與安全審計工具。系統管理員可以用它排查網路問題,資安人員則常用來盤點資產與進行授權的安全測試。Nmap 由 Gordon「Fyodor」Lyon 創作;官方也提供完整的 Nmap Network Scanning 書籍。

用一棟大樓理解 Nmap 的邏輯

假設網路上的一台主機是一棟大樓。你可能從大門、後門或其他入口嘗試聯繫;但大樓可能沒開,也可能只允許特定訪客進入。Nmap 就像站在門外觀察的人,透過不同方式送出網路封包,再根據回應判斷主機與服務的狀態。

先確認主機是否在線

最直接的想像,是站在門口喊一聲「有人嗎?」對應到 ICMP Echo Request,也就是常見的 ping 探測:

nmap -PE 192.168.1.0/24

如果 ICMP 沒有回應,也可以嘗試對常見連接埠送出 TCP SYN 探測,就像按電鈴或敲門:

nmap -PS80,443 192.168.1.0/24

在區域網路中,Nmap 通常可透過 ARP 探測判斷同網段主機是否存在:

nmap -PR 192.168.1.0/24

若只想找出哪些主機在線,而不掃描連接埠,可以使用 -sn:

nmap -sn 192.168.1.0/24

再看看門後提供什麼服務

發現主機後,可以進一步辨識開啟的連接埠與服務版本。這像是從門縫聽對方自我介紹,試著判斷服務是什麼、版本為何:

nmap -sV 192.168.1.1

Nmap 也可以根據網路堆疊特徵推測目標作業系統,類似觀察對方的反應習慣來猜測身分:

nmap -O 192.168.1.1

使用 NSE 腳本檢查常見問題

Nmap Scripting Engine(NSE)可執行不同類型的檢查腳本。例如在獲得授權的前提下,可使用 vuln 類別腳本檢查常見漏洞:

nmap --script vuln 192.168.1.1

這些指令呈現了 Nmap 從主機發現、服務辨識到延伸檢查的基本流程。實際掃描前,請先確認自己有權測試目標網路;不同網路環境與防火牆設定也會影響掃描結果 (待續...)