企業端口掃描策略
1、端口掃描的目的 對於位於網絡中的計算機系統來說,一個端口就是一個潛在的通信通道,也就是一個入侵通道。對目標計算機進行端口掃描,能得到許多有用的信息從而發現系統的安全漏洞。通過其可以使系統用戶了解系統目前向外界提供了哪些服務,從而為系統用戶管理網絡提供了一種參考的手段。
從技術原理上來說,端口掃描向目標主機的TCP/UDP服務端口發送探測數據包,並記錄目標主機的響應。通過分析響應來判斷服務端口是打開還是關閉,就可以得知端口提供的服務或信息。
端口掃描也可以通過捕獲本地主機或服務器的流入流出IP數據包來監視本地主機的運行情況,不僅能對接收到的數據進行分析,而且能夠幫助用戶發現目標主機的某些內在的弱點,而不會提供進入一個系統的詳細步驟。一般說來,端口掃描的目的通常是如下的一項或者多項:
(1)發現開放端口:發現目標系統上開放的TCP或UDP端口;
(2)了解主機操作系統信息:端口掃描可以通過操作系統的“指紋”來推測被掃描操作系統或者應用程序的版本等信息;
(3)了解軟件或者服務版本:軟件或服務版本可以通過“標志獲取”或者應用程序的指紋來識別獲得;
(4)發現脆弱的軟件版本:識別軟件和服務的缺陷,從而有助於發起針對漏洞的攻擊。
端口掃描主要有經典的掃描器(全連接)以及所謂的SYN(半連接)掃描器。此外還有間接掃描和秘密掃描等。TCP掃描方式是通過與被掃描主機建立標准的TCP連接,因此這種方式最准確,很少漏報、誤報,但是容易被目標主機察覺、記錄。SYN方式是通過與目標主機建立半打開連接,這樣就不容易被目標主機記錄,但是掃描結果會出現漏報,在網絡狀況不好的情況下這種漏報是嚴重的。
2、快速安裝nmap進行企業端口掃描 nmap是一個網絡探測和安全掃描程序,系統管理者和個人可以使用這個軟件掃描大型的網絡,獲取那台主機正在運行以及提供什麼服務等信息。nmap支持很多掃描技術,例如:UDP、TCP connect()、TCP SYN(半開掃描)、ftp代理(bounce攻擊)、反向標志、ICMP、FIN、ACK掃描、聖誕樹(Xmas Tree)、SYN掃描和null掃描。
nmap還提供了一些高級的特征,例如:通過TCP/IP協議棧特征探測操作系統類型,秘密掃描,動態延時和重傳計算,並行掃描,通過並行ping掃描探測關閉的主機,誘餌掃描,避開端口過濾檢測,直接RPC掃描(無須端口影射),碎片掃描,以及靈活的目標和端口設定。
為了提高nmap在non-root狀態下的性能,軟件的設計者付出了很大的努力。很不幸,一些內核界面(例如raw socket)需要在root狀態下使用。所以應該盡可能在root使用nmap。
nmap運行通常會得到被掃描主機端口的列表。nmap總會給出well known端口的服務名(如果可能)、端口號、狀態和協議等信息。每個端口的狀態有:open、filtered、unfiltered。
open狀態意味著目標主機能夠在這個端口使用accept()系統調用接受連接;
filtered狀態表示防火牆、包過濾和其它的網絡安全軟件掩蓋了這個端口,禁止 nmap探測其是否打開。
unfiltered表示這個端口關閉,並且沒有防火牆/包過濾軟件來隔離nmap的探測企圖。通常情況下,端口的狀態基本都是unfiltered狀態,只有在大多數被掃描的端口處於filtered狀態下,才會顯示處於unfiltered狀態的端口。
根據使用的功能選項,nmap也可以報告遠程主機的下列特征:使用的操作系統、TCP序列、運行綁定到每個端口上的應用程序的用戶名、DNS名、主機地址是否是欺騙地址、以及其它一些東西。
在使用之前,我們需要下載該軟件的源碼包進行安裝。下載完成後,以作者下載到的版本為例:nmap-5.00.tgz,用戶執行如下安裝命令即可:
●(1)解壓縮軟件包
#tar –xzvf nmap-5.00.tgz
●(2)切換到安裝目錄
#cd nmap-5.00
●(3)使用configure命令生成make文件
#./configure
●(4)編譯源代碼
#make
●(5)安裝相關模塊
#make install
3、四步驟使用nmap確定企業網絡開放端口 (1)掃描實施第一步:發現活動主機
使用nmap掃描整個網絡尋找目標,已確定目標機是否處於連通狀態。通過使用“-sP”命令,進行ping掃描。缺省情況下,nmap給每個掃描到的主機發送一個ICMP echo和一個TCP ACK,主機對任何一種的響應都會被nmap得到,掃描速度非常快,在很短的時間內可以掃描一個很大的網絡。該命令使用如下所示:
[root@localhost ~]# nmap -sP 10.1.4.0/24
Nmap finished: 256 IP addresses (125 hosts up) scanned in 7.852 seconds
通過該掃描,可以發現該公司網絡中有125台主機是活躍的,也就是說有機可趁,下一步就是要進行更詳細的掃描,來掃描這些主機到底有些什麼活動端口。
(2)掃描實施第二步:掃描端口掃描
通常情況下,當nmap的使用者確定了網絡上運行的主機處於連通狀態,下一步的工作就是進行端口掃描,端口掃描使用-sT參數。如下面結果如示:
[root@localhost ~]# nmap -v -sT 10.1.4.0/24
Host 10.1.4.11 appears to be up ... good.
Interesting ports on 10.1.4.11:
Not shown: 1673 closed ports
PORT STATE SERVICE
80/tcp open htt
MAC Address: 00:1E:65:F0:78:CA (Unknown)
可以清楚地看到,端口掃描采用多種方式對網絡中主機的TCP活動端口進行了全面的掃描,由於掃描的主機數太多(125台),上面僅僅給出了2台主機的TCP端口情況,也就是主機10.1.4.1和10.1.4.11,並且,主機10.1.4.1打開的端口非常多,網絡服務也相對比較豐富,並且從IP地址的構成來看,該主機極有可能是網關(一般網關的IP地址設定為X.X.X.1),我們於是就鎖定了這台主機進行後續的掃描。