端口分類調研

目的主機收到數據包後,經過各層協議棧最後到達應用程序的過程:

(1)以太網驅動程序首先根據以太網首部中的“上層協議”字段確定該數據幀的有效載荷(payload,指除去協議首部之外實際傳輸的數據)是IP、ARP還是RARP協議的數據報;

(2)交給相應的協議處理:假如是IP數據報,IP協議再根據IP首部中的“上層協議”字段確定該數據報的有效載荷是TCP、UDP、ICMP還是IGMP;

(3)再次交給相應的協議處理:假如是TCP段或UDP段,TCP或UDP協議再根據TCP首部或UDP首部的“端口號”字段確定應該將應用層數據交給最終正確的用戶進程。

以上提到的端口號在網絡中定義如下:

IP 地址是標識網絡中不同主機的地址,而端口號就是同一臺主機上標識不同進程的地址,IP 地址和端口號合起來標識網絡中唯一的進程。


背景如下:

網絡中傳輸層具有複用和分用功能,應用層所有的應用進程都可以通過傳輸層送到IP層(複用),傳輸層從IP層收到數據報必須交付給指明的應用進程(分用),所以要想找到指明的應用進程則必須賦予其一個非常明確的標誌。

(1)我們知道在單個計算機中操作系統給每個進程都分配了一個進程標識符,但其運用這種方法在網絡中給進程分配標誌是不行的,因爲網絡龐大而複雜,計算機多,操作系統種類多,不同操作系統則又使用不同進程標識符,而爲了計算機之間相互通信必須用統一的方法對TCP/IP體系的應用進程進行標誌;

(2)又由於進程創建與撤銷都爲動態的,通信一方無法識別對方機器進程,我們需要利用目的主機提供的功能來識別終點,不需要知道實現這個功能的進程是哪一個。

解決這些問題辦法則在傳輸層使用協議端口號簡稱端口(port)。(即將傳送的報文交到目的主機某一個合適端口就行,剩下的工作就由TCP完成交由目的進程)


端口分類:

(1)硬件端口:其是不同硬件設備進行交互的接口,如:集線器、路由器、交換機、ADSL Modem等用於連接其他設備的端口

(2)軟件端口:其是應用層的各種協議進程與傳輸實體進行交互層間交互的一種地址。

即以上說的協議棧層間抽象的協議端口爲軟件端口。


端口號:由於物理端口和軟件端口數量較多,爲了對端口進行區分,將每個端口進行了編號,即就是端口號。

在傳輸層有兩個主要協議:

(1)UDP(用戶數據報協議:不提供可靠交付);

(2)TCP(傳輸控制協議:提供可靠的、面向連接的運輸服務).

而在它們報文的首部格式中都有源端口與目的端口兩個重要字段,當傳輸層收到IP層交上來的報文時就可根據首部的目的端口號把數據交付給應用層的目的應用進程。所以兩個計算機中進程相互通信不僅需知道對方IP地址還需知道對方的端口號。

端口號只有本地意義,它只是爲了標誌本計算機應用層各個進程與傳輸層交互時的層間接口,在因特網不同計算機相同端口號是無關聯的,而TCP/IP傳輸層用16位端口號標誌一個端口,它可允許有65535個不同端口號。


Linux下面一共有65535個端口,其中1–1023是系統保留的,1024–65535是供用戶使用的。0到1024是衆所周知的端口(知名端口,常用於系統服務等,例如http服務的端口號是80),個人寫的應用程序,儘量不要使用0到1024之間的端口號。

一、因特網計算機通信採用客戶-服務器方式,其傳輸層的端口號按照使用可分爲以下兩大類:

1.服務器端使用的端口號分類:

   (1)熟知端口號(系統端口號),數值爲0~1023,IANA將這些端口號分給TCP/IP最重要的一些應用程序,讓所有用戶都知道,當一個新的應用程序出現後,IANA必須爲它指派一個熟知端口,否則因特網其它應用進程無法和它通信.

  (2)登記端口號,數值爲1024~49151,其爲沒有熟知端口號的應用程序使用的,使用這類端口號必須按照IANA規定手續登記,以防止重複;

2.客戶端使用的端口號:數值爲49152~65535,因爲這類端口號僅在客戶進程運行時動態選擇,即又稱短暫端口號,其留給客戶進程選擇暫時使用,當服務器收到客戶進程報文時,知道了客戶進程使用的端口號,因而可以把數據發送給客戶進程,通信結束後,剛纔使用過的客戶端口號不再存在,這個端口號就可以供其它客戶進程使用。


二、按協議類型劃分可分爲TCP端口、UDP端口、IP端口、ICMP(Internet控制消息協議)。

