Nmap掃描教程之Nmap基礎知識
Nmap掃描Nmap基礎知識
Nmap是一個免費開放的網絡掃描和嗅探工具包,也叫網絡映射器(Network Mapper)。Nmap工具可以用來掃描電腦上開放的端口,確定哪些服務運行在哪些端口,並且推斷出計算機運行的操作系統。通過使用該工具,可以評估網絡系統安全。所以,Nmap是大部分用戶所必要的工具之一。本章將對Nmap工具的基礎知識進行詳細介紹。
Nmap掃描Nmap概述
Nmap是一款非常不錯的網絡掃描工具,支持各種操作系統,如Windows、Linux、Mac OS等。為了幫助用戶更好的使用該工具,本節將對Nmap工具做一個簡單介紹。
Nmap掃描什么是Nmap
Nmap是一款開源免費的網絡發現(Network Discovery)和安全審計(Security Auditing)工具。軟件名字Nmap是Network Mapper的簡稱。Nmap最初是由Fyodor在1997年創建的。隨后在開源社區眾多的志願者參與下,該工具逐漸成為最為流行安全必備工具之一。目前,Nmap工具的最新版本是6.47。
由於Nmap工具具有許多優點,所以該工具被廣泛應用。其中,Nmap工具的優點如下所示:
- q 靈活:支持數十種不同的掃描方式,支持多種目標對象的掃描。
- q 強大:Nmap可以用於掃描互聯網上大規模的計算機群。
- q 可移植:支持主流的操作系統,如Windows、Linux、Unix、Mac OS等;並且其源碼開放,方便移植。
- q 簡單:提供默認的操作能覆蓋大部分功能,如基本端口掃描,全面掃描。
- q 自由:Nmap作為開源軟件,在GPL License的范圍內可以自由的使用。
- q 文檔豐富:Nmap官網提供了詳細的文檔描述。Nmap作者及其它安全專家編寫了多部Nmap參考書籍。
- q 社區支持:Nmsp背后有強大的社區團隊支持。
- q 贊譽有加:獲得很多的獎勵,並在很多影視作品中出現(如黑客帝國2、Die Hard4等)。
- q 流行:目前Nmap已經被成千上萬的安全專家列為必備的工具之一。
Nmap掃描 Nmap的功能
Nmap主要包括四個方面的掃描功能,分別是主機發現、端口掃描、應用與版本偵測、操作系統偵測。這四項功能之間,又存在大致的依賴關系。通常情況下順序關系,如圖1.1所示。
圖1.1 Nmap功能架構圖
下面將詳細介紹以上Nmap各功能之間的依賴關系。如下所示:
(1)首先用戶需要進行主機發現,找出活動的主機。然后,確定活動主機上端口狀況。
(2)根據端口掃描,以確定端口上具體運行的應用程序與版本信息。
(3)對版本信息偵測后,對操作系統進行偵測。
在這四項基本功能的基礎上,Nmap提供防火牆與IDS(IntrusionDetection System,入侵檢測系統)的規避技巧,可以綜合應用到四個基本功能的各個階段;另外Nmap提供強大的NSE(Nmap Scripting Language)腳本引擎功能,腳本可以對基本功能進行補充和擴展。
Nmap掃描 Nmap工作原理
Nmap使用TCP/IP協議棧指紋准確地判斷目標主機的操作系統類型。首先,Nmap通過對目標主機進行端口掃描,找出有哪些端口正在目標主機上監聽。當偵測到目標主機上有多於一個開放的TCP端口、一個關閉的TCP端口和一個關閉的UDP端口時,Nmap的探測能力是最好的。Nmap工具的工作原理如表1-1所示。
表1-1 Nmap工作原理
Nmap對目標主機進行一系列測試,如表1-1所示。利用得出的測試結果建立相應目標主機的Nmap指紋。最后,將此Nmap指紋與指紋庫中指紋進行查找匹配,從而得出目標主機的操作系統類型。
Nmap掃描Nmap掃描類型
Nmap常見的掃描類型如表1-2所示。
表1-2 Nmap主要掃描類型
Nmap掃描獲取Nmap安裝包
當用戶對Nmap工具有一個清晰的認識后,即可安裝並使用該工具了。如果要安裝該工具,則必須要先獲取其軟件包。本節將介紹如何獲取Nmap工具的安裝包。
Nmap工具的官網是http://nmap.org/。在該官網提供了Nmap各種類型包的下載地址。其中,下載地址是:
https://nmap.org/download.html
在瀏覽器中輸入以上地址后,將打開如圖1.2所示的界面。
圖1.2 Nmap下載頁面
在該界面根據自己的系統版本,選擇相應的軟件包。由於章節的原因,上圖只截取了一部分(包括源碼包和Windows二進制包的下載地址)。
Nmap掃描安裝Nmap工具
通過上一節的介紹,用戶可以順利的獲取到Nmap工具的安裝包。接下來,用戶就可以在操作系統中安裝該工具了。為了使任何所有用戶都可以很好的使用該工具,下面將分別介紹在Windows和Linux操作系統中安裝Nmap工具的方法。
Nmap掃描在Windows下安裝
【示例1-1】下面將介紹在Windows下安裝Nmap工具的方法。具體操作步驟如下所示:
(1)在Windows下雙擊下載的Nmap軟件包,本例中的軟件包名為nmap-6.47-setup.exe。雙擊該軟件包后,將彈出許可協議對話框,如圖1.3所示。
(2)該界面顯示了安裝Nmap工具的許可證協議。這里單擊I Agree按鈕,將彈出選擇組件對話框,如圖1.4所示。
圖1.3 許可證協議對話框 圖1.4 選擇組件對話框
(3)在該界面選擇安裝Nmap其它功能的一些組件,如Zenmap、Ndiff、Nping等。如果用戶不想安裝某組件的話,將組件名前面復選框中的對勾去掉即可。這里選擇默認設置,安裝所有組件。然后,單擊Next按鈕,將彈出安裝位置選擇對話框,如圖1.5所示。
(4)該界面是用來設置Nmap安裝位置的。如果用戶希望安裝到其它位置的話,則單擊Browse按鈕,選擇要安裝的位置。這里使用默認的位置,然后單擊Install按鈕,將彈出WinPcap許可協議對話框,如圖1.6所示。
圖1.5 安裝位置選擇對話框 圖1.6 WinPcap許可證協議對話框
(5)該界面顯示了安裝WinPcap組件的許可證協議。WinPcap是重要的組件,用來實現數據包捕獲和網絡分析。所以,必須安裝。這里單擊I Agree按鈕,將顯彈出WinPcap安裝完成提示信息對話框,如圖1.7所示。
(6)該界面顯示WinPcap組件已經完成。此時,單擊Next按鈕,將彈出WinPcap選項對話框,如圖1.8所示。
圖1.7 WinPcap安裝完成信息 圖1.8 WinPcap選項對話框
(7)該界面用來設置啟動NPF選項。這里使用默認設置,然后單擊Next按鈕,將彈出完成對話框,如圖1.9所示。
(8)該界面提示WinPcap組件已設置完成。此時,單擊Finish按鈕,將顯示開始安裝Nmap工具。安裝完成后,將彈出Nmap安裝完成提示信息對話框,如圖1.10所示。
圖1.9 WinPcap組件設置完成 圖1.10 Nmap安裝完成信息
(9)從該界面可以看到Nmap工具已經安裝完成。此時,單擊Next按鈕,將彈出創建快捷方式的對話框,如圖1.11所示。
(10)該界面用來設置Nmap工具創建快捷方式的位置。默認是在啟動菜單欄和桌面上創建快捷方式,這里使用默認設置。然后,單擊Next按鈕,將彈出Nmap完成對話框,如圖1.12所示。
圖1.11 創建快捷方式對話框 圖1.12 Nmap設置完成
(11)從該界面可以看到Nmap工具已設置完成。此時,單擊Finish按鈕,退出Nmap安裝向導。
提示:如果用戶當前系統中已經安裝WinPcap的話,將不會彈出圖1.6所示的對話框,而是彈出如圖1.13所示的對話框。
圖1.13 WinPcap已經安裝
從該界面可以看到提示WinPcap組件在當前系統中已經安裝,接下來將跳過WinPcap組件安裝。此時,單擊“確定”按鈕,將顯示如圖1.10所示的界面。如果用戶不希望彈出圖1.13對話框的話,在圖1.4中去掉WinPcap 4.1.3組件前面復選框中的對勾即可。
Nmap掃描在Linux下安裝
在Linux下可以使用兩種方法來安裝。其中,一種是使用二進制包,另一種就是源碼包。但是,在Linux中二進制包的安裝有兩大流派,分別是Red Hat的rpm(Redhat Package Management)和Debian的dpkg。所以,對於使用二進制包安裝,則需要根據系統的類型選擇相應的包進行安裝。下面分別介紹這兩種類型包的安裝方法。
1.Red Hat系列系統安裝
【示例1-2】在Red Hat系列系統中安裝Nmap工具。下面以RHEL操作系統為例,演示Nmap的安裝方法。執行命令如下所示:
- [root@RHEL ~]# rpm -ivh nmap-6.47-1.i386.rpm
- Preparing... ########################################### [100%]
- 1:nmap ########################################### [100%]
看到以上輸出信息,則表示Nmap工具安裝成功。在以上命令中,rpm是命令,表示安裝.rpm格式的軟件包;-ivh是-i、-v和-h三個選項的組合,其中-i表示安裝、-v顯示詳細信息、-h用來顯示安裝進度;nmap-6.47-1.i386.rpm是軟件包名。
2.Debian系列系統安裝
【示例1-3】在Debian系列系統中安裝Nmap工具。下面以Ubuntu操作系統為例,演示Nmap的安裝方法。執行命令如下所示:
- test@testtual-machine:~$ sudo dpkg -i nmap_6.47-4_i386.deb
- [sudo] password for test #輸入當前登錄系統用戶的密碼
- (正在讀取數據庫 ... 系統當前共安裝有 175794 個文件和目錄。)
- 正准備解包 nmap_6.47-4_i386.deb ...
- 正在將 nmap (6.47-4) 解包到 (6.47-4) 上 ...
- 正在設置 nmap (6.47-4) ...
- 正在處理用於 man-db (2.6.7.1-1ubuntu1) 的觸發器 ...
看到以上類似輸出信息,則表示Nmap功能安裝成功。
Nmap掃描源碼包安裝
源碼包可以在各種系列的Linux系統中安裝。下面將以RHEL操作系統為例,介紹使用源碼包安裝Nmap 工具的方法。具體操作步驟如下所示:
(1)解壓Nmap安裝包。執行命令如下所示:
- [root@RHEL ~]# tar jxvf nmap-6.47.tar.bz2
執行以上命令后,將會將源碼包中的文件解壓的當前目錄下nmap-6.47文件夾中。
(2)配置Nmap工具。執行命令如下所示:
- [root@RHEL ~]# cd nmap-6.47
- [root@RHEL nmap-6.47]# ./configure
執行以上命令,表示為Nmap工具指定了默認的安裝位置。
(3)編譯軟件包。執行命令如下所示:
- [root@RHEL nmap-6.47]# make
(4)安裝軟件包。執行命令如下所示:
- [root@RHEL nmap-6.47]# make install
以上命令執行成功的話,將會看到“NMAP SUCCESSFULLY INSTALLED”信息。該信息表示,Nmap工具安裝成功。
本文選自:Nmap掃描基礎教程大學霸內部資料,轉載請注明出處,尊重技術尊重IT人!