如何突破各种防火墙的防护

上传人:kms****20 文档编号:40931244 上传时间:2018-05-27 格式:DOC 页数:9 大小:32.50KB
返回 下载 相关 举报
如何突破各种防火墙的防护_第1页
第1页 / 共9页
如何突破各种防火墙的防护_第2页
第2页 / 共9页
如何突破各种防火墙的防护_第3页
第3页 / 共9页
如何突破各种防火墙的防护_第4页
第4页 / 共9页
如何突破各种防火墙的防护_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《如何突破各种防火墙的防护》由会员分享,可在线阅读,更多相关《如何突破各种防火墙的防护(9页珍藏版)》请在金锄头文库上搜索。

1、如何突破各种防火墙的防护如何突破各种防火墙的防护现在随着人们的安全意识加强,防火墙一般都被公司企业采用来保障网络的安全,一般的攻击者在有防火墙的情况下,一般是很难入侵的。下面谈谈有防火墙环境下的攻击和检测。 一 防火墙基本原理 首先,我们需要了解一些基本的防火墙实现原理。防火墙目前主要分包过滤,和状态检测的包过滤,应用层代理防火墙。但是他们的基本实现都是类似的。 | |-路由器-网卡|防火墙|网卡|-内部网络| | 防火墙一般有两个以上的网络卡,一个连到外部(router),另一个是连到内部网络。当打开主机网络转发功能时,两个网卡间的网络通讯能直接通过。当有防火墙时,他好比插在网卡之间,对所有

2、的网络通讯进行控制。 说到访问控制,这是防火墙的核心了:) ,防火墙主要通过一个访问控制表来判断的,他的形式一般是一连串的如下规则: 1 accept from+ 源地址,端口 to+ 目的地址,端口+ 采取的动作 2 deny .(deny 就是拒绝。 。) 3 nat .(nat 是地址转换。后面说) 防火墙在网络层(包括以下的炼路层)接受到网络数据包后,就从上面的规则连表一条一条地匹配,如果符合就执行预先安排的动作了!如丢弃包。 。 。 。 但是,不同的防火墙,在判断攻击行为时,有实现上的差别。下面结合实现原理说说可能的攻击。 二 攻击包过滤防火墙 包过滤防火墙是最简单的一种了,它在网络

3、层截获网络数据包,根据防火墙的规则表,来检测攻击行为。他根据数据包的源 IP 地址;目的 IP 地址;TCP/UDP 源端口;TCP/UDP 目的端口来过滤!很容易受到如下攻击: 1 ip 欺骗攻击: 这种攻击,主要是修改数据包的源,目的地址和端口,模仿一些合法的数据包来骗过防火墙的检测。如:外部攻击者,将他的数据报源地址改为内部网络地址,防火墙看到是合法地址就放行了:) 。可是,如果防火墙能结合接口,地址来匹配,这种攻击就不能成功了:( 2 d.o.s 拒绝服务攻击 简单的包过滤防火墙不能跟踪 tcp 的状态,很容易受到拒绝服务攻击,一旦防火墙受到 d.o. s 攻击,他可能会忙于处理,而忘

4、记了他自己的过滤功能。:)你就可以饶过了,不过这样攻击还很少的。! 3 分片攻击 这种攻击的原理是:在 IP 的分片包中,所有的分片包用一个分片偏移字段标志分片包的顺序,但是,只有第一个分片包含有 TCP 端口号的信息。当 IP 分片包通过分组过滤防火墙时,防火墙只根据第一个分片包的 Tcp 信息判断是否允许通过,而其他后续的分片不作防火墙检测,直接让它们通过。 这样,攻击者就可以通过先发送第一个合法的 IP 分片,骗过防火墙的检测,接着封装了恶意数据的后续分片包就可以直接穿透防火墙,直接到达内部网络主机,从而威胁网络和主机的安全。 4 木马攻击 对于包过滤防火墙最有效的攻击就是木马了,一但你

5、在内部网络安装了木马,防火墙基本上是无能为力的。 原因是:包过滤防火墙一般只过滤低端口(1-1024) ,而高端口他不可能过滤的(因为,一些服务要用到高端口,因此防火墙不能关闭高端口的) ,所以很多的木马都在高端口打开等待,如冰河,subseven 等。 。 。 但是木马攻击的前提是必须先上传,运行木马,对于简单的包过滤防火墙来说,是容易做的。这里不写这个了。大概就是利用内部网络主机开放的服务漏洞。 早期的防火墙都是这种简单的包过滤型的,到现在已很少了,不过也有。现在的包过滤采用的是状态检测技术,下面谈谈状态检测的包过滤防火墙。 三 攻击状态检测的包过滤 状态检测技术最早是 checkpoin