TCP端口:即傳輸控制協議端口,需要在客戶端和服務器之間建立連接,這樣可以提供可靠的數據傳輸。常見的包括FTP的21端口,Telnet的23端口,SMTP的25端口,HTTP的80端口。

UDP端口:即用戶數據報協議端口,無需在客戶端和服務器端建立連接,安全性得不到保障。常見的DNS的53端口,SNMP(簡單網絡管理協議)的161端口,QQ使用的8000和4000端口。

保留端口:UNIX有保留端口號的概念,只有超級用戶特權的進程才允許給它自己分配一個保留端口號。這些端口號介於1~1023之間,一些應用程序將它作爲客戶與服務器認證的一部分。


端口號舉例如下:網絡常用端口介紹:

21/tcp FTP 文件傳輸協議 
22/tcp SSH 安全登錄、文件傳送(SCP)和端口重定向 
23/tcp Telnet 不安全的文本傳送 
25/tcp SMTP Simple Mail Transfer Protocol (E-mail) 
69/udp TFTP Trivial File Transfer Protocol 
79/tcp finger Finger 
80/tcp HTTP 超文本傳送協議 (WWW) 
88/tcp Kerberos Authenticating agent 
110/tcp POP3 Post Office Protocol (E-mail) 
113/tcp ident old identification server system 
119/tcp NNTP used for usenet newsgroups 
220/tcp IMAP3 
443/tcp HTTPS used for securely transferring web pages

端口:0 
服務:Reserved 
說明:通常用於分析操作系統。這一方法能夠工作是因爲在一些系統中“0”是無效端口,當你試圖使用通常的閉合端口連接它時將產生不同的結果。一種典型的掃描,使用IP地址爲0.0.0.0,設置ACK位並在以太網層廣播。

端口:1 
服務:tcpmux 
說明:這顯示有人在尋找SGI Irix機器。Irix是實現tcpmux的主要提供者,默認情況下tcpmux在這種系統中被打開。Irix機器在發佈是含有幾個默認的無密碼的帳戶,如:IP、GUEST UUCP、NUUCP、DEMOS 、TUTOR、DIAG、OUTOFBOX等。許多管理員在安裝後忘記刪除這些帳戶。因此HACKER在INTERNET上搜索tcpmux並利用這些帳戶。

端口:7 
服務:Echo 
說明:能看到許多人搜索Fraggle放大器時,發送到X.X.X.0和X.X.X.255的信息。

端口:19 
服務:Character Generator 
說明:這是一種僅僅發送字符的服務。UDP版本將會在收到UDP包後迴應含有垃圾字符的包。TCP連接時會發送含有垃圾字符的數據流直到連接關閉。HACKER利用IP欺騙可以發動DoS攻擊。僞造兩個chargen服務器之間的UDP包。同樣Fraggle DoS攻擊向目標地址的這個端口廣播一個帶有僞造受害者IP的數據包,受害者爲了迴應這些數據而過載。

端口:21 
服務:FTP 
說明:FTP服務器所開放的端口,用於上傳、下載。最常見的攻擊者用於尋找打開anonymous的FTP服務器的方法。這些服務器帶有可讀寫的目錄。木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的端口。

端口:22 
服務:Ssh 
說明:PcAnywhere建立的TCP和這一端口的連接可能是爲了尋找ssh。這一服務有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞存在。

端口:23 
服務:Telnet 
說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務。大多數情況下掃描這一端口是爲了找到機器運行的操作系統。還有使用其他技術,入侵者也會找到密碼。木馬Tiny Telnet Server就開放這個端口。

端口:25 
服務:SMTP 
說明:SMTP服務器所開放的端口,用於發送郵件。入侵者尋找SMTP服務器是爲了傳遞他們的SPAM。入侵者的帳戶被關閉,他們需要連接到高帶寬的E-MAIL服務器上,將簡單的信息傳遞到不同的地址。木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個端口。

端口:31 
服務:MSG Authentication 
說明:木馬Master Paradise、Hackers Paradise開放此端口。

端口:42 
服務:WINS Replication 
說明:WINS複製

端口:53 
服務:Domain Name Server(DNS) 
說明:DNS服務器所開放的端口,入侵者可能是試圖進行區域傳遞(TCP),欺騙DNS(UDP)或隱藏其他的通信。因此防火牆常常過濾或記錄此端口。

端口:67 
服務:Bootstrap Protocol Server 
說明:通過DSL和Cable modem的防火牆常會看見大量發送到廣播地址255.255.255.255的數據。這些機器在向DHCP服務器請求一個地址。HACKER常進入它們,分配一個地址把自己作爲局部路由器而發起大量中間人(man-in-middle)攻擊。客戶端向68端口廣播請求配置,服務器向67端口廣播迴應請求。這種迴應使用廣播是因爲客戶端還不知道可以發送的IP地址。

