【滲透測試LAB】NMAP Part4,服務版本偵測&作業系統偵測(Service and Version Detection & OS Detection)
NMAP四項基本功能:
- 主機發現(Host Discovery)
- 端口掃描(Port Scanning)
- 版本偵測(Version Detection)-本篇要說明的
- 操作系統偵測(Operating System Detection)-本篇要說明的
在前幾篇提及了主機掃描(Host Discovery)與端口掃描(Port Scaning)等常用指令,來尋找目標端網域中的主機,再透過端口掃描尋找目標主機中的端口服務啟用狀態,進而獲取更多主機運作的資訊。
若能獲取主機端口所運行的軟體名稱以及版本資訊,有利於系統管理人員定及審查系統軟體安全性,以及滲透人員(好的或壞的XD)制定更完善的測試(入侵)計畫(?)。
1. Service and Version Detection
透過NMAP指令"-sV"可協助找出端口中所運行的服務版本。
範例:nmap -sS -sV -p- 10.0.2.5,下圖1所示。
2. OS Detection
透過NMAP指令”-O”可協助找出目標準主機的作業系統版本,這有利於系統管理人員掌握企業內部各項聯網之主機的系統版本,進而盤點或系統派送更新漏洞。反之,對於有意人士利用NMAP功能尋找企業系統的弱點,進而先行蒐集資料,最後執行相關攻擊計畫,以達到攻擊目的。
!!!注意,這邊指令是"-O",不是"-sO"。!!
範例:nmap -sS -O 10.0.2.5,下圖2與圖3所示。
3. How to combine Service and Version Detection with OS Detection
綜上提及的版本服務掃描檢測(Service and Version Detection)以及作業系統檢測(OS Detection)均是個別指令,分別依序為"-sV"與"-O"。
而NMAP提供"-A"指令,用於同時執行上述提及的這兩項服務。
範例:nmap -A -p- 10.0.2.5,下圖4與圖5所示。
4. How to output NMAP results
對於使用安全檢測工具進行系統檢測有非常多種類型與優劣勢,然後依據掃描或檢測結果產製報告,不斷地與內部同仁或跨單位溝通,肯定是需要有"數據"以及"有價值的資料(報告)",故NMAP內建有提供匯出(output NMAP results)功能。
本篇主要說明兩項匯出功能,分別為一般輸出格式(-oN)以及XML輸出格式(-oX)。
範例1:nmap -oN normal-results -p- 10.0.2.5,下圖6與圖7所示。
範例2:nmap -oX myresults -p- 10.0.2.5,下圖8與圖9所示。
5. How to install Visual Studio Code on Kali
上述提及以" -oX"匯出XML格式一般檢視下較為混亂,故此可於Visual Studio Code (VSC)中檢視較為清楚,另一般匯出格式匯入至VSC檢視的也並無影響。
但Kali 2021目前為內建Visual Studio Code (VSC),故此提供簡易安裝步驟以及執行畫面如下:
步驟1.下載VSC。
步驟2.進入安裝檔案所在的目錄 ,圖11為實際安裝過程指令。
步驟2.1 cd <VSC檔案的目錄>
步驟2.2 sudo dpkg -i <VSC安裝檔案全名>.deb
步驟3.開啟Visual Studio Code (VSC)
步驟4.開啟XML以及Normal格式檢視
XML格式於Visual Studio Code (VSC)中檢視
Normal格式於Visual Studio Code (VSC)中檢視
綜上所述,為本篇服務版本偵測&作業系統偵測(Service and Version Detection & OS Detection) 資訊分享,本篇指令彙整至下表,供讀者查閱。
目前NMAP系列文章如下彙整,後續會再分享NSE(NMAP Scripting Engine)腳本資訊。