跟大家講解下有關端口掃描工具,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說端口掃描工具,小編也收集到了有關端口掃描工具的相關資料,希望大家看到了會喜歡。
端口掃描工具是指用于探測服務器或主機開放端口情況的工具,常被計算機管理員用于確認安全策略,同時被攻擊者用于識別目標主機上的可運作的網絡服務。
端口掃描工具(Port Scanner)指用于探測服務器或主機開放端口情況的工具。
常被計算機管理員用于確認安全策略,同時被攻擊者用于識別目標主機上的可運作的網絡服務。(推薦學習:PHP視頻教程)
端口掃描定義是客戶端向一定范圍的服務器端口發送對應請求,以此確認可使用的端口。雖然其本身并不是惡意的網絡活動,但也是網絡攻擊者探測目標主機服務,以利用該服務的已知漏洞的重要手段。端口掃描的主要用途仍然只是確認遠程機器某個服務的可用性。
掃描多個主機以獲取特定的某個端口被稱為端口清掃(Portsweep),以此獲取特定的服務。例如,基于SQL服務的計算機蠕蟲就會清掃大量主機的同一端口以在 1433 端口上建立TCP連接。
類型
TCP掃描
最簡單的端口掃描工具使用操作系統原生的網絡功能,且通常作為SYN掃描的替代選項。Nmap將這種模式稱為連接掃描,因為使用了類似Unix系統的connect()命令。如果該端口是開放的,操作系統就能完成TCP三次握手,然后端口掃描工具會立即關閉剛建立的該連接,防止拒絕服務攻擊。這種掃描模式的優勢是用戶無需特殊權限。但使用操作系統原生網絡功能不能實現底層控制,因此這種掃描方式并不流行。并且TCP掃描很容易被發現,尤其作為端口清掃的手段:這些服務會記錄發送者的IP地址,入侵檢測系統可能觸發警報。 [1]
SYN掃描
SYN掃描是另一種TCP掃描。端口掃描工具不使用操作系統原生網絡功能,而是自行生成、發送IP數據包,并監控其回應。這種掃描模式被稱為“半開放掃描”,因為它從不建立完整的TCP連接。端口掃描工具生成一個SYN包,如果目標端口開放,則會返回SYN-ACK包。掃描端回應一個RST包,然后在握手完成前關閉連接。如果端口關閉了但未使用過濾,目標端口應該會持續返回RST包。
這種粗略的網絡利用方式有幾個優點:給掃描工具全權控制數據包發送和等待回應時長的權力,允許更詳細的回應分析。關于哪一種對目標主機的掃描方式更不具備入侵性存在一些爭議,但SYN掃描的優勢是從不會建立完整的連接。然而,RST包可能導致網絡堵塞,尤其是一些簡單如打印機之類的網絡設備。
UDP掃描
UDP掃描也是可能的,盡管存在一些技術挑戰。 UDP是無連接協議,因此沒有等同于TCP SYN的數據包。但是,如果將UDP數據包發送到未打開的端口,目標系統將響應ICMP端口不可達的消息。大多數UDP端口掃描器都使用這種掃描方法,并使用缺少響應來推斷端口是否打開。但是,如果端口被防火墻阻止,則此方法將錯誤地報告端口已打開。如果端口不可達消息被阻塞,則所有端口將顯示為打開。這種方法也受到ICMP速率限制的影響。
另一種方法是發送特定于應用程序的UDP數據包,希望生成應用層響應。例如,如果DNS服務器存在,向端口53發送DNS查詢將導致響應。這種方法在識別開放端口方面更加可靠。然而,它僅限于應用程序特定的探測包可用時的端口掃描。一些工具(例如,NMAP)通常具有少于20個UDP服務的探針,而一些商業工具(例如,NESUS)有多達70個。在某些情況下,服務能在端口上被偵聽,但被配置為不響應特定的探測包。
更多PHP相關技術文章,請訪問PHP圖文教程欄目進行學習!
以上就是端口掃描工具的詳細內容,更多請關注php中文網其它相關文章!
來源:php中文網