6、t 提出的,在国内的许多防火墙都声称实现了状态检测技术。 可是:)很多是没有实现的。到底什么是状态检测? 一句话,状态检测就是从 tcp 连接的建立到终止都跟踪检测的技术。原先的包过滤,是拿一个一个单独的数据包来匹配规则的。可是我们知道,同一个 tcp 连接,他的数据包是前后关联的,先是 syn 包,-数据包=fin 包。数据包的前后序列号是相关的。 如果割裂这些关系,单独的过滤数据包,很容易被精心够造的攻击数据包欺骗!如 nmap 的攻击扫描,就有利用 syn 包,fin 包,reset 包来探测防火墙后面的网络。! 相反,一个完全的状态检测防火墙,他在发起连接就判断,如果符合规则,就在内存

7、登记了这个连接的状态信息(地址,port,选项。 ),后续的属于同一个连接的数据包,就不需要在检测了。直接通过。而一些精心够造的攻击数据包由于没有在内存登记相应的状态信息, 都被丢弃了。这样这些攻击数据包,就不能饶过防火墙了。 说状态检测必须提到动态规则技术。在状态检测里,采用动态规则技术,原先高端口的问题 就可以解决了。实现原理是:平时,防火墙可以过滤内部网络的所有端口(1-65535),外部攻 击者难于发现入侵的切入点,可是为了不影响正常的服务,防火墙一但检测到服务必须开放高端口时,如(ftp 协议,irc 等) ,防火墙在内存就可以动态地天加一条规则打开相关的高端口。等服务完成后,这条规

8、则就又被防火墙删除。这样,既保障了安全,又不影响正常服务,速度也快。! 一般来说,完全实现了状态检测技术防火墙,智能性都比较高,一些扫描攻击还能自动的反应,因此,攻击者要很小心才不会被发现。但是,也有不少的攻击手段对付这种防火墙的。 1 协议隧道攻击 协议隧道的攻击思想类似与 VPN 的实现原理,攻击者将一些恶意的攻击数据包隐藏在一些协议分组的头部,从而穿透防火墙系统对内部网络进行攻击。 例如,许多简单地允许 ICMP 回射请求、ICMP 回射应答和 UDP 分组通过的防火墙就容易受到 ICMP 和 UDP 协议隧道的攻击。Loki 和lokid(攻击的客户端和服务端)是实施这种攻击的有效的工

9、具。在实际攻击中,攻击者首先必须设法在内部网络的一个系统上安装上lokid 服务端,而后攻击者就可以通过 loki 客户端将希望远程执行的攻击命令(对应 IP 分组)嵌入在 ICMP 或 UDP 包头部,再发送给内部网络服务端 lokid,由它执行其中的命令,并以同样的方式返回结果。由于许多防火墙允许 ICMP 和 UDP 分组自由出入,因此攻击者的恶意数据就能附带在正常的分组,绕过防火墙的认证,顺利地到达攻击目标主机 下面的命令是用于启动 lokid 服务器程序: lokid-pIvl loki 客户程序则如下启动: lokid172.29.11.191(攻击目标主机)-pIv1t3 这样,

10、lokid 和 loki 就联合提供了一个穿透防火墙系统访问目标系统的一个后门。 2 利用 FTP-pasv 绕过防火墙认证的攻击 FTP-pasv 攻击是针对防火墙实施入侵的重要手段之一。目前很多防火墙不能过滤这种攻击手段。如 CheckPoint 的 Firewall-1,在监视 FTP 服务器发送给客户端的包的过程中,它在每个包中寻找“227“这个字符串。如果发现这种包,将从中提取目标地址和端口,并对目标地址加以验证,通过后,将允许建立到该地址的 TCP 连接。 攻击者通过这个特性,可以设法连接受防火墙保护的服务器和服务。详细的描述可见 http:/ 3 反弹木马攻击 反弹木马是对付这种

