script nmap 掃描軟體 系統安全

掃port利器開外掛 輕鬆擴充nmap掃描能力

2013-12-06
如果想知道主機目前正在運作的服務,相信多數的網管人員腦海裡浮現的第一個解決方案,應該就是利用Nmap掃描軟體來掃描系統。自Nmap軟體推出以來,挾著其優異的掃描能力及免費的優點,早已成為掃描軟體的代名詞。
網管人員通常都是利用Nmap掃描軟體來進行服務掃描,藉以探知目前系統上運作的服務內容,但事實上Nmap的掃描能力遠不止於此,利用其外掛Script的方式,即可將Nmap變身為弱點掃描軟體(可掃描某種類型的弱點)或擴充其他掃描功能(例如掃描網站伺服器上是否有備份檔)。

對此,本文除了介紹Nmap傳統的應用外(如掃描通訊埠),也將示範如何使用Nmap所提供的外掛Script檔案來擴充Nmap的掃描能力。在本文中所使用的軟體套件,如表1所示。

表1 本文所使用的軟體套件

安裝Nmap

先至Nmap官方網站(http://nmap.org/dist/nmap-6.40.tar.bz2)下載安裝檔,本文使用的版本為6.40。解壓縮後,利用原始碼的編譯方式:


組態Nmap,並設定安裝的目錄(/usr/local/nmap)。若讀者不想將檔案安裝在某個目錄中,就不需要指定--prefix參數,直接執行「./configure」指令將Nmap安裝到系統的標準目錄內。

然後,先執行指令「make」編譯Nmap原始碼,再執行「make install」指令安裝Nmap相關的程式至指定的目錄,本例為「/usr/local/nmap」。在安裝完成後,可檢查「/usr/local/nmap/bin/」目錄。

Nmap所提供的相關執行檔,如表2所示。

表2 Nmap所提供的相關執行檔

此外,也可檢查「/usr/local/nmap/share/nmap/scripts」目錄下副檔名為nse的檔案,此類檔案即為Nmap所提供的外掛Script檔案。

在安裝好Nmap軟體後,接著簡單說明通訊埠掃描的原理。一般來說,通訊埠掃描所使用的掃描技術不外乎全連接與半連接的掃描方式。

所謂的全連接,即為一般正常連接的探測方式,利用與遠端主機通訊埠完成三向交握(Three-way Handshake)來確認遠端主機的通訊埠是否處於開啟(Open)的狀態。三向交握的運作方式如圖1所示。

  • 1. 當來源端主機欲跟目的端主機建立連線時,會先發 出SYN封包至目的端。
  • 2. 目的端主機收到後,即會回覆SYN/ACK封包。
  • 3. 當來源端主機收到SYN/ACK封包,將回覆ACK 封包給目的端主機。
  • 4. 上述三個動作皆正常完成後,才會建立連線。進行 資料傳輸。

▲圖1 三向交握。

如果能與遠端主機順利完成三向交握並與通訊埠完成連線,代表該服務埠是處於開啟的狀態。反之,則代表服務埠處於關閉的狀態。此種掃描方式即稱為全連接掃描。

這就像要測試網站伺服器是否正常時,即可利用瀏覽器連接網站伺服器一樣,如果可以正常地瀏覽網頁,代表該網站伺服器的通訊埠已經開啟。

因為全連接掃描的方式是利用正常的網路通訊行為來進行測試,所以此種掃描的方式會被防火牆或是IDS(入侵偵測系統)記錄下來,極為容易被資安設備所偵測出來,因而又發展出「半連接」掃描技術。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!