|
楼主 |
发表于 2008-8-30 16:37:30
|
显示全部楼层
176.端口概念
; M p) x9 H& t1 z" s1 x" f. s4 B* o 在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。我们这里将要介绍的就是逻辑意义上的端口。
6 }2 Q* Z# w- O( E' O" ?
0 H/ N+ F0 d& D- u
" b/ x" \- {8 u: `查看端口
$ s$ J0 s9 r% @% [% _- r, p$ a& p 在Windows 2000/XP/Server 2003中要查看端口,可以使用Netstat命令:. Q9 U! F0 I! e3 M2 b5 q; D. u
依次点击“开始→运行”,键入“cmd”并回车,打开命令提示符窗口。在命令提示符状态下键入“netstat -a -n”,按下回车键后就可以看到以数字形式显示的TCP和UDP连接的端口号及状态。
1 {; o+ g& A$ X9 d2 s( l# ]' {4 s% U8 T8 K4 k" w0 c( m
关闭/开启端口: [. U: p0 F' k# r
在介绍各种端口的作用前,这里先介绍一下在Windows中如何关闭/打开端口,因为默认的情况下,有很多不安全的或没有什么用的端口是开启的,比如Telnet服务的23端口、FTP服务的21端口、SMTP服务的25端口、RPC服务的135端口等等。为了保证系统的安全性,我们可以通过下面的方法来关闭/开启端口。 N J; M0 r! B8 m, ]( M0 ^
6 `' c% P; A2 v2 o- Y* s
关闭端口5 H+ o! [! W9 ^1 i
比如在Windows 2000/XP中关闭SMTP服务的25端口,可以这样做:首先打开“控制面板”,双击“管理工具”,再双击“服务”。接着在打开的服务窗口中找到并双击“Simple Mail Transfer Protocol (SMTP)”服务,单击“停止”按钮来停止该服务,然后在“启动类型”中选择“已禁用”,最后单击“确定”按钮即可。这样,关闭了SMTP服务就相当于关闭了对应的端口。& u s0 g. u3 \& u$ }
, l# G# f! R! D5 p开启端口
& E, V, S. ~$ g; n 如果要开启该端口只要先在“启动类型”选择“自动”,单击“确定”按钮,再打开该服务,在“服务状态”中单击“启动”按钮即可启用该端口,最后,单击“确定”按钮即可。
} J: [8 R9 ]1 N4 O. _提示:在Windows 98中没有“服务”选项,你可以使用防火墙的规则设置功能来关闭/开启端口。1 O: B1 g3 z% A5 M6 c+ ~! |
端口分类9 ?$ y0 W# Q8 R! V
( w6 ^4 V* a. _- z) ]# a
逻辑意义上的端口有多种分类标准,下面将介绍两种常见的分类:
) v9 F( z/ a) d. R& A9 F+ o( `7 r T$ b( g- r- ~' _. x
1. 按端口号分布划分
6 B' D! z6 M, t7 L+ }" a0 ^9 V+ j# J" k2 U# T: a) ^. @
(1)知名端口(Well-Known Ports)( \( R) p: E# ?/ z1 Y2 h
知名端口即众所周知的端口号,范围从0到1023,这些端口号一般固定分配给一些服务。比如21端口分配给FTP服务,25端口分配给SMTP(简单邮件传输协议)服务,80端口分配给HTTP服务,135端口分配给RPC(远程过程调用)服务等等。0 R. g0 k+ [, ?- k: J
( D" D8 q: m1 T# o2 L9 ~+ }(2)动态端口(Dynamic Ports)
: H. H* S" e( e2 I3 o 动态端口的范围从1024到65535,这些端口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配一个供该程序使用。比如1024端口就是分配给第一个向系统发出申请的程序。在关闭程序进程后,就会释放所占用的端口号。
& \4 n' m. ^+ [8 q 不过,动态端口也常常被病毒木马程序所利用,如冰河默认连接端口是7626、WAY 2.4是8011、Netspy 3.0是7306、YAI病毒是1024等等。* U1 J( [/ d% T0 m3 [
9 Y( K$ q/ I2 E9 Y) H4 v8 |8 E0 Y2. 按协议类型划分
# y/ G& y, v* X, I) k/ s 按协议类型划分,可以分为TCP、UDP、IP和ICMP(Internet控制消息协议)等端口。下面主要介绍TCP和UDP端口:
) P1 \1 a! Q: s5 R4 I
, q0 Z5 f! p8 V" c4 q \(1)TCP端口
! T4 E! g) K. W' s. y TCP端口,即传输控制协议端口,需要在客户端和服务器之间建立连接,这样可以提供可靠的数据传输。常见的包括FTP服务的21端口,Telnet服务的23端口,SMTP服务的25端口,以及HTTP服务的80端口等等。0 L9 l' W, T( J7 K/ p
' d+ E% ^: J4 A" @" |0 V
(2)UDP端口
* R @5 W d2 J UDP端口,即用户数据包协议端口,无需在客户端和服务器之间建立连接,安全性得不到保障。常见的有DNS服务的53端口,SNMP(简单网络管理协议)服务的161端口,QQ使用的8000和4000端口等等。
: y3 H8 X) f0 ^6 q5 B$ [常见网络端口
7 Z* _9 Y1 _6 Y0 s" q
4 G: X; A) v8 q4 j" \; q网络基础知识!端口对照# g7 U, t( e* W8 t% v1 s+ ]" I; _
6 n4 s) p6 u$ @# f/ j
端口:0 8 F' r6 C* @, H% l1 W
服务:Reserved , t! `( ^$ Z+ P" }
说明:通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用通常的闭合端口连接它时将产生不同的结果。一种典型的扫描,使用IP地址为0.0.0.0,设置ACK位并在以太网层广播。 + y6 d5 w4 |; O" |% l
$ d7 ?9 { W8 i, ?
端口:1
* N" I7 Y$ {: Z服务:tcpmux
! w! X) }. p3 ^7 l说明:这显示有人在寻找SGI Irix机器。Irix是实现tcpmux的主要提供者,默认情况下tcpmux在这种系统中被打开。Irix机器在发布是含有几个默认的无密码的帐户,如:IP、GUEST UUCP、NUUCP、DEMOS 、TUTOR、DIAG、OUTOFBOX等。许多管理员在安装后忘记删除这些帐户。因此HACKER在INTERNET上搜索tcpmux并利用这些帐户。 5 T7 X. J9 |) a r. n) a
" w- M3 i! m; B2 M. t: v1 F- o( v
端口:7 , C+ `2 r, V. ^7 F8 [5 u9 C
服务:Echo
% W' ]* W- @' J2 _' v% T' o说明:能看到许多人搜索Fraggle放大器时,发送到X.X.X.0和X.X.X.255的信息。
4 H3 b# F: X5 K3 U7 Y9 N6 T! |! L( M8 F
端口:19 ) i" m, [4 |3 u. L
服务:Character Generator + k$ J( Z7 J- {9 h" Z" C* u4 s
说明:这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时会发送含有垃圾字符的数据流直到连接关闭。HACKER利用IP欺骗可以发动DoS攻击。伪造两个chargen服务器之间的UDP包。同样Fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包,受害者为了回应这些数据而过载。
5 \3 l _/ p9 k w& e* G% `! n* d# u
端口:21 ( c" g4 z2 w+ L. w l! x5 u
服务:FTP
2 @# N3 u+ U; b0 ]& s0 n$ N说明:FTP服务器所开放的端口,用于上传、下载。最常见的攻击者用于寻找打开anonymous的FTP服务器的方法。这些服务器带有可读写的目录。木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。 9 k. A( ?8 b# d9 f
* b3 n0 t' x$ {6 U, X" W+ o端口:22 x. d: ~! l) R# O: @
服务:Ssh
! v: n/ [$ N+ L5 Y6 U3 Q+ Q说明:PcAnywhere建立的TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点,如果配置成特定的模式,许多使用RSAREF库的版本就会有不少的漏洞存在。 + O: I6 {7 Q( w1 x2 t$ p
9 {9 M( u7 k0 C6 T8 I
端口:23 ! u6 r! x- }2 y; e
服务:Telnet 1 z+ b! l q/ L; y% v2 M
说明:远程登录,入侵者在搜索远程登录UNIX的服务。大多数情况下扫描这一端口是为了找到机器运行的操作系统。还有使用其他技术,入侵者也会找到密码。木马Tiny Telnet Server就开放这个端口。 % s* `" K3 O$ s/ Z7 v$ W! Q5 R
! U! J6 [$ [1 _; U$ I
端口:25 $ o9 w; _$ f5 v
服务:SMTP
! t) i; Q" y$ ?: H说明:SMTP服务器所开放的端口,用于发送邮件。入侵者寻找SMTP服务器是为了传递他们的SPAM。入侵者的帐户被关闭,他们需要连接到高带宽的E-MAIL服务器上,将简单的信息传递到不同的地址。木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口。 1 l4 L: G. g0 c+ k8 i* s9 v% m
8 w: {, e3 X3 W: {# c端口:31
2 J7 g7 X% P. N% f" K0 p$ r7 m2 Q服务:MSG Authentication , N& h( V9 {) A# {
说明:木马Master Paradise、Hackers Paradise开放此端口。 % f/ C* U( ^# a/ R
& o! m/ L! i- q6 ?端口:42
2 b! k+ `. V k6 E+ E( ?服务:WINS Replication 5 e% e& x. Y8 A. w3 K3 s5 R2 J
说明:WINS复制 0 H2 M6 l- x5 j8 u) g$ w
& u2 o8 Q: N m端口:53 # j6 Z2 O9 _* Y' f# q
服务:Domain Name Server(DNS)
: C- x- ~& V) b说明:DNS服务器所开放的端口,入侵者可能是试图进行区域传递(TCP),欺骗DNS(UDP)或隐藏其他的通信。因此防火墙常常过滤或记录此端口。 1 G# T% d" N& C9 l
/ ^6 x+ z) m7 m端口:67 4 N9 Y# L! E. q3 |: b
服务:Bootstrap Protocol Server 9 K3 \1 d8 [+ R W7 ]1 b+ P4 k6 l
说明:通过DSL和Cable modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向DHCP服务器请求一个地址。HACKER常进入它们,分配一个地址把自己作为局部路由器而发起大量中间人(man-in-middle)攻击。客户端向68端口广播请求配置,服务器向67端口广播回应请求。这种回应使用广播是因为客户端还不知道可以发送的IP地址。 + e0 ]! w+ Q) U! Y$ ~" F
& Z8 N" x0 G& k& i5 ^; t) A端口:69
) a8 x) @4 e! \& |: G" g7 U7 n7 S服务:Trival File Transfer $ h0 ~( `+ J5 O1 M! ?5 w5 g
说明:许多服务器与bootp一起提供这项服务,便于从系统下载启动代码。但是它们常常由于错误配置而使入侵者能从系统中窃取任何 文件。它们也可用于系统写入文件。
. A* p4 u% A. M W
0 e" L% ]5 H1 i4 L7 G1 D h端口:79
" m# Y. v% Y( F, t服务:Finger Server
) W9 w% U' o: b% B7 N9 \说明:入侵者用于获得用户信息,查询操作系统,探测已知的缓冲区溢出错误,回应从自己机器到其他机器Finger扫描。 / U* y4 h) O$ z) z4 j0 `+ s
7 c1 o$ A& k* w7 V
端口:80
9 e [ m0 ?3 p G, Q4 ^% R* u% F服务:HTTP
; U5 p W$ v6 D0 B, x0 y说明:用于网页浏览。木马Executor开放此端口。
' K% X q9 h; ]& @' h2 J' x/ M9 F: w" a1 ?( O
端口:99
9 T7 t- f/ t; S6 t! p服务:Metagram Relay ) [4 R6 A8 d9 p- w- r+ Q* k! b M/ l
说明:后门程序ncx99开放此端口。 6 z4 [0 F* B& d8 E* v2 N
; k1 V y/ U! g+ A端口:102
1 z! i, i; G$ z; r! U服务:Message transfer agent(MTA)-X.400 over TCP/IP * ?* f [4 C. @5 [4 |) M7 @
说明:消息传输代理。
- V0 S, `$ t6 E/ P* r! ]) |% C8 Q
5 t9 |5 `( B* n端口:109
9 f# x/ T8 D f+ {/ f) b. z; M/ y3 S服务:Post Office Protocol -Version3 # ?- E( C: W) p
说明:POP3服务器开放此端口,用于接收邮件,客户端访问服务器端的邮件服务。POP3服务有许多公认的弱点。关于用户名和密码交 换缓冲区溢出的弱点至少有20个,这意味着入侵者可以在真正登陆前进入系统。成功登陆后还有其他缓冲区溢出错误。
9 j7 }( a3 k ~! O0 `/ g+ Y3 u; N: ^" a4 {( E
端口:110
6 ]2 s7 O' m7 {' L: o服务:SUN公司的RPC服务所有端口
5 R! m! h5 W+ ^) `说明:常见RPC服务有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等
1 }+ O- d G4 A+ P) j, m: C& r) P/ N7 |% L
端口:113
+ t- Q7 z" Z/ V: w' \' x( _服务:Authentication Service & v3 F1 U+ w1 B5 W N! F5 {( D
说明:这是一个许多计算机上运行的协议,用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多计算机的信息。但是它可作为许多服务的记录器,尤其是FTP、POP、IMAP、SMTP和IRC等服务。通常如果有许多客户通过防火墙访问这些服务,将会看到许多这个端口的连接请求。记住,如果阻断这个端口客户端会感觉到在防火墙另一边与E-MAIL服务器的缓慢连接。许多防火墙支持TCP连接的阻断过程中发回RST。这将会停止缓慢的连接。
5 E1 E2 P! b5 S5 t+ \) N$ { g, M
端口:119 2 g2 Z# e$ P( f, A1 B* U' I
服务:Network News Transfer Protocol
P, X- g) N5 M. ~说明:NEWS新闻组传输协议,承载USENET通信。这个端口的连接通常是人们在寻找USENET服务器。多数ISP限制,只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子,访问被限制的新闻组服务器,匿名发帖或发送SPAM。
6 F) I* D0 X: J7 L) h- E8 b' g2 ^5 M- ~, D! I' N- B
端口:135 " B/ v1 U% g+ U1 T1 |. Z
服务:Location Service 4 o5 a+ E1 E/ x
说明:Microsoft在这个端口运行DCE RPC end-point mapper为它的DCOM服务。这与UNIX 111端口的功能很相似。使用DCOM和RPC的服务利用计算机上的end-point mapper注册它们的位置。远端客户连接到计算机时,它们查找end-point mapper找到服务的位置。HACKER扫描计算机的这个端口是为了找到这个计算机上运行Exchange Server吗?什么版本?还有些DOS攻击直接针对这个端口。
) L6 W# r; a! o7 S* ~' a5 X. }2 [1 Y D
端口:137、138、139 & a. s2 t% F6 `" @! D) G, ]" K% L, P
服务:NETBIOS Name Service ! _* r7 h4 G! Z
说明:其中137、138是UDP端口,当通过网上邻居传输文件时用这个端口。而139端口:通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于windows文件和打印机共享和SAMBA。还有WINS Regisrtation也用它。 % |9 F" a" i2 r a& h! d1 I6 i5 Y
: g$ E+ O) L% A; G
端口:143 1 v$ j1 c G9 m3 n
服务:Interim Mail Access Protocol v2 x# }3 } k, q2 p
说明:和POP3的安全问题一样,许多IMAP服务器存在有缓冲区溢出漏洞。记住:一种LINUX蠕虫(admv0rm)会通过这个端口繁殖,因此许多这个端口的扫描来自不知情的已经被感染的用户。当REDHAT在他们的LINUX发布版本中默认允许IMAP后,这些漏洞变的很流行。这一端口还被用于IMAP2,但并不流行。
$ N, H$ k0 k; f! \8 _( q6 _4 m; ]- E& `( ^
端口:161 : c& l! l( h1 w# K+ U4 {5 O
服务:SNMP
0 {+ Y6 a. l8 P4 ]; V说明:SNMP允许远程管理设备。所有配置和运行信息的储存在数据库中,通过SNMP可获得这些信息。许多管理员的错误配置将被暴露在Internet。Cackers将试图使用默认的密码public、private访问系统。他们可能会试验所有可能的组合。SNMP包可能会被错误的指向用户的网络。 6 g5 [/ D% }5 X2 N
: {0 h% J2 J* b: H2 h5 z$ g
端口:177 + _2 q* H" v+ }) z
服务:X Display Manager Control Protocol
9 I2 N& f, P. S3 P说明:许多入侵者通过它访问X-windows操作台,它同时需要打开6000端口。
7 A; p- {. d7 j/ @! m8 @% b2 ?" ~+ G; o7 w7 f
端口:389 . P9 G# d6 w ?5 f8 {% n# h: n
服务:LDAP、ILS ( ~- H. _/ @; s3 ?0 \ C H
说明:轻型目录访问协议和NetMeeting Internet Locator Server共用这一端口。 / V, }1 C# w' m8 d2 ]8 k
# K6 v1 B& c4 x# X; x: {$ M" Y @
端口:443 # R3 H6 O0 d( e! y ^+ c- @
服务:Https - c, }" r% Q, x2 \# W9 P! J+ u4 y
说明:网页浏览端口,能提供加密和通过安全端口传输的另一种HTTP。 8 j; l1 A8 F* f U3 q, K
3 r: F% v: ^9 L% s* J; b( t7 @9 h端口:456 - _- v5 ^0 j: Q, \# s# c" e# D
服务:[NULL]
9 S/ i9 H" _: F' _/ \0 w- h说明:木马HACKERS PARADISE开放此端口。
' R4 V1 v# K j3 O8 A
- X# w% H( `( z( a5 E2 m7 f端口:513
) x. j& \; K$ p* N2 M" c! k服务:Login,remote login
+ y+ H3 G# Z2 Y `- v t% z说明:是从使用cable modem或DSL登陆到子网中的UNIX计算机发出的广播。这些人为入侵者进入他们的系统提供了信息。 : @: E- q8 u% H$ D; n, A1 ?. q
& j; d! P# I6 b; r) ]2 H
端口:544
& L+ w1 f }2 }' U/ y" ?; n5 t! z服务:[NULL] ! O9 U( _4 W* w8 Y
说明:kerberos kshell * }; ?8 Z) I0 ~' j4 R
" Z# g+ [7 M/ _! X端口:548
, i9 y, j- r$ @- n5 ?服务:Macintosh,File Services(AFP/IP)
- O# F1 ^% a ^说明:Macintosh,文件服务。
( @7 V* _- i- w' K3 p! B8 p8 F# k& {: ~' [! P- `
端口:553 0 s1 ^! ~/ u) j! N* y7 [
服务:CORBA IIOP (UDP) ! O8 h; C7 y# R2 _1 ]: j
说明:使用cable modem、DSL或VLAN将会看到这个端口的广播。CORBA是一种面向对象的RPC系统。入侵者可以利用这些信息进入系统。 6 u" o# F$ ~. y8 Z8 l$ I
" X; M; @1 x# l& j% Z4 `; H
端口:555
1 w( I' l- ^0 n服务:DSF
, o: l7 }% c! b6 ~" i说明:木马PhAse1.0、Stealth Spy、IniKiller开放此端口。
8 T5 e- J1 H; e0 P7 |
' ? i, q Z8 n' M! g端口:568 4 n+ }! V9 u5 b$ Y
服务:Membership DPA 9 j, S3 s5 O8 x' r1 q/ s
说明:成员资格 DPA。 " G, I, V% k. Y; ~, E
; c3 \+ @7 h, {6 \端口:569
' j8 M1 f/ @; K: G9 H) m. ?1 G5 ~: B服务:Membership MSN 8 Q# ^3 i$ I" w& V$ v2 B
说明:成员资格 MSN。
! Z( X4 g7 n0 [, h" a- M- d4 b. r& W/ `/ ?3 e
端口:635
' ~! _8 u; {3 O服务:mountd ) ~6 P' J1 e4 p/ V* }1 s: T
说明:Linux的mountd Bug。这是扫描的一个流行BUG。大多数对这个端口的扫描是基于UDP的,但是基于TCP的mountd有所增加(mountd同时运行于两个端口)。记住mountd可运行于任何端口(到底是哪个端口,需要在端口111做portmap查询),只是Linux默认端口是635,就像NFS通常运行于2049端口。 |
|