11、防火墙的最有效的方法。攻击者在内部网络的反弹木马定时地连接外部攻击者控制的主机,由于连接是从内部发起的,防火墙(任何的防火墙)都认为是一个合法的连接,因此基本上防火墙的盲区就是这里了。防火墙不能区分木马的连接和合法的连接。 但是这种攻击的局限是:必须首先安装这个木马!所有的木马的第一步都是关键! 四 攻击代理 代理是运行在应用层的防火墙,他实质是启动两个连接,一个是客户到代理,另一个是代理到目的服务器。 实现上比较简单,和前面的一样也是根据规则过滤。由于运行在应用层速度比较慢/1 攻击代理的方法很多。 这里就以 wingate 为例,简单说说了。 (太累了) WinGate 是目前应用非常广泛

12、的一种 Windows95/NT 代理防火墙软件,内部用户可以通过一台安装有 WinGate 的主机访问外部网络,但是它也存在着几个安全脆弱点。 黑客经常利用这些安全漏洞获得 WinGate 的非授权 Web、Socks 和Telnet 的访问,从而伪装成 WinGate 主机的身份对下一个攻击目标发动攻击。因此,这种攻击非常难于被跟踪和记录。 导致 WinGate 安全漏洞的原因大多数是管理员没有根据网络的实际情况对 WinGate 代理防火墙软件进行合理的设置,只是简单地从缺省设置安装完毕后就让软件运行,这就给攻击者可乘之机。 1 非授权 Web 访问 某些 WinGate 版本(如运行在

13、 NT 系统下的 2.1d 版本)在误配置情况下,允许外部主机完全匿名地访问因特网。因此,外部攻击者就可以利用 WinGate 主机来对 Web 服务器发动各种 Web 攻击(如 CGI的漏洞攻击等) ,同时由于 Web 攻击的所有报文都是从 80 号 Tcp 端口穿过的,因此,很难追踪到攻击者的来源。 检测 检测 WinGate 主机是否有这种安全漏洞的方法如下: 1) 以一个不会被过滤掉的连接(譬如说拨号连接)连接到因特网上。2) 把浏览器的代理服务器地址指向待测试的 WinGate 主机。 如果浏览器能访问到因特网,则 WinGate 主机存在着非授权 Web 访问漏洞。 2 非授权 S

14、ocks 访问 在 WinGate 的缺省配置中,Socks 代理(1080 号 Tcp 端口)同样是存在安全漏洞。与打开的 Web 代理(80 号 Tcp 端口)一样,外部攻击者可以利用 Socks 代理访问因特网。 防范 要防止攻击 WinGate 的这个安全脆弱点,管理员可以限制特定服务的捆绑。在多宿主(multi homed)系统上,执行以下步骤以限定如何提供代理服务。 1 选择 Socks 或 WWWProxyServer 属性。 2 选择 Bindings 标签。 3 按下 ConnectionsWillBeAcceptedOnTheFollowingInterfaceOnly按钮

15、,并指定本 WinGate 服 务器的内部接口 。 非授权 Telnet 访问 它是 WinGate 最具威胁的安全漏洞。通过连接到一个误配置的WinGate 服务器的 Telnet 服务, 攻击者可以使用别人的主机隐藏自己的踪迹,随意地发动攻击。 检测 检测 WinGate 主机是否有这种安全漏洞的方法如下: 1 使用 telnet 尝试连接到一台 WinGate 服务器。 roothappy/tmp#telnet172.29.11.191 Trying172.29.11.191. Connectedto172.29.11.191. Escapecharacteris. Wingate10.

16、50.21.5 2 如果接受到如上的响应文本,那就输入待连接到的网站。 3 如果看到了该新系统的登录提示符,那么该服务器是脆弱的。 Connectedtohost10.50.21.5Connected SunOS5.6 Login: 对策 防止这种安全脆弱点的方法和防止非授权 Socks 访问的方法类似。在 WinGate 中简单地限制特定服务的捆绑 就可以解决这个问题。一般来说,在多宿主(multihomed)系统管理员可以通过执行以下步骤来完成: 1 选择 TelnetSever 属性。 2 选择 Bindings 标签。 3 按下 ConnectionsWillBeAcceptedOnTheFollowingInterfaceOnly按钮,并指定本 WinGate 服务器的内部接口。 五 后话 有防火墙的攻击不单是上面的一点,我有什么写的不对的,大家指正

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号