防火墙的常用三种技术(一文秒懂防火墙原理)(1)

阅读本文约需要10分钟,您可以先关注我们,避免下次无法找到。

防火墙是企业网络环境的边界设备,承载着企业网络安全的重要任务,今天就由成哥带大家一起学习下什么是防火墙。

01 防火墙基础知识

防火墙的名字来源于古代的一个种建筑,为了避免一个区域的火灾蔓延到另外一个区域,搭建的墙来阻断火势的蔓延,这种墙叫做防火墙。

信息领域的防火墙概念也是类似的:

防火墙主要用于保护一个网络区域免受来自另一个网络区域的网络攻击和网络入侵行为。因其隔离、防守的属性,灵活应用于网络边界子网隔离等位置,具体如企业网络出口、大型网络内部子网隔离、数据中心边界等等。

路由器与交换机的本质是转发,防火墙的本质是控制

02 防火墙的昨天、今天和明天

防火墙从发展史来看主要经历了5个阶段:

(1)包过滤防火墙:当时人们认为数据包是相互独立的,防火墙在进行数据识别时,会把每个数据包都进行过滤检查,整体效率会比较低。单独分析每个报文也会带来无法识别整个数据流的行为,因此无法实现高级的安全控制。

(2)应用代理防火墙:这种防火墙是客户端和服务端的代理,这种防火墙需要针对不同的应用做单独的开发,显然这没有普适性,存在的时间比较短。

(3)状态检测防火墙:这代防火墙是才是比较成熟的防火墙,是基于状态检测来进行防御工作的,即防火墙认为数据包前后是有关联的,因此一个数据流我们只有一开始会做比较复杂的安全检查,检查通过后续的数据报文就只有简单的检查。现在的防火墙都是基于状态检测防火墙的升级改革。

(4)UTM防火墙:统一威胁管理防火墙,是基于状态检测防火墙新增了统一威胁检查的功能,主要包括AV反病毒、内容检测、文件检测、URL检测等功能。

(5)下一代防火墙(NGFW):NGFW是UTM防火墙的升级,UTM防火墙有个最大的问题,虽然支持各种统一威胁检测的功能,但是当这些功能全部打开时,硬件性能消耗非常严重,几乎无法使用。NGFW的要求就是在开启所有统一威胁检测的同时,硬件性能消耗不能过高。同时还需要功能通过用户等维度识别流量。

03 防火墙的安全策略

防火墙的基本作用是保护特定网络免受"不信任"的网络的攻击,但是同时还必须允许两个网络之间可以进行合法的通信。

安全策略的作用就是对通过防火墙的数据流进行检验,符合安全策略的合法数据流才能通过防火墙。

防火墙的常用三种技术(一文秒懂防火墙原理)(2)

上图就是防火墙上配置的安全策略,表示允许源区域为untrust的所有IP地址访问目标区域为dmz、目标地址为172.30.x.x,目标端口为TCP 8443、http、https的流量通过防火墙。

在通过防火墙安全策略的流量会在防火墙上形成会话表:

防火墙的常用三种技术(一文秒懂防火墙原理)(3)

上图中的会话表就是匹配了安全策略后形成的,会话表里包括安全区域、接口、流量大小、源目IP、源目端口、链接状态、会话超时时间等关键信息。

会话表是防火墙重要的组件之一,当一个合法的tcp流建立链接之前,该tcp流的所有报文都需要经过严格、复杂的安全策略检查,当合法的tcp流完全建立成功后,后续的流量只需经过简化的安全检查过程,这样可以大大提高防火墙的转发效率。

04 防火墙攻击防范

九十年代,攻击随着互联网的蓬勃发展从实验室走向了Internet。全球的攻击爱好者由于共同的信仰"Open Free Share(开源、免费、共享)"建立了同盟,很多年以后这帮人被叫做"黑客"。

最初的黑客一般都是一些高级的技术人员,他们热衷于挑战、崇尚自由并主张信息的共享。随着Internet在全球的迅猛发展,经济、军事、科技、教育、文化、生活等各个方面都逐渐网络化,信息已经成为物质和能量以外维持人类社会的第三资源,黑客也逐渐变成了一种有特殊目的的产业。

(1)单包攻击

单包攻击是指通过少量报文的交互达到目标系统崩溃或窃取有效信息的攻击。

单包攻击分为畸形报文攻击、扫描类攻击、特殊控制类报文

