突破防火墙常用的几种技术 vo b$iS`>=
<qn,
首先,我们需要了解一些基本的防火墙实现原理。防火墙目前主要分包过滤,和状态检测的包过滤,应用层代理防火墙。但是他们的基本实现都是类似的。 H'Iq~Ft1
HU[oR4E
│ │---路由器-----网卡│防火墙│网卡│----------内部网络│ │ i=da,W=0
5^|"_Q#:
防火墙一般有两个以上的网络卡,一个连到外部(router),另一个是连到内部网络。当打开主机网络转发功能时,两个网卡间的网络通讯能直接通过。当有防火墙时,他好比插在网卡之间,对所有的网络通讯进行控制。 LkaG[^tfN
rUFFF'm\*a
说到访问控制,这是防火墙的核心了:),防火墙主要通过一个访问控制表来判断的,他的形式一般是一连串的如下规则: "#XtDpGk
jT"r$""1d
1 accept from+ 源地址,端口 to+ 目的地址,端口+ 采取的动作 @DCJ}hud
g5TkD~w"
2 deny ...........(deny就是拒绝。。) 4hNwKe"Ki
aiR5/
ZD
3 nat ............(nat是地址转换。后面说) |LFUzq>j
H0tF
防火墙在网络层(包括以下的炼路层)接受到网络数据包后,就从上面的规则连表一条一条地匹配,如果符合就执行预先安排的动作了!如丢弃包。。。。 8m7eaZ
Y2vj}9jK
但是,不同的防火墙,在判断攻击行为时,有实现上的差别。下面结合实现原理说说可能的攻击。 e-!?[Ujv*%
}*-u$=2
二、攻击包过滤防火墙 5vGioO
j1F w
U
包过滤防火墙是最简单的一种了,它在网络层截获网络数据包,根据防火墙的规则表,来检测攻击行为。他根据数据包的源IP地址;目的IP地址;TCP/UDP源端口;TCP/UDP目的端口来过滤!!很容易受到如下攻击: ]|BojSL_
E(/ sXji!
1 ip 欺骗攻击: A5+5J_)*
T/7vM 6u
这种攻击,主要是修改数据包的源,目的地址和端口,模仿一些合法的数据包来骗过防火墙的检测。如:外部攻击者,将他的数据报源地址改为内部网络地址,防火墙看到是合法地址就放行了:)。可是,如果防火墙能结合接口,地址来匹配,这种攻击就不能成功了:( !c_u-&b)
HwW6tQ
2 d.o.s拒绝服务攻击 U 1F-~{r
7%op zdS#
简单的包过滤防火墙不能跟踪 tcp的状态,很容易受到拒绝服务攻击,一旦防火墙受到d.o.s攻击,他可能会忙于处理,而忘记了他自己的过滤功能。:)你就可以饶过了,不过这样攻击还很少的。! z"av|(?d
d
qpgf@
3 分片攻击 =jG?v'X
w7ZG oh(
这种攻击的原理是:在IP的分片包中,所有的分片包用一个分片偏移字段标志分片包的顺序,但是,只有第一个分片包含有TCP端口号的信息。当IP分片包通过分组过滤防火墙时,防火墙只根据第一个分片包的Tcp信息判断是否允许通过,而其他后续的分片不作防火墙检测,直接让它们通过。 r:#Q9EA
uri*lC
这样,攻击者就可以通过先发送第一个合法的IP分片,骗过防火墙的检测,接着封装了恶意数据的后续分片包就可以直接穿透防火墙,直接到达内部网络主机,从而威胁网络和主机的安全。 _jDS"
5l&j