今天下载了一个最新的“天网防火墙个人版 2.0.3.102”看了看,原来天网是用C++ Builder写的,EXE文件就一个(还有几个驱动),也没有加壳,用VC编译器可以打开看到里面的资源。界面也一般,不象OICQ2000那样的花哨,所用的图标也不太好看,也许是因为开发者把精力都放到了功能的开发上。总的来说简单易用,一看就会,下面谈谈有防火墙环境下的攻击和检测。
一、防火墙基本原理
首先,我们需要了解一些基本的防火墙实现原理。防火墙目前主要分包过滤,和状态检测的包过滤,应用层代理防火墙。但是他们的基本实现都是类似的。
防火墙一般有两个以上的网络卡,一个连到外部(router),另一个是连到内部网络。当打开主机网络转发功能时,两个网卡间的网络通讯能直接通过。当有防火墙时,他好比插在网卡之间,对所有的网络通讯进行控制。
说到访问控制,这是防火墙的核心了:),防火墙主要通过一个访问控制表来判断的,他的形式一般是一连串的如下规则:
1 accept from+ 源地址,端口 to+ 目的地址,端口+ 采取的动作
2 deny ...........(deny就是拒绝。。)
3 nat ............(nat是地址转换。后面说)
防火墙在网络层(包括以下的炼路层)接受到网络数据包后,就从上面的规则连表一条一条地匹配,如果符合就执行预先安排的动作了!如丢弃包……
但是,不同的防火墙,在判断攻击行为时,有实现上的差别。下面结合实现原理说说可能的攻击。
二、攻击防火墙
IP 欺骗攻击
这种攻击,主要是修改数据包的源,目的地址和端口,模仿一些合法的数据包来骗过防火墙的检测。如:外部攻击者,将他的数据报源地址改为内部网络地址,防火墙看到是合法地址就放行了。可是,如果防火墙能结合接口,地址来匹配,这种攻击就不能成功了。
DOS拒绝服务攻击
简单的包过滤防火墙不能跟踪TCP的状态,很容易受到拒绝服务攻击,一旦防火墙受到DOS攻击,他可能会忙于处理,而忘记了他自己的过滤功能。:)你就可以饶过了,不过这样攻击还很少的。
木马攻击
对于包过滤防火墙最有效的攻击就是木马了,一但你在内部网络安装了木马,防火墙基本上是无能为力的。
原因是:包过滤防火墙一般只过滤低端口(1-1024),而高端口他不可能过滤的(因为,一些服务要用到高端口,因此防火墙不能关闭高端口的),所以很多的木马都在高端口打开等待,如冰河,subseven等。
但是木马攻击的前提是必须先上传,运行木马,对于简单的包过滤防火墙来说,是容易做的。这里不写这个了。大概就是利用内部网络主机开放的服务漏洞。
早期的防火墙都是这种简单的包过滤型的,到现在已很少了,不过也有。现在的包过滤采用的是状态检测技术,下面谈谈状态检测的包过滤防火墙。