端口:69 
服務:Trival File Transfer 
說明:許多服務器與bootp一起提供這項服務,便於從系統下載啓動代碼。但是它們常常由於錯誤配置而使入侵者能從系統中竊取任何 文件。它們也可用於系統寫入文件。

端口:79 
服務:Finger Server 
說明:入侵者用於獲得用戶信息,查詢操作系統,探測已知的緩衝區溢出錯誤,迴應從自己機器到其他機器Finger掃描。

端口:80 
服務:HTTP 
說明:用於網頁瀏覽。木馬Executor開放此端口。

端口:99 
服務:gram Relay 
說明:後門程序ncx99開放此端口。

端口:102 
服務:Message transfer agent(MTA)-X.400 over TCP/IP 
說明:消息傳輸代理。

端口:109 
服務:Post Office Protocol -Version3 
說明:POP3服務器開放此端口,用於接收郵件,客戶端訪問服務器端的郵件服務。POP3服務有許多公認的弱點。關於用戶名和密碼交 換緩衝區溢出的弱點至少有20個,這意味着入侵者可以在真正登陸前進入系統。成功登陸後還有其他緩衝區溢出錯誤。

端口:110 
服務:SUN公司的RPC服務所有端口 
說明:常見RPC服務有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等

端口:113 
服務:Authentication Service 
說明:這是一個許多計算機上運行的協議,用於鑑別TCP連接的用戶。使用標準的這種服務可以獲得許多計算機的信息。但是它可作爲許多服務的記錄器,尤其是FTP、POP、IMAP、SMTP和IRC等服務。通常如果有許多客戶通過防火牆訪問這些服務,將會看到許多這個端口的連接請求。記住,如果阻斷這個端口客戶端會感覺到在防火牆另一邊與E-MAIL服務器的緩慢連接。許多防火牆支持TCP連接的阻斷過程中發回RST。這將會停止緩慢的連接。

端口:119 
服務:Network News Transfer Protocol 
說明:NEWS新聞組傳輸協議,承載USENET通信。這個端口的連接通常是人們在尋找USENET服務器。多數ISP限制,只有他們的客戶才能訪問他們的新聞組服務器。打開新聞組服務器將允許發/讀任何人的帖子,訪問被限制的新聞組服務器,匿名發帖或發送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端口,當通過網上鄰居傳輸文件時用這個端口。而139端口:通過這個端口進入的連接試圖獲得NetBIOS/SMB服務。這個協議被用於windows文件和打印機共享和SAMBA。還有WINS Regisrtation也用它。

端口:143 
服務:Interim Mail Access Protocol v2 
說明:和POP3的安全問題一樣,許多IMAP服務器存在有緩衝區溢出漏洞。記住:一種LINUX蠕蟲(admv0rm)會通過這個端口繁殖,因此許多這個端口的掃描來自不知情的已經被感染的用戶。當REDHAT在他們的LINUX發佈版本中默認允許IMAP後,這些漏洞變的很流行。這一端口還被用於IMAP2,但並不流行。

端口:161 
服務:SNMP 
說明:SNMP允許遠程管理設備。所有配置和運行信息的儲存在數據庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統。他們可能會試驗所有可能的組合。SNMP包可能會被錯誤的指向用戶的網絡。

端口:177 
服務:X Display Manager Control Protocol 
說明:許多入侵者通過它訪問X-windows操作檯,它同時需要打開6000端口。

端口:389 
服務:LDAP、ILS 
說明:輕型目錄訪問協議和NetMeeting Internet Locator Server共用這一端口。

端口:443 
服務:Https 
說明:網頁瀏覽端口,能提供加密和通過安全端口傳輸的另一種HTTP。

端口:456 
服務:[NULL] 
說明:木馬HACKERS PARADISE開放此端口。

端口:513 
服務:Login,remote login 
說明:是從使用cable modem或DSL登陸到子網中的UNIX計算機發出的廣播。這些人爲入侵者進入他們的系統提供了信息。

端口:544 
服務:[NULL] 
說明:kerberos kshell

端口:548 
服務:Macintosh,File Services(AFP/IP) 
說明:Macintosh,文件服務。

端口:553 
服務:CORBA IIOP (UDP) 
說明:使用cable modem、DSL或VLAN將會看到這個端口的廣播。CORBA是一種面向對象的RPC系統。入侵者可以利用這些信息進入系統。

