美國服務器常見的端口掃描類型有7種,分別是:1、TCP Connect掃描;2、SYN掃描;3、NULL掃描;4、FIN掃描;5、ACK掃描;6、Xmas-Tree掃描;7、Dump掃描等常見的端口掃描類型。
具體內容如下:
1、TCP Connect掃描
TCP Connect掃描試圖與每一個TCP端口進行三次連接通信,完成三次連接過程。如果能夠成功建立連接,則證明端口開放,否則為關閉。說明這種類型的掃描因為要完成一次完整的TCP連接,所以它的準確性非常高,但也最容易被防火墻或入侵檢測系統檢測到,,而且,在目標主機的日志中會記錄大批的連接請求以及錯誤信息。
2、SYN掃描
SYN掃描要比 TCP Connect掃描隱蔽一些, TCP三次連接依次包含了SYNSYN-ACK和ACK3個數據包。SYN掃描僅僅發送初始的SYN數據包給目標主機,如果端口處于開放狀態,那么目標主機將響應SYN-ACK數據包,如果端口處于關閉狀態,那么目標主機將響應RST數據包。
這是前兩次連接的過程,SYN掃描與TCP Connect掃描完全相同。兩者不同的地方是接下來SYN掃描要做的工作:當主機B返回 SNY/ACK數據包后,計算機A并不使用ACK數據包作為響應,替代是計算機A響應一個RST數據包,從而斷開連接。通過在建立會話之前斷開連接,SYN掃描能夠避開某些防火墻的檢測。但是,許多入侵檢測系統能夠監測到SYN掃描。
3、NULL掃描
在NULL掃描中,將一個沒有設置標志位的數據包發送給TCP端口。在正常的TCP通信中,至少要設置標志位。然而在NULL掃描中,所有標志位都不設置。根據RFC793的要求,在端口關閉的狀態下,如果收到了一個沒有設置標志位的數據字段,那么接收主機應該丟棄這個分段,并發送一個RST數據包。否則不會響應包到達發起掃描的客戶端計算機。
當向每一個TCP端口發送沒有設置標志位的數據包時,如果目標主機上該端口處于關閉狀態,那么它將響應一個RST數據包,如果該端口處于開放狀態,那么主機忽略該數據包,不會響應包到達發起掃描的客戶端計算機。
4、FIN掃描
另一種類型的反向掃描為FN掃描,它與NULL掃描相似,同樣比SYN和 TCP Connect掃描更隱蔽一些,但精確度也相對低一些。
FIN位指示TCP會話的結束,在FIN掃描中,一個設置了FN位的數據包被發送給目標主機的每一個端口,與所有類型的反向掃描一樣,響應RST數據包表示端口關閉,沒有響應表示端口開放。同樣需要注意的是Windows操作系統并不遵從RFC793,因此這類系統不能夠對這種類型的掃描提供精確的結果。
5、ACK掃描
ACK掃描通常用來穿過防火墻的規則集。在ACK掃描中,使用響應包來發現防火墻的配置信息。如果某個端口被防火墻過濾,那么就不會返回數據包。如果某個端口沒有被防火墻過濾,那么返回RST數據包。通過偵聽RST數據包,可以了解哪些端口被防火墻過濾掉,哪些端口沒有被過濾掉。
6、Xmas-Tree掃描
Xmas-Tree掃描發送帶有下述標志的TCP數據包。
URG:指示數據是緊急數據,應該馬上被處理。
PSH:強制將數據壓入緩沖區。
FIN:在結東TCP會話時使用。
這個掃描中使用的技巧并不是這些標志原來的用途,但它們可以在一起同時使用。正常的TCP連接不應該同時設置這3個標志。Xmas-Tree掃描返回與其他反向掃描相同的結果,并且依然不能確定 Windows平臺上端口的關閉與開放。
7、Dump掃描
Dumb掃描也稱為Idle掃描或反向掃描,Dumb掃描是另一種掃描方法,在掃描目標主機的過程中,它使用第三方的僵尸計算機進行掃描。僵尸主機是一臺被入侵的空閑主機。典型情況下,這臺主機并不存儲敏感數據,對這樣的主機的訪問通常并不會引起人們的注意。
在IDLE掃描中,僵尸主機向目標主機發SYN包。目標主機根據端口的不同狀態,發送不同的回應,端口開放時回應 SYNACK,關閉時回應RST。僵尸主機對 SYNACK回應RST,對RST不做回應。因此只要監控僵尸主機的發包數量就可以知道目標主機端口的狀態。為了獲得偽裝主機在掃描過程中的發包數量,我們可以利用某些操作系統存在的PID值來預測漏洞。