-
當前位置:首頁 > 創(chuàng)意學院 > 技術(shù) > 專題列表 > 正文
端口的概念和分類(端口的概念和分類有哪些)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關于端口的概念和分類的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關鍵詞,就能返回你想要的內(nèi)容,越精準,寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com
本文目錄:
一、端口是什么?
計算機"端口"是英文port譯義,可以認為是計算機與外界通訊交流出口。其中硬件領域端口又稱接口,如:USB端口、串行端口等。軟件領域端口一般指網(wǎng)絡中面向連接服務和無連接服務通信協(xié)議端口,是一種抽象軟件結(jié)構(gòu),包括一些數(shù)據(jù)結(jié)構(gòu)和I/O(基本輸入輸出)緩沖區(qū)。 在網(wǎng)絡技術(shù)中,端口(Port)有好幾種意思。集線器、交換機、路由器端口指是連接其他網(wǎng)絡設備接口,如RJ-45端口、Serial端口等。們 這里所指端口不是指物理意義上端口,而是特指TCP/IP協(xié)議中端口,是邏 輯意義上端口。 那么TCP/IP協(xié)議中端口指是什么呢?如果把IP地址比作一間房子 ,端口就是出入這間房子門。真正房子只有幾個門,但是一個IP地址端口 可以有65536(即:256×256)個之多!端口是通過端口號來標記,端口號只有整數(shù),范圍是從0 到65535(256×256)。 在Internet上,各主機間通過TCP/TP協(xié)議發(fā)送和接收數(shù)據(jù)報,各個數(shù)據(jù)報根據(jù)其目主機ip地址來進行互聯(lián)網(wǎng)絡中路由選擇。可見,把數(shù)據(jù)報順利傳送到目主機是沒有問題。問題出在哪里呢?們知道大多數(shù)操作系統(tǒng)都支持多程序(進程)同時運行,那么目主機應該把接收到數(shù)據(jù)報傳送給眾多同時運行進程中哪一個呢?顯然這個問題有待解決,端口機制便由此被引入進來。 本地操作系統(tǒng)會給那些有需求進程分配協(xié)議端口(protocal port,即們常說端口),每個協(xié)議端口由一個正整數(shù)標識,如:80,139,445,等等。當目主機接收到數(shù)據(jù)報后,將根據(jù)報文首部目端口號,把數(shù)據(jù)發(fā)送到相應端口,而與此端口相對應那個進程將會領取數(shù)據(jù)并等待下一組數(shù)據(jù)到來。說到這里,端口概念似乎仍然抽象,那么繼續(xù)跟來,別走開。 端口其實就是隊,操作系統(tǒng)為各個進程分配不同隊,數(shù)據(jù)報按照目端口被推入相應隊中,等待被進程取用,在極特殊情況下,這個隊也是有可能溢出,不過操作系統(tǒng)允許各進程指定和調(diào)整自己隊大小。 不光接受數(shù)據(jù)報進程需要開啟它自己端口,發(fā)送數(shù)據(jù)報進程也需要開啟端口,這樣,數(shù)據(jù)報中將會標識有源端口,以便接受方能順利回傳數(shù)據(jù)報到這個端口。
二、端口的基本概念是什么
"端口"在計算機網(wǎng)絡領域中是個非常重要的概念.它是專門為計算機信息而設計的,它不是硬件,也不同于計算機中的 "插槽".可以說是個 "軟端口"如果有需要的話,一臺計算機可以有上萬個端口.
端口是由計算機的通信協(xié)議tcp/ip協(xié)議定義的.其中規(guī)定,用ip地址和端口做為套接字,它代表tcp連接的一個連接端.一般稱為"socket".具體來說.就是用[ip:端口]來定位一臺主機中的進程,可以做這樣的比喻,端口相當于兩臺計算機進程間的大門,可以隨便定義,其目的只是為了讓兩臺計算機能夠找到對方的進程.計算機就像一座大樓,這個大樓有好多入口<端口>,進到不同的入口中就可以找到不動的公司<進程>如果要和遠程主機a的程序通信,那么只要把數(shù)據(jù)發(fā)向[a:端口]就可以實現(xiàn)通信了..
可見,端口與進程是一一對應的,如果某個進程正在等待連接,稱之為該進程能夠正在監(jiān)聽,那么就會出現(xiàn)與它對應的端口.由此可見,入侵者通過掃描端口,便可以判斷出目標計算機有哪些通信進程正在等待連接...
什么是端口?
我們這里所說的端口,不是計算機硬件的i/o端口,而是軟件形式上的概念。服務器可以向外提供多種服務,比如,一臺服務器可以同時是web服務器,也可以是ftp服務器,同時,它也可以是郵件服務器。為什么一臺服務器可以同時提供那么多的服務呢?其中一個很主要的方面,就是各種服務采用不同的端口分別提供不同的服務,比如:web采用80端口,ftp采用21端口等。這樣,通過不同端口,計算機與外界進行互不干擾的通信。
工具提供服務類型的不同,端口分為兩種,一種是tcp端口,一種是udp端口。計算機之間相互通信的時候,分為兩種方式:一種是發(fā)送信息以后,可以確認信息是否到達,也就是有應答的方式,這種方式大多采用tcp協(xié)議;一種是發(fā)送以后就不管了,不去確認信息是否到達,這種方式大多采用udp協(xié)議。對應這兩種協(xié)議的服務提供的端口,也就分為tcp端口和udp端口。
那么,如果攻擊者使用軟件掃描目標計算機,得到目標計算機打開的端口,也就了解了目標計算機提供了那些服務。我們都知道,提供服務就一定有服務軟件的漏洞,根據(jù)這些,攻擊者可以達到對目標計算機的初步了解。如果計算機的端口打開太多,而管理者不知道,那么,有兩種情況:一種是提供了服務而管理者沒有注意,比如安裝iis的時候,軟件就會自動增加很多服務,而管理員可能沒有注意到;一種是服務器被攻擊者安裝木馬,通過特殊的端口進行通信。這兩種情況都是很危險的,說到底,就是管理員不了解服務器提供的服務,減小了系統(tǒng)安全系數(shù)。
三、什么是端口
計算機“端口”是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬件領域的端口又稱接口,如:USB端口、串行端口等。軟件領域的端口一般指網(wǎng)絡中面向連接服務和無連接服務的通信協(xié)議端口,是一種抽象的軟件結(jié)構(gòu),包括一些數(shù)據(jù)結(jié)構(gòu)和I/O(基本輸入輸出)緩沖區(qū)。
按端口號可分為3大類:
(1)公認端口(Well Known Ports):從0到1023,它們緊密綁定(binding)于一些服務。通常這些端口的通訊明確表明了某種服務的協(xié)議。例如:80端口實際上總是HTTP通訊。
(2)注冊端口(Registered Ports):從1024到49151。它們松散地綁定于一些服務。也就是說有許多服務綁定于這些端口,這些端口同樣用于許多其它目的。例如:許多系統(tǒng)處理動態(tài)端口從1024左右開始。
(3)動態(tài)和/或私有端口(Dynamic and/or Private Ports):從49152到65535。理論上,不應為服務分配這些端口。實際上,機器通常從1024起分配動態(tài)端口。但也有例外:SUN的RPC端口從32768開始。
一些端口常常會被黑客利用,還會被一些木馬病毒利用,對計算機系統(tǒng)進行攻擊,以下是計算機端口的介紹以及防止被黑客攻擊的簡要辦法。
8080端口
端口說明:8080端口同80端口,是被用于WWW代理服務的,可以實現(xiàn)網(wǎng)頁瀏覽,經(jīng)常在訪問某個網(wǎng)站或使用代理服務器的時候,會加上“:8080”端口號,比如http://www.cce.com.cn:8080。
端口漏洞:8080端口可以被各種病毒程序所利用,比如Brown Orifice(BrO)特洛伊木馬病毒可以利用8080端口完全遙控被感染的計算機。另外,RemoConChubo,RingZero木馬也可以利用該端口進行攻擊。
操作建議:一般我們是使用80端口進行網(wǎng)頁瀏覽的,為了避免病毒的攻擊,我們可以關閉該端口。
端口:21
服務:FTP
說明:FTP服務器所開放的端口,用于上傳、下載。最常見的攻擊者用于尋找打開anonymous的FTP服務器的方法。這些服務器帶有可讀寫的目錄。木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的端口。
端口:22
服務:Ssh
說明:PcAnywhere建立的TCP和這一端口的連接可能是為了尋找ssh。這一服務有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞存在。
端口:23
服務:Telnet
說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務。大多數(shù)情況下掃描這一端口是為了找到機器運行的操作系統(tǒng)。還有使用其他技術(shù),入侵者也會找到密碼。木馬Tiny Telnet Server就開放這個端口。
端口:25
服務:SMTP
說明:SMTP服務器所開放的端口,用于發(fā)送郵件。入侵者尋找SMTP服務器是為了傳遞他們的SPAM。入侵者的帳戶被關閉,他們需要連接到高帶寬的E-MAIL服務器上,將簡單的信息傳遞到不同的地址。木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個端口。
端口:80
服務:HTTP
說明:用于網(wǎng)頁瀏覽。木馬Executor開放此端口。
端口:102
服務:Message transfer agent(MTA)-X.400 over TCP/IP
說明:消息傳輸代理。
端口:109
服務:Post Office Protocol -Version3
說明:POP3服務器開放此端口,用于接收郵件,客戶端訪問服務器端的郵件服務。POP3服務有許多公認的弱點。關于用戶名和密碼交 換緩沖區(qū)溢出的弱點至少有20個,這意味著入侵者可以在真正登陸前進入系統(tǒng)。成功登陸后還有其他緩沖區(qū)溢出錯誤。
端口:110
服務:SUN公司的RPC服務所有端口
說明:常見RPC服務有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等
端口:119
服務:Network News Transfer Protocol
說明:NEWS新聞組傳輸協(xié)議,承載USENET通信。這個端口的連接通常是人們在尋找USENET服務器。多數(shù)ISP限制,只有他們的客戶才能訪問他們的新聞組服務器。打開新聞組服務器將允許發(fā)/讀任何人的帖子,訪問被限制的新聞組服務器,匿名發(fā)帖或發(fā)送SPAM。
端口:135
服務:Location Service
說明:Microsoft在這個端口運行DCE RPC end-point mapper為它的DCOM服務。這與UNIX 111端口的功能很相似。使用DCOM和RPC的服務利用計算機上的end-point mapper注冊它們的位置。遠端客戶連接到計算機時,它們查找end-point mapper找到服務的位置。HACKER掃描計算機的這個端口是為了找到這個計算機上運行Exchange Server嗎?什么版本?還有些DOS攻擊直接針對這個端口。
端口:137、138、139
服務:NETBIOS Name Service
說明:其中137、138是UDP端口,當通過網(wǎng)上鄰居傳輸文件時用這個端口。而139端口:通過這個端口進入的連接試圖獲得NetBIOS/SMB服務。這個協(xié)議被用于windows文件和打印機共享和SAMBA。還有WINS Regisrtation也用它。
端口:161
服務:SNMP
說明:SNMP允許遠程管理設備。所有配置和運行信息的儲存在數(shù)據(jù)庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統(tǒng)。他們可能會試驗所有可能的組合。SNMP包可能會被錯誤的指向用戶的網(wǎng)絡
什么是端口?
在開始講什么是端口之前,我們先來聊一聊什么是 port 呢?常常在網(wǎng)絡上聽說『我的主機開了多少的 port ,會不會被入侵呀???』或者是說『開那個 port 會比較安全?又,我的服務應該對應什么 port 呀?。俊缓呛?!很神奇吧!怎么一部主機上面有這么多的奇怪的 port 呢?這個 port 有什么作用呢?!
由于每種網(wǎng)絡的服務功能都不相同,因此有必要將不同的封包送給不同的服務來處理,所以啰,當你的主機同時開啟了 FTP 與 WWW 服務的時候,那么別人送來的資料封包,就會依照 TCP 上面的 port 號碼來給 FTP 這個服務或者是 WWW 這個服務來處理,當然就不會搞亂啰!(注:嘿嘿!有些很少接觸到網(wǎng)絡的朋友,常常會問說:『咦!為什么你的計算機同時有 FTP、WWW、E-Mail 這么多服務,但是人家傳資料過來,你的計算機怎么知道如何判斷?計算機真的都不會誤判嗎?!』現(xiàn)在知道為什么了嗎?!對啦!就是因為 port 不同嘛!你可以這樣想啦,有一天,你要去銀行存錢,那個銀行就可以想成是『主機』,然后,銀行當然不可能只有一種業(yè)務,里頭就有相當多的窗口,那么你一進大門的時候,在門口的服務人員就會問你說:『嗨!你好呀!你要做些什么事?』你跟他說:『我要存錢呀!』,服務員接著就會告訴你:『喝!那么請前往三號窗口!那邊的人員會幫您服務!』這個時候你總該不會往其它的窗口跑吧?! ""這些窗口就可以想成是『 port 』啰!所以啦!每一種服務都有特定的 port 在監(jiān)聽!您無須擔心計算機會誤判的問題呦?。?
· 每一個 TCP 聯(lián)機都必須由一端(通常為 client )發(fā)起請求這個 port 通常是隨機選擇大于 1024 以上的 port 號來進行!其 TCP 封包會將(且只將) SYN 旗標設定起來!這是整個聯(lián)機的第一個封包;
· 如果另一端(通常為 Server ) 接受這個請求的話(當然啰,特殊的服務需要以特殊的 port 來進行,例如 FTP 的 port 21 ),則會向請求端送回整個聯(lián)機的第二個封包!其上除了 SYN 旗標之外同時還將 ACK 旗標也設定起來,并同時時在本機端建立資源以待聯(lián)機之需;
· 然后,請求端獲得服務端第一個響應封包之后,必須再響應對方一個確認封包,此時封包只帶 ACK 旗標(事實上,后繼聯(lián)機中的所有封包都必須帶有 ACK 旗標);
· 只有當服務端收到請求端的確認( ACK )封包(也就是整個聯(lián)機的第三個封包)之后,兩端的聯(lián)機才能正式建立。這就是所謂的 TCP 聯(lián)機的'三段式交握( Three-Way Handshake )'的原理。
經(jīng)過三向交握之后,呵呵!你的 client 端的 port 通常是高于 1024 的隨機取得的 port 至于主機端則視當時的服務是開啟哪一個 port 而定,例如 WWW 選擇 80 而 FTP 則以 21 為正常的聯(lián)機信道!
總而言之,我們這里所說的端口,不是計算機硬件的I/O端口,而是軟件形式上的概念.工具提供服務類型的不同,端口分為兩種,一種是TCP端口,一種是UDP端口。計算機之間相互通信的時候,分為兩種方式:一種是發(fā)送信息以后,可以確認信息是否到達,也就是有應答的方式,這種方式大多采用TCP協(xié)議;一種是發(fā)送以后就不管了,不去確認信息是否到達,這種方式大多采用UDP協(xié)議。對應這兩種協(xié)議的服務提供的端口,也就分為TCP端口和UDP端口。
那么,如果攻擊者使用軟件掃描目標計算機,得到目標計算機打開的端口,也就了解了目標計算機提供了那些服務。我們都知道,提供服務就一定有服務軟件的漏洞,根據(jù)這些,攻擊者可以達到對目標計算機的初步了解。如果計算機的端口打開太多,而管理者不知道,那么,有兩種情況:一種是提供了服務而管理者沒有注意,比如安裝IIS的時候,軟件就會自動增加很多服務,而管理員可能沒有注意到;一種是服務器被攻擊者安裝木馬,通過特殊的端口進行通信。這兩種情況都是很危險的,說到底,就是管理員不了解服務器提供的服務,減小了系統(tǒng)安全系數(shù)。
//////////////////////////////////////////////////////////////////////////////////
什么是“端口”?
在網(wǎng)絡技術(shù)中,端口(Port)有好幾種意思。集線器、交換機、路由 器的端口指的是連接其他網(wǎng)絡設備的接口,如RJ-45端口、Serial端口等。我們 這里所指的端口不是指物理意義上的端口,而是特指TCP/IP協(xié)議中的端口,是邏 輯意義上的端口。
那么TCP/IP協(xié)議中的端口指的是什么呢?如果把IP地址比作一間房子 ,端口就是出入這間房子的門。真正的房子只有幾個門,但是一個IP地址的端口 可以有65536個之多!端口是通過端口號來標記的,端口號只有整數(shù),范圍是從0 到65535。
端口有什么用呢?我們知道,一臺擁有IP地址的主機可以提供許多服 務,比如Web服務、FTP服務、SMTP服務等,這些服務完全可以通過1個IP地址來 實現(xiàn)。那么,主機是怎樣區(qū)分不同的網(wǎng)絡服務呢?顯然不能只靠IP地址,因為IP 地址與網(wǎng)絡服務的關系是一對多的關系。實際上是通過“IP地址+端口號”來區(qū) 分不同的服務的。
需要注意的是,端口并不是一一對應的。比如你的電腦作為客戶機訪 問一臺WWW服務器時,WWW服務器使用“80”端口與你的電腦通信,但你的電腦則 可能使用“3457”這樣的端口,如圖1所示。
按對應的協(xié)議類型,端口有兩種:TCP端口和UDP端口。由于TCP和UDP 兩個協(xié)議是獨立的,因此各自的端口號也相互獨立,比如TCP有235端口,UDP也 可以有235端口,兩者并不沖突。
1.周知端口(Well Known Ports)
周知端口是眾所周知的端口號,范圍從0到1023,其中80端口分配給W WW服務,21端口分配給FTP服務等。我們在IE的地址欄里輸入一個網(wǎng)址的時候( 比如www.cce.com.cn)是不必指定端口號的,因為在默認情況下WWW服務的端口 號是“80”。
網(wǎng)絡服務是可以使用其他端口號的,如果不是默認的端口號則應該在 地址欄上指定端口號,方法是在地址后面加上冒號“:”(半角),再加上端口 號。比如使用“8080”作為WWW服務的端口,則需要在地址欄里輸入“www.cce.com.cn:8080”。
但是有些系統(tǒng)協(xié)議使用固定的端口號,它是不能被改變的,比如139 端口專門用于NetBIOS與TCP/IP之間的通信,不能手動改變。
2.動態(tài)端口(Dynamic Ports)
動態(tài)端口的范圍是從1024到65535。之所以稱為動態(tài)端口,是因為它 一般不固定分配某種服務,而是動態(tài)分配。動態(tài)分配是指當一個系統(tǒng)進程或應用 程序進程需要網(wǎng)絡通信時,它向主機申請一個端口,主機從可用的端口號中分配 一個供它使用。當這個進程關閉時,同時也就釋放了所占用的端口號。
怎樣查看端口
一臺服務器有大量的端口在使用,怎么來查看端口呢?有兩種方式: 一種是利用系統(tǒng)內(nèi)置的命令,一種是利用第三方端口掃描軟件。
1.用“netstat -an”查看端口狀態(tài)
在Windows 2000/XP中,可以在命令提示符下使用“netstat -an”查 看系統(tǒng)端口狀態(tài),可以列出系統(tǒng)正在開放的端口號及其狀態(tài).
2.用第三方端口掃描軟件
第三方端口掃描軟件有許多,界面雖然千差萬別,但是功能卻是類似 的。這里以“Fport” (可到http://www.ccert.edu.cn/tools/index.php?type_t=7或http://www.ccidnet.com/soft/cce下載)為例講解。“Fport”在命令提示符下使用,運行結(jié)果 與“netstat -an”相似,但是它不僅能夠列出正在使用的端口號及類型,還可 以列出端口被哪個應用程序使用.
四、懸賞啊!網(wǎng)絡端口一共有哪些?。??
有過一些黑客攻擊方面知識的讀者都會知道,其實那些所謂的黑客并不是像人們想象那樣從天而降,而是實實在在從您的計算機"大門"中自由出入。計算機的"大門"就是我們平常所說的"端口",它包括計算機的物理端口,如計算機的串口、并口、輸入/輸出設備以及適配器接口等(這些端口都是可見的),但更多的是不可見的軟件端口,在本文中所介紹的都是指"軟件端口",但為了說明方便,仍統(tǒng)稱為"端口"。本文僅就端口的基礎知識進行介紹,
一、端口簡介
隨著計算機網(wǎng)絡技術(shù)的發(fā)展,原來物理上的接口(如鍵盤、鼠標、網(wǎng)卡、顯示卡等輸入/輸出接口)已不能滿足網(wǎng)絡通信的要求,TCP/IP協(xié)議作為網(wǎng)絡通信的標準協(xié)議就解決了這個通信難題。TCP/IP協(xié)議集成到操作系統(tǒng)的內(nèi)核中,這就相當于在操作系統(tǒng)中引入了一種新的輸入/輸出接口技術(shù),因為在TCP/IP協(xié)議中引入了一種稱之為"Socket(套接字)"應用程序接口。有了這樣一種接口技術(shù),一臺計算機就可以通過軟件的方式與任何一臺具有Socket接口的計算機進行通信。端口在計算機編程上也就是"Socket接口"。
有了這些端口后,這些端口又是如何工作呢?例如一臺服務器為什么可以同時是Web服務器,也可以是FTP服務器,還可以是郵件服務器等等呢?其中一個很重要的原因是各種服務采用不同的端口分別提供不同的服務,比如:通常TCP/IP協(xié)議規(guī)定Web采用80號端口,F(xiàn)TP采用21號端口等,而郵件服務器是采用25號端口。這樣,通過不同端口,計算機就可以與外界進行互不干擾的通信。
據(jù)專家們分析,服務器端口數(shù)最大可以有65535個,但是實際上常用的端口才幾十個,由此可以看出未定義的端口相當多。這是那么多黑客程序都可以采用某種方法,定義出一個特殊的端口來達到入侵的目的的原因所在。為了定義出這個端口,就要依靠某種程序在計算機啟動之前自動加載到內(nèi)存,強行控制計算機打開那個特殊的端口。這個程序就是"后門"程序,這些后門程序就是常說的木馬程序。簡單的說,這些木馬程序在入侵前是先通過某種手段在一臺個人計算機中植入一個程序,打開某個(些)特定的端口,俗稱"后門"(BackDoor),使這臺計算機變成一臺開放性極高(用戶擁有極高權(quán)限)的FTP服務器,然后從后門就可以達到侵入的目的。
二、端口的分類
端口的分類根據(jù)其參考對象不同有不同劃分方法,如果從端口的性質(zhì)來分,通常可以分為以下三類:
(1)公認端口(Well Known Ports):這類端口也常稱之為"常用端口"。這類端口的端口號從0到1024,它們緊密綁定于一些特定的服務。通常這些端口的通信明確表明了某種服務的協(xié)議,這種端口是不可再重新定義它的作用對象。例如:80端口實際上總是HTTP通信所使用的,而23號端口則是Telnet服務專用的。這些端口通常不會像木馬這樣的黑客程序利用。為了使大家對這些常用端口多一些認識,在本章后面將詳細把這些端口所對面應的服務進行列表,供各位理解和參考。
(2) 注冊端口(Registered Ports):端口號從1025到49151。它們松散地綁定于一些服務。也是說有許多服務綁定于這些端口,這些端口同樣用于許多其他目的。這些端口多數(shù)沒有明確的定義服務對象,不同程序可根據(jù)實際需要自己定義,如后面要介紹的遠程控制軟件和木馬程序中都會有這些端口的定義的。記住這些常見的程序端口在木馬程序的防護和查殺上是非常有必要的。常見木馬所使用的端口在后面將有詳細的列表。
(3) 動態(tài)和/或私有端口(Dynamic and/or Private Ports):端口號從49152到65535。理論上,不應把常用服務分配在這些端口上。實際上,有些較為特殊的程序,特別是一些木馬程序就非常喜歡用這些端口,因為這些端口常常不被引起注意,容易隱蔽。
如果根據(jù)所提供的服務方式的不同,端口又可分為"TCP協(xié)議端口"和"UDP協(xié)議端口"兩種。因為計算機之間相互通信一般采用這兩種通信協(xié)議。前面所介紹的"連接方式"是一種直接與接收方進行的連接,發(fā)送信息以后,可以確認信息是否到達,這種方式大多采用TCP協(xié)議;另一種是不是直接與接收方進行連接,只管把信息放在網(wǎng)上發(fā)出去,而不管信息是否到達,也就是前面所介紹的"無連接方式"。這種方式大多采用UDP協(xié)議,IP協(xié)議也是一種無連接方式。對應使用以上這兩種通信協(xié)議的服務所提供的端口,也就分為"TCP協(xié)議端口"和"UDP協(xié)議端口"。
使用TCP協(xié)議的常見端口主要有以下幾種:
(1) FTP:定義了文件傳輸協(xié)議,使用21端口。常說某某計算機開了FTP服務便是啟動了文件傳輸服務。下載文件,上傳主頁,都要用到FTP服務。
(2) Telnet:它是一種用于遠程登陸的端口,用戶可以以自己的身份遠程連接到計算機上,通過這種端口可以提供一種基于DOS模式下的通信服務。如以前的BBS是純字符界面的,支持BBS的服務器將23端口打開,對外提供服務。
(3) SMTP:定義了簡單郵件傳送協(xié)議,現(xiàn)在很多郵件服務器都用的是這個協(xié)議,用于發(fā)送郵件。如常見的免費郵件服務中用的就是這個郵件服務端口,所以在電子郵件設置中??吹接羞@么SMTP端口設置這個欄,服務器開放的是25號端口。
(4) POP3:它是和SMTP對應,POP3用于接收郵件。通常情況下,POP3協(xié)議所用的是110端口。也是說,只要你有相應的使用POP3協(xié)議的程序(例如Foxmail或Outlook),就可以不以Web方式登陸進郵箱界面,直接用郵件程序就可以收到郵件(如是163郵箱就沒有必要先進入網(wǎng)易網(wǎng)站,再進入自己的郵箱來收信)。
使用UDP協(xié)議端口常見的有:
(1) HTTP:這是大家用得最多的協(xié)議,它就是常說的"超文本傳輸協(xié)議"。上網(wǎng)瀏覽網(wǎng)頁時,就得在提供網(wǎng)頁資源的計算機上打開80號端口以提供服務。常說"WWW服務"、"Web服務器"用的就是這個端口。
(2) DNS:用于域名解析服務,這種服務在Windows NT系統(tǒng)中用得最多的。因特網(wǎng)上的每一臺計算機都有一個網(wǎng)絡地址與之對應,這個地址是常說的IP地址,它以純數(shù)字+"."的形式表示。然而這卻不便記憶,于是出現(xiàn)了域名,訪問計算機的時候只需要知道域名,域名和IP地址之間的變換由DNS服務器來完成。DNS用的是53號端口。
(3) SNMP:簡單網(wǎng)絡管理協(xié)議,使用161號端口,是用來管理網(wǎng)絡設備的。由于網(wǎng)絡設備很多,無連接的服務就體現(xiàn)出其優(yōu)勢。
(4) OICQ:OICQ程序既接受服務,又提供服務,這樣兩個聊天的人才是平等的。OICQ用的是無連接的協(xié)議,也是說它用的是UDP協(xié)議。OICQ服務器是使用8000號端口,偵聽是否有信息到來,客戶端使用4000號端口,向外發(fā)送信息。如果上述兩個端口正在使用(有很多人同時和幾個好友聊天),就順序往上加。
在計算機的6萬多個端口,通常把端口號為1024以內(nèi)的稱之為常用端口,這些常用端口所對應的服務通常情況下是固定的。表1所列的都是服務器默認的端口,不允許改變,一般通信過程都主要用到這些端口。
表1
服務類型 默認端口 服務類型 默認端口
Echo 7 Daytime 13
FTP 21 Telnet 23
SMTP 25 Time 37
Whois 43 DNS 53
Gopher 70 Finger 79
WWW 80 POP3 110
NNTP 119 IRC 194
另外代理服務器常用以下端口:
(1). HTTP協(xié)議代理服務器常用端口號:80/8080/3128/8081/9080
(2). SOCKS代理協(xié)議服務器常用端口號:1080
(3). FTP協(xié)議代理服務器常用端口號:21
(4). Telnet協(xié)議代理服務器常用端口:23
三、端口在黑客中的應用
像木馬之類的黑客程序,就是通過對端口的入侵來實現(xiàn)其目的的。在端口的利用上,黑客程序通常有兩種方式,那就是"端口偵聽"和"端口掃描"。
"端口偵聽"與"端口掃描"是黑客攻擊和防護中經(jīng)常要用到的兩種端口技術(shù),在黑客攻擊中利用它們可以準確地尋找攻擊的目標,獲取有用信息,在個人及網(wǎng)絡防護方面通過這種端口技術(shù)的應用可以及時發(fā)現(xiàn)黑客的攻擊及一些安全漏洞。下面首先簡單介紹一下這兩種端口技術(shù)的異同。
"端口偵聽"是利用某種程序?qū)δ繕擞嬎銠C的端口進行監(jiān)視,查看目標計算機上有哪能些端口是空閑、可以利用的。通過偵聽還可以捕獲別人有用的信息,這主要是用在黑客軟件中,但對于個人來說也是非常有用的,可以用偵聽程序來保護自己的計算機,在自己計算機的選定端口進行監(jiān)視,這樣可以發(fā)現(xiàn)并攔截一些黑客的攻擊。也可以偵聽別人計算機的指定端口,看是否空閑,以便入侵。
"端口掃描"(port scanning)是通過連接到目標系統(tǒng)的TCP協(xié)議或UDP協(xié)議端口,來確定什么服務正在運行,然后獲取相應的用戶信息?,F(xiàn)在有許多人把"端口偵聽"與"端口掃描"混為一談,根本分不清什么樣的情況下要用偵聽技術(shù),什么樣的情況下要用掃描技術(shù)。不過,現(xiàn)在的這類軟件也似乎對這兩種技術(shù)有點模糊了,有的干脆把兩個功能都集成在一塊。
"端口偵聽"與"端口掃描"有相似之處,也有區(qū)別的地方,相似的地方是都可以對目標計算機進行監(jiān)視,區(qū)別的地方是"端口偵聽"屬于一種被動的過程,等待別人的連接的出現(xiàn),通過對方的連接才能偵聽到需要的信息。在個人應用中,如果在設置了當偵聽到有異常連接立即向用戶報告這個功能時,就可以有效地偵聽黑客的連接企圖,及時把駐留在本機上的木馬程序清除掉。這個偵聽程序一般是安裝在目標計算機上。用在黑客中的"端口偵聽"通常是黑客程序駐留在服務器端等待服務器端在進行正?;顒訒r捕獲黑客需要的信息,然后通過UDP協(xié)議無連接方式發(fā)出去。而"端口掃描"則是一種主動過程,它是主動對目標計算機的選定端口進行掃描,實時地發(fā)現(xiàn)所選定端口的所有活動(特別是對一些網(wǎng)上活動)。掃描程序一般是安裝在客戶端,但是它與服務器端的連接也主要是通過無連接方式的UDP協(xié)議連接進行。
在網(wǎng)絡中,當信息進行傳播的時候,可以利用工具,將網(wǎng)絡接口設置在偵聽的模式,便可將網(wǎng)絡中正在傳播的信息截獲或者捕獲到,從而進行攻擊。端口偵聽在網(wǎng)絡中的任何一個位置模式下都可實施進行,而黑客一般都是利用端口偵聽來截取用戶口令。
四、端口偵聽原理
以太網(wǎng)(Ethernet)協(xié)議的工作方式是將要發(fā)送的數(shù)據(jù)包發(fā)往連接在一起的所有計算機。在包頭中包括有應該接收數(shù)據(jù)包的計算機的正確地址,因為只有與數(shù)據(jù)包中目標地址一致的那臺計算機才能接收到信息包。但是當計算機工作在偵聽模式下,不管數(shù)據(jù)包中的目標物理地址是什么,計算機都將可以接收到。當同一網(wǎng)絡中的兩臺計算機通信的時候,源計算機將寫有目的計算機地址的數(shù)據(jù)包直接發(fā)向目的計算機,或者當網(wǎng)絡中的一臺計算機同外界的計算機通信時,源計算機將寫有目的計算機IP地址的數(shù)據(jù)包發(fā)向網(wǎng)關。但這種數(shù)據(jù)包并不能在協(xié)議棧的高層直接發(fā)送出去,要發(fā)送的數(shù)據(jù)包必須從TCP/IP協(xié)議的IP協(xié)議層交給網(wǎng)絡接口--數(shù)據(jù)鏈路層。網(wǎng)絡接口不會識別IP地址的,在網(wǎng)絡接口中,由IP協(xié)議層來的帶有IP地址的數(shù)據(jù)包又增加了一部分以太網(wǎng)的幀頭信息。在幀頭中,有兩個域分別為只有網(wǎng)絡接口才能識別的源計算機和目的計算機的物理地址,這是一個48位的地址,這個48位的地址是與IP地址相對應的。換句話說,一個IP地址也會對應一個物理地址。對于作為網(wǎng)關的計算機,由于它連接了多個網(wǎng)絡,它也就同時具備有很多個IP地址,在每個網(wǎng)絡中它都有一個。而發(fā)向網(wǎng)絡外的幀中繼攜帶的是網(wǎng)關的物理地址。
以太網(wǎng)中填寫了物理地址的幀從網(wǎng)絡端口中(或者從網(wǎng)關端口中)發(fā)送出去,傳送到物理的線路上。如果局域網(wǎng)是由一條粗同軸電纜或細同軸電纜連接成的,那么數(shù)字信號在電纜上傳輸信號就能夠到達線路上的每一臺計算機。再當使用集線器的時候,發(fā)送出去的信號到達集線器,由集線器再發(fā)向連接在集線器上的每一條線路。這樣在物理線路上傳輸?shù)臄?shù)字信號也就能到達連接在集線器上的每個計算機了。當數(shù)字信號到達一臺計算機的網(wǎng)絡接口時,正常狀態(tài)下網(wǎng)絡接口對讀入數(shù)據(jù)幀進行檢查,如數(shù)據(jù)幀中攜帶的物理地址是自己的或者物理地址是廣播地址,那么就會將數(shù)據(jù)幀交給IP協(xié)議層軟件。對于每個到達網(wǎng)絡接口的數(shù)據(jù)幀都要進行這個過程的。但是當計算機工作在偵聽模式下,所有的數(shù)據(jù)幀都將被交給上層協(xié)議軟件處理。
當連接在同一條電纜或集線器上的計算機被邏輯地分為幾個子網(wǎng)的時候,那么要是有一臺計算機處于偵聽模式,它可以接收到發(fā)向與自己不在同一個子網(wǎng)(使用了不同的掩碼、IP地址和網(wǎng)關)的計算機的數(shù)據(jù)包,在同一個物理信道上傳輸?shù)乃行畔⒍伎梢员唤邮盏健?
在UNIX系統(tǒng)上,當擁有超級權(quán)限的用戶要想使自己所控制的計算機進入偵聽模式,只需要向Interface(網(wǎng)絡接口)發(fā)送I/O控制命令,就可以使計算機設置成偵聽模式了。而在Windows 9x的系統(tǒng)中則不論用戶是否有權(quán)限都將可以通過直接運行偵聽工具就可以實現(xiàn)。
在端口處于偵聽時,常常要保存大量的信息(也包含很多的垃圾信息),并將對收集的信息進行大量的整理,這樣就會使正在偵聽的計算機對其他用戶的請求響應變的很慢。同時偵聽程序在運行的時候需要消耗大量的處理器時間,如果在這時就詳細的分析包中的內(nèi)容,許多包就會來不及接收而被漏走。所以偵聽程序很多時候就會將偵聽得到的包存放在文件中等待以后分析。分析偵聽到的數(shù)據(jù)包是很頭疼的事情,因為網(wǎng)絡中的數(shù)據(jù)包都非常之復雜。兩臺計算機之間連續(xù)發(fā)送和接收數(shù)據(jù)包,在偵聽到的結(jié)果中必然會加一些別的計算機交互的數(shù)據(jù)包。偵聽程序?qū)⑼籘CP協(xié)議會話的包整理到一起就相當不容易,如果還期望將用戶詳細信息整理出來就需要根據(jù)協(xié)議對包進行大量的分析。
現(xiàn)在網(wǎng)絡中所使用的協(xié)議都是較早前設計的,許多協(xié)議的實現(xiàn)都是基于一種非常友好的,通信的雙方充分信任的基礎。在通常的網(wǎng)絡環(huán)境之下,用戶的信息包括口令都是以明文的方式在網(wǎng)上傳輸?shù)?,因此進行端口偵聽從而獲得用戶信息并不是一件難點事情,只要掌握有初步的TCP/IP協(xié)議知識就可以輕松的偵聽到想要的信息的。
五、端口掃描原理
"端口掃描"通常指用同一信息對目標計算機的所有所需掃描的端口進行發(fā)送,然后根據(jù)返回端口狀態(tài)來分析目標計算機的端口是否打開、是否可用。"端口掃描"行為的一個重要特征是:在短時期內(nèi)有很多來自相同的信源地址傳向不同的目的地端口的包。
對于用端口掃描進行攻擊的人來說,攻擊者總是可以做到在獲得掃描結(jié)果的同時,使自己很難被發(fā)現(xiàn)或者說很難被逆向跟蹤。為了隱藏攻擊,攻擊者可以慢慢地進行掃描。除非目標系統(tǒng)通常閑著(這樣對一個沒有l(wèi)isten端口的數(shù)據(jù)包都會引起管理員的注意),有很大時間間隔的端口掃描是很難被識別的。隱藏源地址的方法是發(fā)送大量的欺騙性的端口掃描包(1000個),其中只有一個是從真正的源地址來的。這樣,即使全部包(1000)都被察覺,被記錄下來,也沒有人知道哪個是真正的信源地址。能發(fā)現(xiàn)的僅僅是"曾經(jīng)被掃描過"。也正因為這樣那些黑客們才樂此不彼地繼續(xù)大量使用這種端口掃描技術(shù)來達到他們獲取目標計算機信息、并進行惡意攻擊。
通常進行端口掃描的工具目前主要采用的是端口掃描軟件,也通稱之為"端口掃描器",端口掃描可以為提供三個用途:
(1)識別目標系統(tǒng)上正在運行的TCP協(xié)議和UDP協(xié)議服務。
(2)識別目標系統(tǒng)的操作系統(tǒng)類型(Windows 9x, Windows NT,或UNIX,等)。
(3)識別某個應用程序或某個特定服務的版本號。
端口掃描器是一種自動檢測遠程或本地計算機安全性弱點的程序,通過使用掃描器你可不留痕跡的發(fā)現(xiàn)遠程服務器的各種TCP協(xié)議端口的分配及提供的服務,還可以得知它們所使用的軟件版本!這就能讓間接的了解到遠程計算機所存在的安全問題。
端口掃描器通過選用遠程TCP/IP協(xié)議不同的端口的服務,記錄目標計算機端口給予的回答的方法,可以搜集到很多關于目標計算機的各種有用信息(比如:是否有端口在偵聽?是否允許匿名登陸?是否有可寫的FTP目錄,是否能用TELNET等。
端口掃描器并不是一個直接攻擊網(wǎng)絡漏洞的程序,它僅僅能幫助發(fā)現(xiàn)目標機的某些內(nèi)在的弱點。一個好的掃描器還能對它得到的數(shù)據(jù)進行分析,幫助查找目標計算機的漏洞。但它不會提供一個系統(tǒng)的詳細步驟。
端口掃描器在掃描過程中主要具有以下三個方面的能力:
(1) 發(fā)現(xiàn)一個計算機或網(wǎng)絡的能力;
(2) 一旦發(fā)現(xiàn)一臺計算機,就有發(fā)現(xiàn)目標計算機正在運行什么服務的能力;
(3) 通過測試目標計算機上的這些服務,發(fā)現(xiàn)存在的漏洞的能力。
編寫掃描器程序必須要很多TCP/IP協(xié)議程序編寫和C,Perl和或SHELL語言的知識。需要一些Socket編程的背景,一種在開發(fā)客戶/服務應用程序的方法。
以上就是關于端口的概念和分類相關問題的回答。希望能幫到你,如有更多相關問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
站長工具權(quán)重多久更新一次(站長權(quán)重是什么意思)