畸形报文攻击:通常指攻击者发送大量有缺陷的报文,从而造成主机或服务器在处理这类报文时系统崩溃。

扫描类攻击:是一种潜在的攻击行为,并不具备直接的破坏行为,通常是攻击者发动真正攻击前的网络探测行为。

特殊控制报文攻击:也是一种潜在的攻击行为,不具备直接的破坏行为,攻击者通过发送特殊控制报文探测网络结构,为后续发动真正的攻击做准备。

下面我们举一个单包攻击及防御的例子:

Ping of Death攻击及防御

操作系统处理数据包的大小是有限制的,IP报文的长度字段为16位,即IP报文的最大长度为65535。如果遇到大小超过65535的报文,会出现内存分配错误,从而使接收方的计算机系统崩溃。Ping of Death攻击就是攻击者不断的通过Ping命令向攻击目标发送超过65535的报文,就可以使目标计算机的TCP/IP堆栈崩溃,致使接收方系统崩溃。

防火墙在处理Ping of Death攻击报文时,是通过判定数据包的大小是否大于65535字节,如果数据包大于65535字节,则判定为攻击报文,直接丢弃。

Land攻击及防御

Land攻击是指攻击者向受害者发送伪造的TCP报文,此TCP报文的源地址和目的地址同为受害者的IP地址。这将导致受害者向它自己的地址发送回应报文,从而造成资源的消耗。

防火墙在处理Land攻击报文时,通过检查TCP报文的源地址和目的地址是否相同,或者TCP报文的源地址是否为环回地址,如果是则丢弃。

IP地址扫描攻击

IP地址扫描攻击是攻击者运用ICMP报文(如Ping和Tracert命令)探测目标地址,或者使用TCP/UDP报文对一定地址发起连接,通过判断是否有应答报文,以确定哪些目标系统确实存活着并且连接在目标网络上。

防火墙对收到的TCP、UDP、ICMP报文进行检测,当某源IP地址连续发送报文的目的IP地址与前一个报文的目的IP地址不同时,则记为一次异常,当异常次数超过预定义的阈值时,则认为该源IP的行为为IP地址扫描行为,防火墙会将该源IP地址加入黑名单。

可以看出,IP地址扫描攻击并没有直接造成什么恶劣后果,它只是一种探测行为,通常是为了后续发动破坏性攻击做准备,尽管如此,这种行为我们防火墙也不会放过的。

(2)DDOS攻击

DDOS攻击是利用大量的数据报文致使目标系统无法提供正常服务的一种攻击行为。

2014年春节期间,某IDC的OSS系统分别于大年初二、初六、初七连续遭受三轮攻击,最长的一次攻击时间持续将近三个小时,攻击流量峰值接近160Gbit/s!事后,通过对目标和攻击类型分析,基本可以判断是有一个黑客/黑客组织发起针对同一目标的攻击时间。经过对捕获的攻击数据包分析,发现黑客攻击手段主要采用SYN Flood。2013年,某安全运营报告显示,DDoS攻击呈现逐年上升趋势,其中SYN Flood攻击的发生频率在2013全年攻击统计中占31%。

我们都知道TCP流的建立是需要经过"三次握手"阶段的:

防火墙的常用三种技术(一文秒懂防火墙原理)(4)

当Server端收到Client发过来的SYN报文时,Server端就将为该链接分配内存空间,黑客正式利用了这一点,发送大量的SYN报文给Server端,Server端的资源就有可能被占满,从而无法为正常的客户提供服务:

防火墙的常用三种技术(一文秒懂防火墙原理)(5)

当然也有同学会问,那黑客在收到Server回复的SYN,ACK报文时不也需要消耗资源吗,黑客的机器就一定比Server好吗?针对这个问题,黑客可以模拟不存在的源地址,这样Server在收到SYN报文后,回复的SYN,ACK报文就无法被黑客接受到。

针对这种SYN FLOOD攻击,防火墙是这样防御的:

防火墙的常用三种技术(一文秒懂防火墙原理)(6)

当然DDOS的攻击方式还有很多,包括UDP Flood攻击、应用层攻击等等。由于篇幅问题这里就不一一介绍了。

05 总结

本篇文章主要带着大家学习了防火墙的概念、发展史、安全策略、攻击防范等基础知识,如果有疑问可以在下方留言讨论。

--END--

一文读懂交换机和路由器的区别

  • 计算机专业不得不提的校招面试问题
  • 防火墙的常用三种技术(一文秒懂防火墙原理)(7)

    ,