您好,登錄后才能下訂單哦!
網絡中一共有65536個端口(0-65535),端口是供數據進出網絡設備的,也是計算機與外界通信的出口。
網絡中很多程序需要進行網絡通信,而信息實際上都需要通過網卡出入,如何區分出入信息是哪個程序使用的呢,這個就由操作系統處理,而它采用的機制就是劃分出65536個端口,程序在發送的信息中加入端口編號,而操作系統在接收到信息后會按照端口號將信息分流到當前內存中使用該端口號的程序。
根據端口使用情況的不同,可以簡單的將端口分為三類:
公認端口:這一類端口是我們常用的端口。端口編號0-1024的端口都是公認端口。通常這些端口已經明確的與某種服務的協議進行了關聯,一般不會進行更改,比如我們常用的80端口(Http)、23端口(Telnet)、22端口(SSH)。
注冊端口:這部分的端口號的范圍是從1025-49151。它們通常也會關聯到一些服務上,但是并沒有明確的規定,不同的程序可以根據實際情況進行定義。
動態/私有端口:這部分端口號的范圍是從49152-65535。一般來說,常見的服務不應該使用這些端口,所有容易被忽視。
此外,我們根據協議的不同,可以分為TCP協議端口、UDP協議端口,因為這兩個都屬于傳輸層的協議,為通信的雙方提供端到端的服務。
Nmap中對端口給出了6種不同的狀態:
open:如果目標端口的狀態處于open,則說明該端口有應用程序接受TCP連接或UDP報文。
closed:如果目標端口的狀態處于close,這里不完全意味沒有任何反應,狀態為close的端口是可訪問的,這種端口可以接受Nmap的探測報文并做出響應。
filtered:產生這種狀態主要原因是因為存網絡數據包過濾,導致Nmap無法確定該端口是否開放
unfiltered:這種結果很少見,它表明目標端口是可以訪問的,但是Nmap卻無法判斷它到底是開放還是關閉,通常在ACK掃描時會出現這種狀況。
open | filtered:無法確定端口是開放的還是被過濾了。
closed | filtered:無法確定端口是關閉的還是被過濾了。
Nmap中提供了大量的技術來實現對端口狀態的檢測,由于TCP技術相對于UDP技術要復雜一些,所以TCP的檢測手段比UDP要多一些。
SYN掃描
SYN掃描是最為流行的一種掃描方式,同時也是Nmap采用的默認掃描方式。這種掃描方式速度快,可以在一秒鐘掃描上千個端口。
首先Nmap會向目標主機的一個端口發送請求連接的SYN數據包,而目標計算機接收到以后會以SYN/ACK應答,Nmap在接收到SYN/ACK后會發送RST包請求斷開連接, 而不是ACK應答。這樣三次握手就沒有完成,無法建立正常的TCP連接,因此,(準備劃重點)此次掃描就不會被記錄到系統日志中。
用TCP SYN掃描時會有以下幾種結果:
|
Connect掃描
Connect掃描方式其實跟SYN掃描很像,只是這種掃描方式完成了TCP的三次握手。
Connect掃描語法如下:
nmap -sT 192.168.126.139
UDP掃描
使用UDP掃描對一個端口進行掃描時有三種結果
目標主機的應答 | 目標端口的狀態 |
---|---|
從目標端口得到任意的UDP應答 | open |
如果目標主機沒有給出應答 | open filtered |
ICMP端口無法抵達錯誤(代碼 3) | closed |
ICMP無法抵達的錯誤(代碼 1 2 9 10 13) | filtered |
UDP的掃描速度相對較慢。語法如下:
nmap -sU 192.168.126.139
......等這個結果確實很慢
這個掃描結果中有很多端口狀態都是filtered,但是這個端口的真實狀態可能是open或者closed,我們要想判斷這些端口到底是開放還是關閉的話就需要進一步測試。UDP程序的服務一般不會對Nmap所發的空數據包做出回應,UDP程序需要使用它們自己的格式。如果保證能向所有常見的UDP服務發送合適的數據包,Nmap需要一個很大的數據庫來儲存這些格式,Nmap將這些格式存放在Nmap-service-probes中。我們可以使用-sV 或 -A 參數,Nmap將會向每個 open | filtered 端口發送UDP probe,如果目標端口對任何一個probe有了響應,狀態都會被更改為open。
TCP FIN掃描
TCP FIN掃描方法向目標端口發送一個FIN數據包。按照RFC 793的規定,所有關閉的端口,目標系統應該返回RST標志。
使用TCP FIN掃描端口語法如下:
nmap -sF 192.168.126.139
NULL掃描
TCP NULL掃描方法是向目標端口發送一個不包含任何標志的數據包。按照RFC 793的規定,對于所有關閉的端口,目標主機應該返回RST標志。
使用 TCP NULL掃描端口的語法如下:
nmap -sN 192.168.126.139
Xmas Tree掃描
TCP Xmas Tree掃描方法是向目標端口發送一個含有FIN URG 和 PUSH標志的數據包。按照RFC 793規定,對于關閉的端口,目標系統應該返回RST標志
使用TCP Xmas Tree掃描端口的語法如下:
nmap -sX 192.168.126.139
nmap -F 192.168.126.139
2.指定掃描某個端口
nmap -p 8080 192.168.126.139 //-p后加指定的端口號
3.使用名字來指定掃描端口
nmap -p dns,http 192.168.126.139 //-p后跟端口名稱,多個端口用逗號隔開
4.使用協議指定掃描端口
nmap -p U:53 , T:22 192.168.126.139 //對UDP的53端口和TCP的22端口進行掃描,目標192.168.126.139
5.掃描所有端口
nmap -p * 192.168.126.139 //慎用
6.掃描常用端口
nmap --top-ports 20 192.168.126.139 //對前20個端口進行掃描,數字根據自己需求設置,默認是10個
因為系統查的比較嚴,所以刪減了一部分的文章,還請諒解
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。