電腦的通信端口可分為 3 大類:
1 ) 公認端口( Well Known Ports ):從 0 到 1023 ,它們緊密綁定于一些服務。通常這些端口的通訊明確表明了某種服務的協議。例如: 80 端口實際上總是 HTTP 通訊。
2 ) 注冊端口( Registered Ports ):從 1024 到 49151 。它們松散地綁定于一些服務。也就是說有許多服務綁定于這些端口,這些端口同樣用于許多其它目的。例如:許多系統處理動態端口從 1024 左右開始。
3 ) 動態和 / 或私有端口( Dynamic and/or Private Ports ):從 49152 到 65535 。理論上,不應為服務分配這些端口。實際上,機器通常從 1024 起分配動態端口。但也有例外: SUN 的 RPC 端口從 32768 開始。
本節講述通常 TCP/UDP 端口掃描在防火墻記錄中的信息。記住:并不存在所謂 ICMP 端口。如果你對解讀 ICMP 數據感興趣,請參看本文的其它部分。 0 通常用于分析操作系統。這一方法能夠工作是因為在一些系統中“ 0 ”是無效端口,當你試圖使用一種通常的閉合端口連接它時將產生不同的結果。一種典型的掃描:使用 IP 地址為 0.0.0.0 ,設置 ACK 位并在以太網層廣播。 1 tcpmux 這顯示有人在尋找 SGIIrix 機器。 Irix 是實現 tcpmux 的主要提供者,缺省情況下 tcpmux 在這種系統中被打開。 Iris 機器在發布時含有幾個缺省的無密碼的帳戶,如 lp,guest, uucp, nuucp, demos, tutor, diag, EZsetup, OutOfBox, 和 4Dgifts 。許多管理員安裝后忘記刪除這些帳戶。因此 Hacker 們在 Internet 上搜索 tcpmux 并利用這些帳戶。
7Echo 你能看到許多人們搜索 Fraggle 放大器時,發送到 x.x.x.0 和 x.x.x.255 的信息。常見的一種 DoS 攻擊是 echo 循環( echo-loop ),攻擊者偽造從一個機器發送到另一個 UDP 數據包,而兩個機器分別以它們最快的方式回應這些數據包。(參見 Chargen ) 另一種東西是由 DoubleClick 在詞端口建立的 TCP 連接。有一種產品叫做 Resonate Global Dispatch ”,它與 DNS 的這一端口連接以確定最近的路由。 Harvest/squid cache 將從 3130 端口發送 UDPecho :“如果將 cache 的 source_ping on 選項打開,它將對原始主機的 UDP echo 端口回應一個 HIT reply 。”這將會產生許多這類數據包。
11 sysstat 這是一種 UNIX 服務,它會列出機器上所有正在運行的進程以及是什么啟動了這些進程。這為入侵者提供了許多信息而威脅機器的安全,如暴露已知某些弱點或帳戶的程序。這與 UNIX 系統中“ ps ”命令的結果相似再說一遍: ICMP 沒有端口, ICMP port 11 通常是 ICMPtype=1119 chargen 這是一種僅僅發送字符的服務。 UDP 版本將會在收到 UDP 包后回應含有垃圾字符的包。 TCP 連接時,會發送含有垃圾字符的數據流知道連接關閉。 Hacker 利用 IP 欺騙可以發動 DoS 攻擊偽造兩個 chargen 服務器之間的 UDP 由于服務器企圖回應兩個服務器之間的無限的往返數據通訊一個 chargen 和 echo 將導致服務器過載。同樣 fraggle DoS 攻擊向目標地址的這個端口廣播一個帶有偽造受害者 IP 的數據包,受害者為了回應這些數據而過載。
21 ftp 最常見的攻擊者用于尋找打開“ anonymous ”的 ftp 服務器的方法。這些服務器帶有可讀寫的目錄。 Hackers 或 tackers 利用這些服務器作為傳送 warez ( 私有程序 ) 和 pr0n( 故意拼錯詞而避免被搜索引擎分類 ) 的節點。
22 sshPcAnywhere 建立 TCP 和這一端口的連接可能是為了尋找 ssh 。這一服務有許多弱點。如果配置成特定的模式,許多使用 RSAREF 庫的版本有不少漏洞。(建議在其它端口運行 ssh )還應該注意的是 ssh 工具包帶有一個稱為 ake-ssh-known-hosts 的程序。它會掃描整個域的 ssh 主機。你有時會被使用這一程序的人無意中掃描到。 UDP (而不是 TCP )與另一端的 5632 端口相連意味著存在搜索 pcAnywhere 的掃描。 5632 (十六進制的 0x1600 )位交換后是 0x0016 (使進制的 22 )。
23 Telnet 入侵者在搜索遠程登陸 UNIX 的服務。大多數情況下入侵者掃描這一端口是為了找到機器運行的操作系統。此外使用其它技術,入侵者會找到密碼。
25 smtp 攻擊者( spammer )尋找 SMTP 服務器是為了傳遞他們的 spam 。入侵者的帳戶總被關閉,他們需要撥號連接到高帶寬的 e-mail 服務器上,將簡單的信息傳遞到不同的地址。 SMTP 服務器(尤其是 sendmail )是進入系統的最常用方法之一,因為它們必須完整的暴露于 Internet 且郵件的路由是復雜的(暴露 + 復雜 = 弱點)。
53 DNSHacker 或 crackers 可能是試圖進行區域傳遞( TCP ),欺騙 DNS ( UDP )或隱藏其它通訊。因此防火墻常常過濾或記錄 53 端口。需要注意的是你常會看到 53 端口做為 UDP 源端口。不穩定的防火墻通常允許這種通訊并假設這是對 DNS 查詢的回復。 Hacker 常使用這種方法穿透防火墻。
67 和 68 Bootp 和 DHCPUDP 上的 Bootp/DHCP :通過 DSL 和 cable-modem 的防火墻常會看見大量發送到廣播地址 255.255.255.255 的數據。這些機器在向 DHCP 服務器請求一個地址分配。 Hacker 常進入它們分配一個地址把自己作為局部路由器而發起大量的“中間人”( man-in-middle )攻擊。客戶端向 68 端口( bootps )廣播請求配置,服務器向 67 端口( bootpc )廣播回應請求。這種回應使用廣播是因為客戶端還不知道可以發送的 IP 地址。 69 TFTP(UDP) 許多服務器與 bootp 一起提供這項服務,便于從系統下載啟動代碼。但是它們常常錯誤配置而從系統提供任何文件,如密碼文件。它們也可用于向系統寫入文件
79 finger Hacker 用于獲得用戶信息,查詢操作系統,探測已知的緩沖區溢出錯誤,回應從自己機器到其它機器 finger 掃描。
98 linuxconf 這個程序提供 linuxboxen 的簡單管理。通過整合的 HTTP 服務器在 98 端口提供基于 Web 界面的服務。它已發現有許多安全問題。一些版本 setuidroot ,信任局域網,在 /tmp 下建立 Internet 可訪問的文件, LANG 環境變量有緩沖區溢出。此外因為它包含整合的服務器,許多典型的 HTTP 漏洞可能存在(緩沖區溢出,歷遍目錄等) 109 POP2 并不象 POP3 那樣有名,但許多服務器同時提供兩種服務(向后兼容)。在同一個服務器上 POP3 的漏洞在 POP2 中同樣存在。
110 POP3 用于客戶端訪問服務器端的郵件服務。 POP3 服務有許多公認的弱點。關于用戶名和密碼交換緩沖區溢出的弱點至少有 20 個(這意味著 Hacker 可以在真正登陸前進入系統)。成功登陸后還有其它緩沖區溢出錯誤。
111 sunrpc portmap rpcbind Sun RPCPortMapper/RPCBIND 。訪問 portmapper 是掃描系統查看允許哪些 RPC 服務的最早的一步。常見 RPC 服務有: pc.mountd, NFS, rpc.statd, rpc.csmd, rpc.ttybd, amd 等。入侵者發現了允許的 RPC 服務將轉向提供服務的特定端口測試漏洞。記住一定要記錄線路中的daemon, IDS, 或 sniffer ,你可以發現入侵者正使用什么程序訪問以便發現到底發生了什么。
113 Ident auth . 這是一個許多機器上運行的協議,用于鑒別 TCP 連接的用戶。使用標準的這種服務可以獲得許多機器的信息(會被 Hacker 利用)。但是它可作為許多服務的記錄器,尤其是 FTP, POP, IMAP, SMTP 和 IRC 等服務。通常如果有許多客戶通過防火墻訪問這些服務,你將會看到許多這個端口的連接請求。記住,如果你阻斷這個端口客戶端會感覺到在防火墻另一邊與 e-mail 服務器的緩慢連接。許多防火墻支持在 TCP 連接的阻斷過程中發回 T ,著將回停止這一 緩慢的連接。
119 NNTP news 新聞組傳輸協議,承載 USENET 通訊。當你鏈接到諸如news.security.firewalls/. 的地址時通常使用這個端口。這個端口的連接企圖通常是人們在尋找 USENET 服務器。多數 ISP 限制只有他們的客戶才能訪問他們的新聞組服務器。打開新聞組服務器將允許發 / 讀任何人的帖子,訪問被限制的新聞組服務器,匿名發帖或發送 spam 。
135 oc-serv MS RPC end-point mapper Microsoft 在這個端口運行 DCE RPC end- point mapper 為它的 DCOM 服務。這與 UNIX 111 端口的功能很相似。使用 DCOM 和 / 或 RPC 的服務利用機器上的 end-point mapper 注冊它們的位置。遠 端客戶連接到機器時,它們查詢 end-point mapper 找到服務的位置。同樣 Hacker 掃描機器的這個端口是為了找到諸如:這個機器上運行 Exchange Server 嗎?是什么版本? 這個端口除了被用來查詢服務(如使用 epdump )還可以被用于直接攻擊。有一些 DoS 攻 擊直接針對這個端口。
137 NetBIOS name service nbtstat (UDP) 這是防火墻管理員最常見的信息,請仔細閱讀文章后面的 NetBIOS 一節 139 NetBIOS File and Print Sharing 通過這個端口進入的連接試圖獲得 NetBIOS/SMB 服務。這個協議被用于 Windows “文件和打印機共享”和 SAMBA 。在 Internet 上共享自己的硬盤是可能是最常見的問題。大量針對這一端口始于 1999 ,后來逐漸變少。 2000 年又有回升。一些 VBS ( IE5 VisualBasicScripting )開始將它們自己拷貝到這個端口,試圖在這個端口繁殖。
143 IMAP 和上面 POP3 的安全問題一樣,許多 IMAP 服務器有緩沖區溢出漏洞運行登陸過程中進入。記住:一種 Linux 蠕蟲( admw0rm )會通過這個端口繁殖,因此許多這個端口的掃描來自不知情的已被感染的用戶。當 RadHat 在他們的 Linux 發布版本中默認允許 IMAP 后,這些漏洞變得流行起來。 Morris 蠕蟲以后這還是第一次廣泛傳播的蠕蟲。這一端口還被用于 IMAP2 ,但并不流行。已有一些報道發現有些 0 到 143 端口的攻擊源于腳本。
161 SNMP(UDP) 入侵者常探測的端口。 SNMP 允許遠程管理設備。所有配置和運行信息都儲存在數據庫中,通過 SNMP 客獲得這些信息。許多管理員錯誤配置將它們暴露于 Internet 。 Crackers 將試圖使用缺省的密碼“ public ”“ private ”訪問系統。他們可能會試驗所有可能的組合。 SNMP 包可能會被錯誤的指向你的網絡。 Windows 機器常會因為錯誤配置將 HP JetDirect rmote management 軟件使用 SNMP 。 HP OBJECT IDENTIFIER 將收到 SNMP 包。新版的 Win98 使用 SNMP 解析域名,你會看見這種包在子網內廣播( cable modem, DSL )查詢 sysName 和其它信息。
162 SNMP trap 可能是由于錯誤配置
177 xdmcp 許多 Hacker 通過它訪問 X-Windows 控制臺,它同時需要打開 6000 端口。
513 rwho 可能是從使用 cable modem 或 DSL 登陸到的子網中的 UNIX 機器發出的廣播。這些人為 Hacker 進入他們的系統提供了很有趣的信息
553 CORBA IIOP (UDP) 如果你使用 cable modem 或 DSL VLAN ,你將會看到這個端口的廣播。 CORBA 是一種面向對象的 RPC ( remote procedure call )系統。 Hacker 會利用這些信息進入系統。 600 Pcserver backdoor 請查看 1524 端口一些玩 script 的孩子認為他們通過修改 ingreslock 和 pcserver 文件已經完全攻破了系統 -- Alan J. Rosenthal.
635 mountd Linux 的 mountd Bug 。這是人們掃描的一個流行的 Bug 。大多數對這個端口的掃描是基于 UDP 的,但基于 TCP 的 mountd 有所增加( mountd 同時運行于兩個端口)。記住, mountd 可運行于任何端口(到底在哪個端口,需要在端口 111 做 portmap 查詢),只是 Linux 默認為 635 端口,就象 NFS 通常運行于 2049 端口 1024 許多人問這個端口是干什么的。它是動態端口的開始。許多程序并不在乎用哪個端口連接網絡,它們請求操作系統為它們分配“下一個閑置端口”。基于這一點分配從端口 1024 開始。這意味著第一個向系統請求分配動態端口的程序將被分配端口 1024 。為了驗證這一點,你可以重啟機器,打開 Telnet ,再打開一個窗口運行“ natstat -a ”,你將會看到 Telnet 被分配 1024 端口。請求的程序越多,動態端口也越多。操作系統分配的端口將逐漸變大。再來一遍,當你瀏覽 Web 頁時用“ netstat ”查看,每個 Web 頁需要一個新端口。 ?ersion 0.4.1, June 20, 2000
1025 參見 1024
1026 參見 1024
1080 SOCKS 這一協議以管道方式穿過防火墻,允許防火墻后面的許多人通過一個 IP 地址訪問 Internet 。理論上它應該只 允許內部的通信向外達到 Internet 。但是由于錯誤的配置,它會允許 Hacker/Cracker 的位于防火墻外部的攻 擊穿過防火墻。或者簡單地回應位于 Internet 上的計算機,從而掩飾他們對你的直接攻擊。 WinGate 是一種常見的 Windows 個人防火墻,常會發生上述的錯誤配置。在加入 IRC 聊天室時常會看到這種情況。
1114 SQL 系統本身很少掃描這個端口,但常常是 sscan 腳本的一部分。
1243 Sub-7 木馬( TCP )參見 Subseven 部分。
1524 ingreslock 后門 許多攻擊腳本將安裝一個后門 Sh*ll 于這個端口(尤其是那些針對 Sun 系統中 Sendmail 和 RPC 服務漏洞的腳本,如 statd,ttdbserver 和 cmsd )。如果你剛剛安裝了你的防火墻就看到在這個端口上的連接企圖,很可能是上述原因。你可以試試 Telnet 到你的機器上的這個端口,看看它是否會給你一個 Sh*ll 。連接到 600/pcserver 也存在這個問題。
2049 NFS NFS 程序常運行于這個端口。通常需要訪問 portmapper 查詢這個服務運行于哪個端口,但是大部分情況是安裝后 NFS 杏謖飧齠絲冢 ?acker/Cracker 因而可以閉開 portmapper 直接測試這個端口。
3128 squid 這是 Squid HTTP 代理服務器的默認端口。攻擊者掃描這個端口是為了搜尋一個代理服務器而匿名訪問 Internet 。你也會看到搜索其它代理服務器的端口:
000/8001/8080/8888 。掃描這一端口的另一原因是:用戶正在進入聊天室。其它用戶(或服務器本身)也會檢驗這個端口以確定用戶的機器是否支持代理。
5632 pcAnywere 你會看到很多這個端口的掃描,這依賴于你所在的位置。當用戶打開 pcAnywere 時,它會自動掃描局域網 C 類網以尋找可能得代理(譯者:指 agent 而不是 proxy )。 Hacker/cracker 也會尋找開放這種服務的機器,所以應該查看這種掃描的源地址。一些搜尋 pcAnywere 的掃描常包含端口 22 的 UDP 數據包。參見撥號掃描。
6776 Sub-7 artifact 這個端口是從 Sub-7 主端口分離出來的用于傳送數據的端口。例如當控制者通過電話線控制另一臺機器,而被控機器掛斷時你將會看到這種情況。因此當另一人以此 IP 撥入時,他們將會看到持續的,在這個端口的連接企圖。(譯者:即看到防火墻報告這一端口的連接企圖時,并不表示你已被 Sub-7 控制。) 6970 RealAudio
RealAudio 客戶將從服務器的 6970-7170 的 UDP 端口接收音頻數據流。這是由 TCP7070 端口外向控制連接設置 13223 PowWow PowWow 是 Tribal Voice 的聊天程序。它允許用戶在此端口打開私人聊天的接。這一程序對于建立連接非常具有“進攻性”。它會“駐扎”在這一 TCP 端口等待回應。這造成類似心跳間隔的連接企圖。如果你是一個撥號用戶,從另一個聊天者手中“繼承”了 IP 地址這種情況就會發生:好象很多不同的人在測試這一端口。這一協議使用“ OPNG ”作為其連接企圖的前四個字節。
17027 Conducent 這是一個外向連接。這是由于公司內部有人安裝了帶有 Conducent "adbot" 的共享軟件。
Conducent "adbot" 是為共享軟件顯示廣告服務的。使用這種服務的一種流行的軟件是 Pkware 。有人試驗:阻斷這一外向連接不會有任何問題,但是封掉 IP 地址本身將會導致 adbots 持續在每秒內試圖連接多次而導致連接過載: 機器會不斷試圖解析 DNS 名─ ads.conducent.com ,即 IP 地址 216.33.210.40 ; 216.33.199.77 ; 216.33.199.80 ; 216.33.199.81 ; 216.33.210.41 。
27374 Sub-7 木馬 (TCP) 參見 Subseven 部分。
30100 NetSphere 木馬 (TCP) 通常這一端口的掃描是為了尋找中了 NetSphere 木馬。
31337 Back Orifice “ eliteHacker 中 31337 讀做“ elite ” /ei'li:t/ (譯者:法語,譯為中堅力量,精華。即 3=E, 1=L, 7=T )。因此許多后門程序運行于這一端口。其中最有名的是 Back Orifice 。曾經一段時間內這是 Internet 上最常見的掃描。現在它的流行越來越少,其它的木馬程序越來越流行。
31789 Hack-a-tack 這一端口的 UDP 通訊通常是由于 "Hack-a-tack" 遠程訪問木馬( RAT,Remote Access Trojan )。這種木馬包含內置的 31790 端口掃描器,因此任何 31789 端口到 317890 端口的連接意味著已經有這種入侵。( 31789 端口是控制連接, 317890 端口是文件傳輸連接)
32770~32900 RPC 服務 Sun Solaris 的 RPC 服務在這一范圍內。詳細的說:早期版本的 Solaris ( 2.5.1 之前)將 portmapper 置于這一范圍內,即使低端口被防火墻封閉仍然允許 Hacker/cracker 訪問這一端口。掃描這一范圍內的端口不是為了尋找 portmapper ,就是為了尋找可被攻擊的已知的 RPC 服務。
33434~33600 traceroute 如果你看到這一端口范圍內的 UDP 數據包(且只在此范圍之內)則可能是由于 traceroute 。參見 traceroute 分。
41508 Inoculan 早期版本的 Inoculan 會在子網內產生大量的 UDP 通訊用于識別彼此。 機器的連接。常看見緊接著 1024 的端口,它們是系統分配給那些并不在乎使用哪個端口連接的應用程序的“動態端口”。 Server Client 服務描述
1-5/tcp 動態 FTP 1-5 端口意味著 sscan 腳本
20/tcp 動態 FTP FTP 服務器傳送文件的端口
53 動態 FTP DNS 從這個端口發送 UDP 回應。你也可能看見源 / 目標端口的 TCP 連接。
123 動態 S/NTP 簡單網絡時間協議( S/NTP )服務器運行的端口。它們也會發送到這個端口的廣播。
27910~27961/udp 動態 Quake Quake 或 Quake 引擎驅動的游戲在這一端口運行其服務器。因此來自這一端口范圍的 UDP 包或發送至這一端口范圍的 UDP 包通常是游戲。
61000 以上 動態 FTP 61000 以上的端口可能來自 Linux NAT 服務器( IP asquerade )
|