[笔记] 计算机网络安全:(5)防火墙原理与设计
- 网络安全基础
- internet协议的安全性
- Web安全
- 网络扫描和网络监听
- 防火墙原理与设计
- 入侵检测系统
- VPN技术
目录
- [笔记] 计算机网络安全:(5)防火墙原理与设计
5.1 防火墙概述
5.1.1 防火墙概述
- 防火墙是建立在内外网络边界上的过滤封锁机制,内部网络被认为是安全和可信赖的,而外部网络(通常是Internet)被认为是不安全和不可信赖的。
- 防火墙的作用是防止不希望的、未经授权的通信进出被保护的内部网络,通过边界控制强化内部网络的安全政策。
- 两个安全域之间通信流的唯一通道,内外网之间的所有数据流都要流经防火墙
- 防火墙根据访问控制规则决定进出网络的行为
防火墙的功能
-
根据不同的需要,防火墙的功能有比较大差异,但是一般都包含以下三种基本功能。
-
限制外部未授权的用户进入内部网络,过滤掉不安全的服务和非法用户
-
限制内部用户访问特殊站点或不安全的服务
-
防止入侵者接近内部网络
-
5.1.2 防火墙对数据流的处理方式
- 允许数据流通过
- 拒绝数据流通过,并向发送者回复一条消息,提示发送者该数据流 已被拒绝
- 将数据流丢弃,不对这些数据包进行任何处理,也不会向发送者发送任何提示信息。发送者只能等到超时才知道发送不成功
5.1.3 防火墙须满足的要求
- 所有进出网络的数据流都必经防火墙
- 只允许经过授权的数据流通过防火墙
- 防火墙自身对入侵是免疫的
5.1.4 防火墙的分类
- 从形态角度分类
- 硬件防火墙:专门设计的网络设备,安装了防火墙软件,本质上还是软件在进行控制
- 软件防火墙:运行在一台或多台计算机之上的特别软件从保护对象角度分类
- 从保护对象角度分类
- 网络防火墙:保护整个网络
- 单机/个人防火墙:保护单台主机
- 从实现技术角度分类
- 分组过滤防火墙(Packet Filtering)
- 作用在网络层和传输层,根据包头源地址、目的地址和端口号、协议类型等标志确定是否允许数据包通过
- 状态检测防火墙(Status Detection)
- 直接对分组里的数据进行处理,并且结合前后分组的数据进行综合判断,然后决定是否允许该数据包通过。
- 应用代理防火墙(Application Proxy)
- 也叫应用网关(Application Gateway),它作用在应用层,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用
- 分组过滤防火墙(Packet Filtering)
网络层次模型与防火墙类型的关系
默认策略(两种)
- 默认接受:是指除非明确地指定禁止某个分组,否则分组是可以通过的。
- 默认拒绝:除非明确地指定允许某个分组通过,否则分组是不可以通过的。
- 从安全的角度讲,默认拒绝应该是更安全的
5.1.5 防火墙的特性分析
- 防火墙是Internet安全的最基本组成部分,但仅采用防火墙并不能给整个网络提供全局的安全性
- 无法防御内部攻击
- 对绕过防火墙的连接却无能为力。
- 防火墙必须允许一些重要服务通过,但是也为攻击者提供了攻击内部网络的机会。
- 防火墙自身的安全性比普通主机更高,凡是与防火墙的功能实现不相关但又可能给防火墙自身带来安全威胁的网络服务和程序,都应从防火墙中去掉。
采用防火墙保护内部网有以下优点
- 防火墙允许网络管理员定义一个中心“扼制点”来防止非法用户(如黑客和网络破坏者等)进入内部网
- 可以集中实施相关安全策略,增强保密性和强化私有权
- 在防火墙上可以很方便地监视网络的安全性,并产生报警。
- 防火墙是审计和记录Internet使用量的一个最佳地方。
5.1.6 防火墙的发展史
迭代 | 技术 |
---|---|
第1代 | 包过滤 |
第2代 | 电路级网关 |
第3代 | 应用级网关 |
第4代 | 动态包过滤 |
第5代 | 内核代理,自适应代理 |
第6代 | 统一威胁管理UTM |
5.2 常用防火墙技术
5.2.1 静态包过滤防火墙
特点
- 采用过滤模块实现
- 较高的安全性
- 直接使用路由器软件过滤
- 无需购买专门设备
- 减少投资
操作
- 接收每个到达的数据包
- 对数据包采用过滤规则,对数据包的IP头和传输字段内容进行检查
- 如果没有规则与数据包头信息匹配,则对数据包施加默认规则。
工作层次
静态包过滤防火墙是最原始的防火墙,静态数据包过滤发生在网络层/ 传输层上
原理
- 作用在网络层和传输层,根据分组头部源地址、目的地址和端口号、协议类型等标志确定是否允许数据包通过,只有满足过滤逻辑的数据包才被转发到相应的目的地的出口端,其余的数据包则从数据流中丢弃。
- 其核心是安全策略即过滤规则的设计,过滤过程就是根据过滤规则对数据包进行检查。
- 过滤位置:在网络入口处、网络出口处对数据包过滤
- 一般来说,不保留前后连接信息,利用分组过滤技术很容易实现允许或禁止访问。
- 方式单一,逐包检查,注意策略一致性问题
检查内容
对于静态包过滤防火墙来说,决定接收还是拒绝数据包,取决于对数据包中IP头和协议头等特定域的检查和判定
- 数据源地址
- 源端口号
- 目的地址
- 目的端口号
- 应用或协议
实例1
Interface | src | sport | des | dport |
---|---|---|---|---|
1 | 130.33.0.0 | * | * | * |
1 | * | * | * | 21 |
1 | * | * | 193.77.21.9 | * |
2 | * | * | * | 80 |
- 拒绝来自130.33.0.0的数据包,这是一种保守策略
- 拒绝来自外部网络的Telnet服务(端口号为23)的数据
- 拒绝试图访问内网主机193.77.21.9的数据包
- 禁止HTTP服务(端口号为80)的数据包输出
实例2
规则 | 方向 | src | des | protocal | sport | dport | ACK | 动作 |
---|---|---|---|---|---|---|---|---|
A | 出 | 172.46.23.45 | * | TCP | >1023 | 23 | 任意 | 允许 |
B | 入 | * | 172.45.23.45 | TCP | 23 | >1023 | 是 | 允许 |
配置
- 必须用设备提供商可支持的语法重写这些表达式
- 必须用逻辑表达式清楚地表述数据包的类型
- 管理员必须明确企业网络的安全策略
过滤规则制定的策略
- 按地址过滤:源IP、目的IP
- 防地址欺骗
- 对外部地址取消信任
- 按服务过滤:协议、源端口、目的端口
- 对外部端口取消信任
- 按连接方向过滤:ACK位
- 按时间、用户等过滤
- 对数据包做日志记录
- 详细记录所有被过滤掉的数据包,了解过滤规则阻止了哪些访问,了解究竟哪些人试图违反规则
- 以空间代价换取安全
建立分组过滤规则的步骤
- 建立安全策略(分析并列出所有允许的和禁止的任务)
- 将安全策略转化为分组字段的逻辑表达式
- 用防火墙提供的过滤规则句法重写逻辑表达式并设置
安全策略
- 任何时间,内网→邮件服务器:允许
- 任何时间,内网→web服务器:允许
- 上班时间,内网→Internet:允许
- 任何时间,Internet→内网:禁止
- 任何时间,Internet→web服务器:允许
- 任何时间,Internet→邮件服务器:允许
- 任何时间,Internet→数据库服务器:禁止
- 其它:禁止
逻辑表达式
- Sip=192.168.1.0/24 and dip=192.168.3.3 and (dport=25 or dport=110), action=permit
- Sip=any and dip=192.168.1.0/24, action=reject
- Sip=any and dip=192.168.3.4 and dport=80, action=permit
- Sip=any and dip=192.168.3.2 and dport=1358, action=reject
- Default=reject
包过滤规则
src | sport | protocal | des | dport | 时间 | action |
---|---|---|---|---|---|---|
192.168.1.0/24 | ANY | TCP | 192.168.3.3 | 25,110 | ANY | Permit |
ANY | ANY | ANY | 192.168.1.0/24 | ANY | ANY | Reject |
ANY | ANY | TCP | 192.168.3.2 | 1358 | ANY | Reject |
ANY | ANY | TCP | 192.168.3.4 | 80 | ANY | Permit |
192.168.1.0/24 | ANY | ANY | ANY | ANY | WORK | Permit |
ANY | ANY | ANY | ANY | ANY | Reject |
有新需求
- 增加安全策略: 上班时间,内网→数据库服务器:允许
- 逻辑表达式:Sip = 192.168.1.0/24 and dip = 192.168.3.2 and dport=1358, action=permit
- 包过滤规则更新
src | sport | protocal | des | dport | 时间 | action |
---|---|---|---|---|---|---|
192.168.1.0/24 | ANY | TCP | 192.168.3.3 | 25,110 | ANY | Permit |
ANY | ANY | ANY | 192.168.1.0/24 | ANY | ANY | Reject |
192.168.1.0/24 | ANY | TCP | 192.168.3.2 | 1358 | WORK | Permit |
ANY | ANY | TCP | 192.168.3.4 | 80 | ANY | Permit |
192.168.1.0/24 | ANY | ANY | ANY | ANY | WORK | Permit |
ANY | ANY | ANY | ANY | ANY | Reject |
包过滤模块在linux内核中的位置:Netfilter框架
Linux防火墙IPTABLES的规则:iptables -L 可查看包过滤规则
WinRoute禁用FTP访问
- WinRoute以前应用比较广泛,既可以作为一个服务器的防火墙系统,也可以作为一个代理服务器软件。
- FTP服务用TCP协议,FTP占用TCP的21端口,主机的IP地址 是“172.18.25.109”,首先创建规则如下
- 访问违反了访问规则,会在主机的安全日志中记录下来
seq | action | src | des | sport | dport | protocal |
---|---|---|---|---|---|---|
1 | 禁止 | * | 172.18.25.109 | * | 21 | TCP |
安全性讨论
- IP地址欺骗
- 黑客用某个已知可信客户机的源地址替代恶意数据包的实际源地址进行攻击,进入受保护的内部网络。
- 隐信道攻击
- 静态包过滤防火墙不检查数据包的净荷部分,黑客有机会将恶意的命令或数据隐藏到数据净荷中。
- 无“状态感知”
- 包过滤防火墙并无“状态感知”能力。管理员必须为某个会话的两端都配置相应的规则以保护服务器。
- 仅检查数据的IP头和TCP头,不可能区分真实IP地址和伪造IP地址
优点
- 对网络性能影响较小
- 成本较低
缺点
- 安全性较低
- 缺少状态感知能力
- 容易遭受IP欺骗攻击
- 创建访问控制规则比较麻烦
5.2.2 工作于传输层的动态包过滤防火墙
特点
- 具有状态感知能力
- 典型的动态包过滤
- 防火墙工作在网络层
- 先进的动态包过滤防火墙工作在传输层
检查内容
- 数据源地址
- 源端口号
- 目的地址
- 目的端口号
- 应用或协议
工作原理
- 数据包过滤
- 与普通包过滤防火墙非常相似。
- 不同点
- 对外出数据包进行身份记录, 便于下次让具有相同连接的数据包通过。
- 动态包过滤防火墙需要对已建连接和规则表进行动态维护,因此 是动态的和有状态的。
- 典型的动态包过滤防火墙能够感觉到新建连接与已建连接之间的差别。
实现
- 实时地改变普通包过滤器的规则集
- 采用类似电路级网关的方式转发数据包
例子
优点
- 采用SMP技术时,对网络性能的影响非常小。
- 动态包过滤防火墙的安全性优于静态包过滤防火墙。
- “状态感知”能力使其性能得到了显著提高。
- 如果不考虑操作系统成本,成本会很低。
缺点
- 仅工作于网络层,仅检查IP头和TCP头。
- 没过滤数据包的净荷部分,仍具有较低的安全性。
- 容易遭受IP欺骗攻击
- 难于创建规则,管理员必须要考虑规则的先后次序。
- 如果连接在建立时没有遵循三步握手协议,就会引入的风险
5.2.3 电路级网关
电路级网关通常作为代理服务器的一部分在应用代理类型的防火墙中实现
特点
- 电路级网关又称做线路级网关,当两个主机首次建立TCP连接时,电路级网关在两个主机之间建立一道屏障
- 来自Internet的请求,作为服务器接收外来请求并转发。内部主机请求访问Internet,担当代理服务 器。
- 电路级网关工作时,IP数据包不会实现端到端的流动。电路连接可自动完成。连接服务需要知道确切的目的地址
与包过滤的区别
- 除了进行基本的包过滤检查外
- 还要增加对连接建立过程中的握手信息SYN、ACK及序列号合法性的验证
检查内容
- 源地址
- 目的地址
- 应用或协议
- 源端口号
- 目的端口号
- 握手信息及序列号
工作原理
- 在转发一个数据包之前,首先将数据包的IP头和TCP头与由管理员定义的规则表相比较
- 如果会话合法,包过滤器就开始逐条扫描规则,直到发现一条与数据包中的有关信息一致
- 电路级网关在其自身与远程主机之间建立一个新连接,这一切对内网中用户都是完全透明的(代理)
SOCKS代理
- 是现在已得到广泛应用的电路级网关(SSL)
- 事实上,SOCKS是一种网络代理协议
- 提供一个通用框架来使这些的TELNET、FTP、SMTP等协议安全透明地穿过防火墙
流程
- 内网主机请求访问互联网
- 与SOCKS服务器建立通道
- 将请求发送给服务器
- 收到请求后向目标主机发出请求
- 响应后将数据返回内网主机
优点
- 切断了外部网络到防火墙后的服务器直接连接。
- 性能比包过滤防火墙稍差,但是比应用代理防火墙好。
- 比静态或动态包过滤防火墙具有更高的安全性
缺点
- 具有一些固有缺陷,例如,电路级网关不能对数据净荷进行检测,无法抵御应用层攻击等。
- 仅提供一定程度的安全性。
- 当增加新的内部程序或资源时,往往需要对许多电路级网关的代码进行修改。
5.2.4 应用级网关
- 应用级网关又称应用代理(Application Proxy),是运行在防火墙上的一种服务器程序。代理服务器被放置 在内部主机和外部服务器之间,用于转接内外主机之间 的通信,它可以根据安全策略来决定是否为用户进行代理服务。代理服务器运行在应用层,因此又被称为“应用网关”。
- 针对网络应用服务协议,对数据包内容进行分析过滤。有些应用网关还缓存Internet上那些被频繁使用的页面
- 需要为每种应用写不同的代码,不能很好地支持新应用,配置和维护比较困难,且处理速度较慢
工作特点
- 必针对每个服务运行一个代理。
- 对数据包进行逐个检查和过滤。
- 采用“强应用代理”
- 在更高层上过滤信息,自动创建必要的包过滤规则。
- 当前最安全的防火墙结构之一
- 代理对整个数据包进行检查,因此能在应用层上对数据包进行过滤。
- 应用代理程序与电路级网关有两个重要区别:
- 代理是针对应用的。
- 代理对整个数据包进行检查,因此能在OSI模型的应用层上对数据包进行过滤。
包过滤防火墙 | 应用级网关 |
---|---|
过滤所有不同服务的数据流 | 只能过滤特定服务的数据流 |
不需要了解数据流的细节,它只查看数据包的源地址和目的地址或检查UDP/TCP的端口号和某些 标志位。 | 必须为特定的应用服务编写特定的代理程序,被称为“服务代理”,在网关内部分别扮演客户机代理和服务器代理的角色 |
电路级网关 | 应用级网关 |
---|---|
代理服务器,TCP中继作用 | 代理服务器,针对应用 |
开始建立连接时,进行身份认证、规则检查,以及连接建立过程中的握手信息及序列号合法性验证。会话连接建立后,仅复制、传递数据,不进行过滤 对应用透明 | 对整个数据包进行检查 对应用不透明,必须为特定的应用服务编写特定的代理程序,被称为“服务代理”,在网关内部分别扮演客户机代理和服务器代 理的角色。 |
优点
- 在已有的安全模型中安全性较高
- 具有强大的认证功能
- 具有超强的日志功能
- 规则配置比较简单
缺点
- 灵活性很差,对每一种应用都需要设置一个代理
- 配置烦琐,增加了管理员的工作量
- 性能不高,有可能成为网络的瓶颈
5.2.5 状态检测防火墙
工作特点
- 应用状态:
- 能够理解并学习各种协议和应用,以支持各种最新的应用
- 能从应用程序中收集状态信息并存入状态表中,以供其他应用或协议做检测策略。
- 操作信息:状态监测技术采用强大的面向对象的方法。
- 通信信息:防火墙的检测模块位于操作系统的内核,在网络层之下,能在数据包到达网关操作系统之前对它们进行分析。
- 通信状态:状态检测防火墙在状态表中保存以前的通信信息,记录从受保护网络发出的数据包的状态信息
状态检测技术思想
- 报文之间存在联系,很多报文属于同一个连接
- 可以提高检测效率,仅仅对建立连接的报文进行规则匹配。
- 实现连接的跟踪功能,支持动态连接。
- 对于单一连接的协议来说比较简单,根据分组头部的信息进行跟踪;
- 对于复杂协议,除了使用一个公开端口的连接进行通信外,在通信过程中还会动态建立子连接进行数据传输,而子连接的端口信息是在主连接中通过协商得到的随机值,因此,需要对主连接的内容进行分析,无需另加规则。但是需要对不同协议单独处理
状态检测表
- 状态检测表包括所有通过防火墙的连接,并维护所有连接
- 每条连接的信息包括源地址、目的地址、协议类型、协议相关信息(如TCP/UDP协议的端口、ICMP协议的ID号)、连接状态 (如TCP连接状态)和超时时间等,防火墙把这些信息叫做状态
- 通过状态检测,可实现比简单包过滤防火墙更大的安全性及更高的性能
- 非线性数据结构:hash表、树等
- 直接在内核执行匹配,速度快
- 采用硬件支持,速度更快
理论基础
- 使用客户机/服务器模式的连接具有连接状态,如TCP连接
- TCP连接是有状态的,连接进入不同的阶段有不同的状态
- TCP连接状态的转换是有一定顺序的,不是任意改变的
- TCP连接过程中客户端和服务端的可能的状态是有区别的,如客户端不可能进入LISTEN状态,服务端也 不可能进入SYN_SEND状态
- 对于TCP包中的标志,有些标志是不能同时存在的,如SYN标志不可能和FIN、RST、PSH标志同时存在, 如同时存在必是伪造包,非正常包
- 非TCP连接
- UDP
- 一方发出UDP包后,如DNS请求,防火墙会将从 目的地址和端口返回的、到达源地址源端口的包作为状态相关的包而允许通过。
- ICMP
- 信息查询报文:如ping(echo)包,其状态相关包就是来自目的地址的echo reply包,而没有与echo包对应的echo reply包则认为是状态非法的
- 这些连接在防火墙的状态检测表中的超时时间比较短
- UDP
多连接协议的处理
- 多连接协议
- FTP
- 控制连接:21号端口
- 数据连接:主动方式20号端口,被动方式由服务器提供端口信息
- 数据库通信使用的协议、多媒体通信使用的协议
- FTP
- 状态检测要分析主连接的通信内容,在状态检测表中动态为子连接建立连接表项
- 要求:这些协议在协商子连接端口时是明文协商
优点
- 不需要对每个数据包进行规则检查,而是一个连接的后续数据包(通常是大量的数据包)通 过散列算法,直接进行状态检查,从而使得性 能得到了较大提高
- 由于状态表是动态的,因而可以有选择地、动态地开通1024号以上的端口,使得安全性得到进一步地提高
缺点
- 无法彻底的识别数据包中大量的垃圾邮件、广告以及木马程序等等
包过滤防火墙和状态检测防火墙在处理 FTP协议时的差别
- FTP会有两条连接:控制连接和数据连接。
- 数据连接是在通信过程中动态建立的,而且数据连接采用的端口是在控制连接中协商得到的随机值
- 对于包过滤防火墙来说
- 只检查包头信息,不能知道在控制连接中协商出来的用于数据连接的端口号,为了能使得FTP应用正常工作,只能设定规则打开所有端口才能允许通信,这会带来很大的安全隐患
- 对于状态检测防火墙来说
- 可以进一步分析控制 连接中的内容信息,识别出所协商的数据连接的端口而在防火墙上动态打开这个端口,自动确定允许此连接的数据通过而不必另加规则
- 当跟踪发现数据传输完毕或连接超时的时候,再自动关闭这个端口。
- 状态检测防火墙为了能跟踪类似于FTP这样使用多个连接的协议,必须为各协议单独实现连接跟踪模块
优点
- 具备动态包过滤所有优点,同时具有更高的安全性。
- 没有打破客户/服务器模型。
- 提供集成的动态包过滤功能。
- 运行速度更快
缺点
- 采用单线程进程,对防火墙性能产生很大影响
- 没有打破客户/服务器结构,会产生不可接受的安全风险
- 不能满足对高并发连接数量的要求
- 仅能提供较低水平的安全性
5.2.6 空气隙防火墙
- 空气隙防火墙(Air Gap)俗称“安全网闸”。模拟人工拷盘的工作模式,通过电子开关的快速切换实现两个不同网段的数据交换的物理隔离安全技术。
- 通过专用的硬件设备在物理不连通的情况下,实现两个独立网络之间的数据安全交换和资源共享
- 外部客户机与防火墙之间的连接数据写入SCSI接口的高速硬盘中,然后内部的连接从SCSI硬盘中读取数据
工作原理
- 外部客户机与防火墙之间的连接数据被写入一个具有SCSI接口的高速硬盘。
- 内部的连接再从该SCSI硬盘中读取数据
- 防火墙切断了客户机到服务器的直接连接,并且对硬盘数据的读/写操作都是独立进行的
优点
- 切断了与防火墙后面服务器的直接连接,消除了隐信道攻击的风险。
- 采用强应用代理对协议头长度进行检测,因此能够消除缓冲器溢出攻击。
- 与应用级网关结合使用,空气隙防火墙能提供很高的安全性
缺点
- 降低网络的性能
- 不支持交互式访问
- 适用范围窄
- 结构复杂,实施费用高
- 系统配置复杂
- 带来瓶颈问题
5.3 网络地址转换 NAT
- NAT可解决地址紧缺的问题
- NAT可以隐藏内部网络的拓扑结构,提升网络安全性
分类
- 根据转换信息是否变化
- 静态NAT
- 在进行网络地址转换时,内部网络地址与外部的Internet IP地址是一一对应的关系
- 每一次访问都转换为同一个地址,端口不转换
- IP映射
- 动态NAT
- 可转换的Internet IP地址限定在一个范围内(地址池)
- 每次访问的NAT地址可能不同
- 静态NAT
- 根据实现方式进行
- PAT:端口地址转换, 内→外,外←内
- 在进行网络地址转换时,不仅网络地址发生改变,而且协议端口也会发生改变
- SNAT:源网络地址转换 内→外
- 当内部用户使用专用地址访问Internet时,必须将IP头部中的数据源地址转换成合法的Internet地址
- DNAT:目标网络地址转换 外←内
- 必须将数据包中的目的地址转换成服务器的专用地址,使合法的Internet IP地址与内部网络中服务器的专用地址相对应
- PAT:端口地址转换, 内→外,外←内
- 根据数据流进行分类
- 静态网络地址转换
- 不需要维护地址转换状态表,功能简单,性能较好。
- 动态网络地址转换
- 必须维护一个转换表,功能更强大,需要更多资源。
- 端口地址转换
- 必须维护一个转换表,功能更强大,需要更多资源。
- 静态网络地址转换
实例
静态NAT
动态NAT
端口地址转换
5.4 防火墙部署
堡垒主机
- 位于内部网络的最外层,像堡垒一样对内部网络进行保护
- 在防火墙体系中,堡垒主机要高度暴露,是在Internet上公开的,是网络上最容易遭受非法入侵的设备。
- 有时作为牺牲品换取整个网络的安全。
堡垒主机构建要点
- 选择可靠的OS
- 应该安装在不传输保密信息的网络上
- 提供内部网络访问Internet的服务
- 有完善且受保护的日志系统
- 监测和备份。
非军事区DMZ
是一个非真正可信的网络部分,它提供一个同内部网分开的区域,可供组织的员工通过Internet访问它,也可供商业伙伴和其他的实体访问
在DMZ中放置的系统
一般来说,任何能直接被外部用户接触的系统放置在DMZ中。
- 邮件系统
- Web服务器
- 外部可访问的系统
- 控制系统
常用的DMZ结构
-
工作原理
-
防火墙控制内部网络的访问,DMZ接受来自Internet的访问
-
路由器上设置过滤器,只允许访问DMZ系统提供的服务的通信进入DMZ区
-
服务器上限制每个系统运行的服务只限于DMZ提供的服务,并注意打补丁
-
-
单个防火墙
-
用防火墙生成DMZ
-
防火墙决定什么样的通信可以进入系统
-
路由器不需要过滤器
-
-
双防火墙
-
用双防火墙将DMZ与外部网络和内部网络隔离开
-
防火墙1允许所有到DMZ的通信
-
防火墙2只允许内部网络流出的到Internet和DMZ的通信
-
常见防火墙体系结构模型
- 过滤路由器模型
- 单宿主堡垒主机模型
- 双宿主堡垒主机模型
- 屏蔽子网模型。
过滤路由模型
- 过滤路由器模型是网络的第一道防线,实施分组过滤。
- 如果过滤路由器被黑客攻破,那么内部网络将变得十分的危险。
- 该防火墙不能够隐藏内部网络的信息、不具备监视和日志记录功能。
- 可以由厂家专门生产的路由器实现,也可以用主机来实现。
单宿主堡垒主机模型
- 单宿主堡垒主机(屏蔽主机防火墙)模型由分组过滤路由器和堡垒主机组成。
- 通常在路由器上设立过滤规则,并使这个堡垒主机成为从外部网络唯一可直接到达的主机,这确保了内部网络 不受未被授权的外部用户的攻击。
- 该防火墙系统提供的安全等级比单独的分组过滤防火墙系统要高,因为它实现了网络层安全(包过滤)和应用层安(代理服务)。入侵者在破坏内部网络的安全性之前,必须首先渗透两种不同的安全系统
双宿主堡垒主机模型
- 双宿主堡垒主机模型(屏蔽防火墙系统)可以构造更加安全的防火墙系统
- 双宿主堡垒主机有两个网络接口,但两个接口之间直接转发信息的功能被关掉了。在物理结构上强行将所有去往内部网络的信息经过堡垒主机。
- 优点:堡垒主机的系统软件可用于维护系统日志、硬件拷贝日志或远程日志。
- 致命弱点:一旦入侵者侵入堡垒主机并使其只具有路由功能,则任何网上用户均可以随便访问内网
屏蔽子网模型
- 屏蔽子网模型用了两个包过滤路由器和一个堡垒主机。它是最安全的防火墙系统之一
- 定义了DMZ网络后,网络管理员将堡垒主机及其它公用服务器放在DMZ网络中。如果黑客想突破该防火墙那么 必须攻破以上三个单独的设备
防火墙的典型应用
防火墙的局限性
- 防火墙不能防范不经由防火墙的攻击,例如,如果允许从受保护的网络内部向外拨号,一些用户就可能形成与 Internet 的直接连接。
- 防火墙不是防毒墙,不能拦截带病毒的数据在网络之间传播。
- 防火墙不能解决来自内部网络的攻击和安全问题。
- 防火墙不能防止策略配置不当或错误配置引起的安全威胁
- 防火墙不能防止可接触的人为或自然的破坏
- 防火墙不能防止内部的泄密行为
- 防火墙不能防止本身的安全漏洞的威胁
- 防火墙不能防止利用服务器系统漏洞所进行的攻击
针对防火墙的攻击
- 一般分三类
- 第一类:对防火墙的探测攻击
- 第二类:绕过防火墙的认证机制
- 第三类:有针对性地对防火墙发动攻击
如何保护防火墙本身
- 根据需要合适的配置防火墙,尽量少开端口
- 采用过滤严格的WEB程序
- 采用加密的HTTP协议(HTTPS)
- 购买一台功能较强大的NIDS,且最好能够和防火墙联动
- 管理好内网用户,防止攻击者和内网用户直接连接绕过防火墙
- 经常升级Firewall产品。
5.5 防火墙性能参数
5.5.1 吞吐量
指防火墙在不丢失数据包的情况下能达到的最大的转发数据包的速率
- 这个指标反应了防火墙转发包的能力,对网络的性能影响很大,吞吐量是防火墙性能中的一项非常重要的指标。如果防火墙的吞吐量指标太低就会造成网络瓶颈,影响网络的性能。
- 防火墙的吞吐量可以通过仪器(比如:Smartbits 6000B测试仪,NuStreams测试仪等)进行测试。仪器以最大速率发包,直至防火墙出现首次丢包
5.5.2 时延
是指从入口处输入帧的最后一个比特到达,到从出口处输出帧的第一个比特输出所用的时间间隔。
- 这个指标能够衡量防火墙处理数据的快慢。
- 假如时延过大,那么通过的声音和视频就会出现延迟、颤抖和抖动的现象。
- 也可以通过Smartbits等测试仪测出
5.5.3 丢包率
在连续负载的情况下,防火墙设备由于资源不足应转发但却未转发的帧所占的百分比。
- 丢包率是衡量防火墙设备稳定性和可靠性的重要指标
- 也可以通过Smartbits等测试仪测出。
5.5.4 背对背
指从空闲状态开始,以达到传输介质最小合法间隔极限的传输速率发送相当数量的固定长度的帧,当出现第一个帧丢失时所发送的帧数
- 背对背的测试结果能够反映防火墙设备的缓存能力、对网络突发数据流量的处理能力
5.5.5 并发连接数
指穿越防火墙的主机之间或主机与防火墙之间能同时建立的最大连接数。
- 并发连接数的测试主要用来测试防火墙建立和维持TCP连接的性能。
- 也能够通过并发连接数的大小体现防火墙对来自客户端TCP连接请求的响应能力
5.6 防火墙发展趋势
5.6.1 硬件化
性能提升:硬件处理(基于NP、基于ASIC)、并行处理技术、DPDK技术
5.6.2 多功能化
- 功能扩展:VPN、PKI、NAT、防病毒、防垃圾邮件、AAA(认证Authentication,授权Authori zation,记帐Accounting)、等;
- 协同性:与其他安全设备联动
- 加强审计:安全管理、网络取证
- 支持IPv6
- 路由、拨号功能
- 多级过滤:网络层、传输层以及应用
- 数据包的深度检测:通过对数据包中应用层数据的深入分析,最终可以识别何种类型的应用及其内容。
5.6.3 安全性
-
抗DoS能力:利用ASIC芯片架构、检测面向应用层攻击等减慢蠕虫和垃圾邮件的传播速度的
-
功能:加强防火墙对数据处理的粒度和力度
源不足应转发但却未转发的帧所占的百分比。 -
丢包率是衡量防火墙设备稳定性和可靠性的重要指标
-
也可以通过Smartbits等测试仪测出。
5.5.4 背对背
指从空闲状态开始,以达到传输介质最小合法间隔极限的传输速率发送相当数量的固定长度的帧,当出现第一个帧丢失时所发送的帧数
- 背对背的测试结果能够反映防火墙设备的缓存能力、对网络突发数据流量的处理能力
5.5.5 并发连接数
指穿越防火墙的主机之间或主机与防火墙之间能同时建立的最大连接数。
- 并发连接数的测试主要用来测试防火墙建立和维持TCP连接的性能。
- 也能够通过并发连接数的大小体现防火墙对来自客户端TCP连接请求的响应能力
5.6 防火墙发展趋势
5.6.1 硬件化
性能提升:硬件处理(基于NP、基于ASIC)、并行处理技术、DPDK技术
5.6.2 多功能化
- 功能扩展:VPN、PKI、NAT、防病毒、防垃圾邮件、AAA(认证Authentication,授权Authori zation,记帐Accounting)、等;
- 协同性:与其他安全设备联动
- 加强审计:安全管理、网络取证
- 支持IPv6
- 路由、拨号功能
- 多级过滤:网络层、传输层以及应用
- 数据包的深度检测:通过对数据包中应用层数据的深入分析,最终可以识别何种类型的应用及其内容。
5.6.3 安全性
- 抗DoS能力:利用ASIC芯片架构、检测面向应用层攻击等减慢蠕虫和垃圾邮件的传播速度的
- 功能:加强防火墙对数据处理的粒度和力度