端口:555 
服務:DSF 
說明:木馬PhAse1.0、Stealth Spy、IniKiller開放此端口。

端口:568 
服務:Membership DPA 
說明:成員資格 DPA。

端口:569 
服務:Membership MSN 
說明:成員資格 MSN。

端口:635 
服務:mountd 
說明:Linux的mountd Bug。這是掃描的一個流行BUG。大多數對這個端口的掃描是基於UDP的,但是基於TCP的mountd有所增加(mountd同時運行於兩個端口)。記住mountd可運行於任何端口(到底是哪個端口,需要在端口111做portmap查詢),只是Linux默認端口是635,就像NFS通常運行於2049端口。

端口:636 
服務:LDAP 
說明:SSL(Secure Sockets layer)

端口:666 
服務:Doom Id Software 
說明:木馬Attack FTP、Satanz Backdoor開放此端口

端口:993 
服務:IMAP 
說明:SSL(Secure Sockets layer)

端口:1001、1011 
服務:[NULL] 
說明:木馬Silencer、WebEx開放1001端口。木馬Doly Trojan開放1011端口。

端口:1024 
服務:Reserved 
說明:它是動態端口的開始,許多程序並不在乎用哪個端口連接網絡,它們請求系統爲它們分配下一個閒置端口。基於這一點分配從端口1024開始。這就是說第一個向系統發出請求的會分配到1024端口。你可以重啓機器,打開Telnet,再打開一個窗口運行natstat -a 將會看到Telnet被分配1024端口。還有SQL session也用此端口和5000端口。

端口:1025、1033 
服務:1025:network blackjack 1033:[NULL] 
說明:木馬netspy開放這2個端口。

端口:1080 
服務:SOCKS 
說明:這一協議以通道方式穿過防火牆,允許防火牆後面的人通過一個IP地址訪問INTERNET。理論上它應該只允許內部的通信向外到達INTERNET。但是由於錯誤的配置,它會允許位於防火牆外部的攻擊穿過防火牆。WinGate常會發生這種錯誤,在加入IRC聊天室時常會看到這種情況。

端口:1170 
服務:[NULL] 
說明:木馬Streaming Audio Trojan、Psyber Stream Server、Voice開放此端口。

端口:1234、1243、6711、6776 
服務:[NULL] 
說明:木馬SubSeven2.0、Ultors Trojan開放1234、6776端口。木馬SubSeven1.0/1.9開放1243、6711、6776端口。

端口:1245 
服務:[NULL] 
說明:木馬Vodoo開放此端口。

端口:1433 
服務:SQL 
說明:Microsoft的SQL服務開放的端口。

端口:1492 
服務:stone-design-1 
說明:木馬FTP99CMP開放此端口。

端口:1500 
服務:RPC client fixed port session queries 
說明:RPC客戶固定端口會話查詢

端口:1503 
服務:NetMeeting T.120 
說明:NetMeeting T.120

端口:1524 
服務:ingress 
說明:許多攻擊腳本將安裝一個後門SHELL於這個端口,尤其是針對SUN系統中Sendmail和RPC服務漏洞的腳本。如果剛安裝了防火牆就看到在這個端口上的連接企圖,很可能是上述原因。可以試試Telnet到用戶的計算機上的這個端口,看看它是否會給你一個SHELL。連接到600/pcserver也存在這個問題。

端口:1600 
服務:issd 
說明:木馬Shivka-Burka開放此端口。

端口:1720 
服務:NetMeeting 
說明:NetMeeting H.233 call Setup。

端口:1731 
服務:NetMeeting Audio Call Control 
說明:NetMeeting音頻調用控制。

端口:1807 
服務:[NULL] 
說明:木馬SpySender開放此端口。

端口:1981 
服務:[NULL] 
說明:木馬ShockRave開放此端口。

端口:1999 
服務:cisco identification port 
說明:木馬BackDoor開放此端口。

端口:2000 
服務:[NULL] 
說明:木馬GirlFriend 1.3、Millenium 1.0開放此端口。

端口:2001 
服務:[NULL] 
說明:木馬Millenium 1.0、Trojan Cow開放此端口。

端口:2023 
服務:xinuexpansion 4 
說明:木馬Pass Ripper開放此端口。

端口:2049 
服務:NFS 
說明:NFS程序常運行於這個端口。通常需要訪問Portmapper查詢這個服務運行於哪個端口。

端口:2115 
服務:[NULL] 
說明:木馬Bugs開放此端口。

端口:2140、3150 
服務:[NULL] 
說明:木馬Deep Throat 1.0/3.0開放此端口。

端口:2500 
服務:RPC client using a fixed port session replication 
說明:應用固定端口會話複製的RPC客戶

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章