- 等级
- 泥土工人
- 等级进度
-
- 积分
- 40
- 阅读权限
- 30
- 主题
- 精华
- 社区币
- 星梦
- 注册时间
- 2008-8-14
- 最后登录
- 1970-1-1
|
(三)防火墙的基本类型
, o- Y3 O, z9 s7 U. h/ N$ g9 p0 q& T. k3 B0 L- ?8 F. C+ z4 S' p
实现防火墙的技术包括四大类:网络级防火墙(也叫包过滤型防火墙)、应用级网关、电路级网关和规则检查防火墙。 1 H- @( A) X5 K
& b3 N6 i7 m1 c- k% K+ e 1.网络级防火墙 ) [9 |0 \. f$ k9 E7 J% S
) q* U5 D F# h/ t- U! B* B4 r* z
一般是基于源地址和目的地址、应用或协议以及每个IP包的端口来作出通过与否的判断。一个路由器便是一个“传统”的网络级防火墙,大多数的路由器都能通过检查这些信息来决定是否将所收到的包转发,但它不能判断出一个IP包来自何方,去向何处。
: j5 A* b# q% n' x4 |9 g3 j5 q) {' }& q& r
先进的网络级防火墙可以判断这一点,它可以提供内部信息以说明所通过的连接状态和一些数据流的内容,把判断的信息同规则表进行比较,在规则表中定义了各种规则来表明是否同意或拒绝包的通过。包过滤防火墙检查每一条规则直至发现包中的信息与某规则相符。
& L! `. s! Z7 m9 i
9 O2 D5 e9 x9 d! L 如果没有一条规则能符合,防火墙就会使用默认规则,一般情况下,默认规则就是要求防火墙丢弃该包。其次,通过定义基于TCP或UDP数据包的端口号,防火墙能够判断是否允许建立特定的连接,如Telnet、FTP连接。 * P5 w0 u8 o7 `5 K& R" f; P0 E- D
1 a* A: |9 |! v0 W. V# ], m7 b% k
下面是某一网络级防火墙的访问控制规则:
9 A0 ~8 s1 \. }! }& p3 l8 d) v/ |: h* g( B& Y( f
(1)允许网络123.1.0使用FTP(21口)访问主机150.0.0.1;
: a' v( A! ~8 H0 K: {' w* N. j; m$ s' B2 w$ o1 M' n
(2)允许IP地址为202.103.1.18和202.103.1.14的用户Telnet (23口)到主机150.0.0.2上;
/ N: i: ~0 g6 \. }4 H" Z! P' v2 f
w% i# H" G% C& ` (3)允许任何地址的E-mail(25口)进入主机150.0.0.3;
% r, h/ [+ |0 \7 Z5 z9 ^7 S" u( }1 o2 D s0 a
(4)允许任何WWW数据(80口)通过;
* [/ K1 X1 F7 O }9 x% f' u/ N- E) M& X9 o, h; d3 j' G$ X4 l. p& ?
(5)不允许其他数据包进入。 $ o1 X; Z# c0 B! h0 c% t2 X2 L
8 Z% Y8 T/ M' H8 x0 j9 q 网络级防火墙简洁、速度快、费用低,并且对用户透明,但是对网络的保护很有限,因为它只检查地址和端口,对网络更高协议层的信息无理解能力。 3 J) F: k8 f5 z7 m2 A
0 b+ c0 [& `9 b
2.规则检查防火墙 ' o' [; q' }% f9 t/ i
$ d) p3 u* `, D; J3 J* {
该防火墙结合了包过滤防火墙、电路级网关和应用级网关的特点。它同包过滤防火墙一样, 规则检查防火墙能够在OSI网络层上通过IP地址和端口号,过滤进出的数据包。它也象电路级网关一样,能够检查SYN和ACK标记和序列数字是否逻辑有序。
& g1 K, n8 J" J
8 |1 I2 L9 [+ z 当然它也象应用级网关一样, 可以在OSI应用层上检查数据包的内容,查看这些内容是否能符合公司网络的安全规则。规则检查防火墙虽然集成前三者的特点,但是不同于一个应用级网关的是,它并不打破客户机/服务机模式来分析应用层的数据, 它允许受信任的客户机和不受信任的主机建立直接连接。
% h; @3 K- O1 t! x+ Y
2 ~2 h5 O) M: b9 g4 f: m# g$ I# Y- N! o1 r 规则检查防火墙不依靠与应用层有关的代理,而是依靠某种算法来识别进出的应用层数据,这些算法通过已知合法数据包的模式来比较进出数据包,这样从理论上就能比应用级代理在过滤数据包上更有效。 . u" g- @ n' Y/ _. o* E) e G
' r: N0 [$ M3 b& T5 \ 目前在市场上流行的防火墙大多属于规则检查防火墙,因为该防火墙对于用户透明,在OSI最高层上加密数据,不需要你去修改客户端的程序,也不需对每个需要在防火墙上运行的服务额外增加一个代理。
0 T0 [& v! @. Y* G8 E7 T5 a. Y9 C3 Q1 a, q* q; L* A: U, G: Q/ R
如现在最流行的防火墙之一OnTechnology软件公司生产的OnGuard和CheckPoint软件公司生产的FireWall-1防火墙都是一种规则检查防火墙。
! {) c2 K+ h3 w/ |4 ]/ J! e: y v( D* t! u
从趋势上看,未来的防火墙将位于网络级防火墙和应用级防火墙之间,也就是说,网络级防火墙将变得更加能够识别通过的信息,而应用级防火墙在目前的功能上则向“透明”、“低级”方面发展。最终防火墙将成为一个快速注册稽查系统,可保护数据以加密方式通过,使所有组织可以放心地在节点间传送数据。
5 p$ }* D/ ]' N) s
1 t3 w2 u/ s8 _# N- f, A ]. b$ v" L (四)防火墙的配置 4 c: I4 [& L6 G, E2 E3 A
! c% b6 K1 ] O
防火墙配置有三种:Dual-homed方式、Screened-host方式和Screened-subnet方式。Dual-homed方式最简单。 Dual-homedGateway放置在两个网络之间,这个Dual-omedGateway又称为bastionhost。 4 e4 r9 r6 R; t2 x! L& T* q; l
& {5 M! V3 }: q! k8 L) C6 D 这种结构成本低,但是它有单点失败的问题。这种结构没有增加网络安全的自我防卫能力,而它往往是受“黑客”攻击的首选目标,它自己一旦被攻破,整个网络也就暴露了。
9 h v5 T. O* T7 d1 I4 p8 Q7 l8 |% g3 ]
Screened-host方式中的Screeningrouter为保护Bastionhost的安全建立了一道屏障。它将所有进入的信息先送往Bastionhost,并且只接受来自Bastionhost的数据作为出去的数据。 ( [) d& F' f' q6 l, m
" [; j3 ^! ?$ F$ e' G
这种结构依赖Screeningrouter和Bastionhost,只要有一个失败,整个网络就暴露了。Screened-subnet包含两个Screeningrouter和两个Bastionhost。 在公共网络和私有网络之间构成了一个隔离网,称之为”停火区”(DMZ,即DemilitarizedZone),Bastionhost放置在”停火区”内。这种结构安全性好,只有当两个安全单元被破坏后,网络才被暴露,但是成本也很昂贵。
p( \8 ]5 ]; i$ g---------------------------------------------------------------------------- & n2 R% M5 o- A6 q O |5 s& d
(四)防火墙的安全措施 5 `/ T3 e! L7 ~/ ]
# c5 j, d: c7 S 各种防火墙的安全性能不尽相同。这里仅介绍一些一般防火墙的常用安全措施:
% t, f9 f w' e# b5 O4 F* A* v& h; x+ G5 S0 D$ Q, Q; g8 `
1.防电子欺骗术 Q8 C# l1 w6 v! ^ M& @
9 P# u* B& R n1 U% [2 k) E
防电子欺骗术功能是保证数据包的IP地址与网关接口相符,防止通过修改IP地址的方法进行非授权访问。还应对可疑信息进行鉴别,并向网络管理员报警。 4 U2 A, A! H- ?
# \$ i: c6 t9 H' S
2.网络地址转移
8 L' t* J2 ]6 x9 M0 [" _
% W9 P& B2 i F 地址转移是对Internet隐藏内部地址,防止内部地址公开。这一功能可以克服IP寻址方式的诸多限制,完善内部寻址模式。把未注册IP地址映射成合法地址,就可以对Internet进行访问。
. N: A" s* E3 C' }5 T2 i3 l& y6 C: N8 c' g/ A+ L4 _4 U" E! d( Q
3.开放式结构设计 ) {; F0 p) h5 Z$ P _) a) H
/ D b/ E7 ?0 U5 }) ? 开放式结构设计使得防火墙与相关应用程序和外部用户数据库的连接相当容易,典型的应用程序连接如财务软件包、病毒扫描、登录分析等。
" A* S, s% w( k$ O3 C: G! }1 ]" q& f3 t
4.路由器安全管理程序 6 i% A1 W- C8 o9 _ m, v9 L" d
2 Y% } t5 Y' C. L I' [* G! A3 N 它为Bay和Cisco的路由器提供集中管理和访问列表控制。
: F; j* }" |8 `# N
6 ~0 n, h1 J! u; }4 i/ A (六)传统防火墙的五大不足 8 E7 T2 u. @ q
" w6 i5 E1 v% l2 @: Z+ i) G 1.无法检测加密的Web流量
9 J1 R# Q. p, c% [$ M7 a5 a. Y z. v3 b& H$ Y5 Y
如果你正在部署一个光键的门户网站,希望所有的网络层和应用层的漏洞都被屏蔽在应用程序之外。这个需求,对于传统的网络防火墙而言,是个大问题。 , g) e; n% W% g2 a
3 a. ~4 n8 W$ B
由于网络防火墙对于加密的SSL流中的数据是不可见的,防火墙无法迅速截获SSL数据流并对其解密,因此无法阻止应用程序的攻击,甚至有些网络防火墙,根本就不提供数据解密的功能。 ! h1 t% I4 b% Z! V) p2 L* _
. e. i m7 X0 S% n' ~! z" ~, p 2、普通应用程序加密后,也能轻易躲过防火墙的检测
4 N6 C8 q" S( ?+ N" M+ M/ S7 S2 k3 }2 h" W! C+ Z
网络防火墙无法看到的,不仅仅是SSL加密的数据。对于应用程序加密的数据,同样也不可见。在如今大多数网络防火墙中,依赖的是静态的特征库,与入侵监测系统(IDS,Intrusion Detect System)的原理类似。只有当应用层攻击行为的特征与防火墙中的数据库中已有的特征完全匹配时,防火墙才能识别和截获攻击数据。
" T& e0 V% N$ D6 C: l B$ X$ k/ Z) W! ]! b1 M% d5 n) C; ~
但如今,采用常见的编码技术,就能够地将恶意代码和其他攻击命令隐藏起来,转换成某种形式,既能欺骗前端的网络安全系统,又能够在后台服务器中执行。这种加密后的攻击代码,只要与防火墙规则库中的规则不一样,就能够躲过网络防火墙,成功避开特征匹配。
- V7 ^' p4 v, r( B2 ]
8 `- C \- c8 u4 p3 U6 ~1 B 3、对于Web应用程序,防范能力不足 + w+ m3 K* G2 t( c5 b2 J
; b$ r) K4 K# Q0 Q9 I
网络防火墙于1990年发明,而商用的Web服务器,则在一年以后才面世。基于状态检测的防火墙,其设计原理,是基于网络层TCP和IP地址,来设置与加强状态访问控制列表(ACLs,Access Control Lists)。在这一方面,网络防火墙表现确实十分出色。
0 r: |% c* E/ ~+ m( M; W) R6 D( ~/ v% k/ A; Q/ e2 w4 s1 {
近年来,实际应用过程中,HTTP是主要的传输协议。主流的平台供应商和大的应用程序供应商,均已转移到基于Web的体系结构,安全防护的目标,不再只是重要的业务数据。网络防火墙的防护范围,发生了变化。 7 n: y6 G! d J8 I) @ u
1 b( w) t+ D) E% p 对于常规的企业局域网的防范,通用的网络防火墙仍占有很高的市场份额,继续发挥重要作用,但对于新近出现的上层协议,如XML和SOAP等应用的防范,网络防火墙就显得有些力不从心。 8 ?! s, C0 {1 l# G
6 I# q; f3 {' X$ u) s% t5 a9 Q 由于体系结构的原因,即使是最先进的网络防火墙,在防范Web应用程序时,由于无法全面控制网络、应用程序和数据流,也无法截获应用层的攻击。由于对于整体的应用数据流,缺乏完整的、基于会话(Session)级别的监控能力,因此很难预防新的未知的攻击。 . d4 E& V$ q3 r1 i0 L" u) B4 f
/ q5 \3 g3 n& _
4、应用防护特性,只适用于简单情况
; A, H( z# E% \. }0 z3 w$ B
0 Y' C: i0 I* y" ]; d 目前的数据中心服务器,时常会发生变动,比如:
( D4 {5 C3 c$ L: ?
1 V2 E; j# P, A% I' v+ f' L2 f* q6 E ★ 定期需要部署新的应用程序;
U4 E8 {' R* ?4 a% x3 b7 g% H6 M& i9 |$ G- Z- `- ?
★ 经常需要增加或更新软件模块;
$ j; X2 @2 J7 Q0 k& n$ k7 ~; }) u, W( i+ C( y
★ QA们经常会发现代码中的bug,已部署的系统需要定期打补丁。
0 I$ Z' H) Z0 {) S* Y8 H
2 m& u! l: i, u7 A 在这样动态复杂的环境中,安全专家们需要采用灵活的、粗粒度的方法,实施有效的防护策略。 ! e! y% @5 H, C- e+ E @) D5 k% D2 d
/ I+ l3 I& b3 B) ~ 虽然一些先进的网络防火墙供应商,提出了应用防护的特性,但只适用于简单的环境中。细看就会发现,对于实际的企业应用来说,这些特征存在着局限性。在多数情况下,弹性概念(proof-of-concept)的特征无法应用于现实生活中的数据中心上。
/ p* w) H; |4 J7 }0 `$ M7 A0 Z
比如,有些防火墙供应商,曾经声称能够阻止缓存溢出:当黑客在浏览器的URL中输入太长数据,试图使后台服务崩溃或使试图非法访问的时候,网络防火墙能够检测并制止这种情况。 7 f2 ~% ^0 ]3 r2 L6 K+ J) ?
7 K/ d7 A6 h0 j 细看就会发现,这些供应商采用对80端口数据流中,针对URL长度进行控制的方法,来实现这个功能的。
9 V. x" x5 z$ V' o! p R9 L5 T6 R! [ |+ l4 @& m1 G# Q
如果使用这个规则,将对所有的应用程序生效。如果一个程序或者是一个简单的Web网页,确实需要涉及到很长的URL时,就要屏蔽该规则。
) L/ o7 ^) n) b" q! C& |' a9 O3 d, d8 |6 [# N( N/ i
网络防火墙的体系结构,决定了网络防火墙是针对网络端口和网络层进行操作的,因此很难对应用层进行防护,除非是一些很简单的应用程序。
/ g% Z% n3 c1 A' _/ y' `! f/ U
/ r ]) I. n$ G7 s. I# m4 m/ I 5、无法扩展带深度检测功能
" E5 J; m! G7 b. S! r+ ^ b2 R- A/ F- s% s* U: b1 x3 l. W
基于状态检测的网络防火墙,如果希望只扩展深度检测(deep inspection)功能,而没有相应增加网络性能,这是不行的。
4 c1 J( j$ m6 T. |
6 f; ~ F |' @3 M3 ~' ?' p 真正的针对所有网络和应用程序流量的深度检测功能,需要空前的处理能力,来完成大量的计算任务,包括以下几个方面:
: M8 O M0 q2 D9 t7 _6 Y$ t9 d* [
: }: W% ?4 u+ k3 A2 Q% k' ` ★ SSL加密/解密功能;
) G3 G, g- z& Y" }0 q9 l9 C @ D
★ 完全的双向有效负载检测; % l% m- N- A) Y% l; n
6 k' a4 E6 V( ^& f
★ 确保所有合法流量的正常化; + G- v# p9 a4 ?' r
8 {% |: b6 G1 E: `1 V
★ 广泛的协议性能;
* {# L3 h5 U& t: l) T
B: y- D( Q+ Y. s/ O7 a0 b 这些任务,在基于标准PC硬件上,是无法高效运行的,虽然一些网络防火墙供应商采用的是基于ASIC的平台,但进一步研究,就能发现:旧的基于网络的ASIC平台对于新的深度检测功能是无法支持的。
2 P. X" D0 c; ^; o* W+ o
& Y0 f2 d T1 N S 三、结束语 % L- `) H9 @/ Y( _3 e6 s! G
4 j/ G. T$ y$ @& ~0 m
由于互联网络的开放性和通信协议的安全缺陷,以及在网络环境中数据信息存储和对其访问与处理的分布性特点,网上传输的数据信息很容易泄露和被破坏,网络受到的安全攻击非常严重,因此建立有效的网。 |
|