1、防火墙技术防火墙技术计算机网络安全计算机网络安全内容提要内容提要 防火墙的基本概念防火墙的基本概念 防火墙的发展历程 防火墙的核心技术 防火墙的体系结构 防火墙的构造体系 防火墙的功能与原理安全层次安全层次安全的密码算法安全的密码算法安全协议安全协议网络安全网络安全系统安全系统安全应用安全应用安全防火墙防火墙(Firewall)防火墙的基本设计目标防火墙的基本设计目标 对于一个网络来说,所有通过对于一个网络来说,所有通过“内部内部”和和“外部外部”的网络的网络流量都要经过防火墙流量都要经过防火墙 防火墙的基本目标是通过隔离达到访问控制的目的防火墙的基本目标是通过隔离达到访问控制的目的 通过一些
2、安全策略,来保证只有经过授权的流量才可以通通过一些安全策略,来保证只有经过授权的流量才可以通过防火墙过防火墙 防火墙本身必须建立在安全操作系统的基础上防火墙本身必须建立在安全操作系统的基础上内部网络防火墙外部网络防火墙防火墙(Firewall)防火墙的定义防火墙的定义 是一种高级访问控制设备,置于不同网络是一种高级访问控制设备,置于不同网络安全域之间的一系列部件的组合,它是不安全域之间的一系列部件的组合,它是不同网络安全域之间通信流的唯一通道,能同网络安全域之间通信流的唯一通道,能根据有关的安全策略控制(允许、拒绝、根据有关的安全策略控制(允许、拒绝、监视、记录)进出网络的访问行为。监视、记录
3、)进出网络的访问行为。防火墙防火墙(Firewall)防火墙的控制能力防火墙的控制能力 服务控制,确定哪些服务可以被访问服务控制,确定哪些服务可以被访问 方向控制,对于特定的服务,可以确定允许哪个方向控制,对于特定的服务,可以确定允许哪个方向能够通过防火墙方向能够通过防火墙 用户控制,根据用户来控制对服务的访问用户控制,根据用户来控制对服务的访问 行为控制,控制一个特定的服务的行为行为控制,控制一个特定的服务的行为防火墙能做什么防火墙能做什么 定义一个必经之点定义一个必经之点 挡住未经授权的访问流量挡住未经授权的访问流量 禁止具有脆弱性的服务带来危害禁止具有脆弱性的服务带来危害 实施保护,以避
4、免各种实施保护,以避免各种IP欺骗和路由攻欺骗和路由攻击击防火墙能做什么防火墙能做什么 防火墙提供了一个监视各种安全事件的位置,防火墙提供了一个监视各种安全事件的位置,所以,可以在防火墙上实现审计和报警所以,可以在防火墙上实现审计和报警 对于有些对于有些Internet功能来说,防火墙也可以是功能来说,防火墙也可以是一个理想的平台,比如地址转换,一个理想的平台,比如地址转换,Internet日日志、审计,甚至计费功能志、审计,甚至计费功能 防火墙可以作为防火墙可以作为IPSec的实现平台的实现平台防火墙本身的局限性防火墙本身的局限性 对于绕过防火墙的攻击,它无能为力,对于绕过防火墙的攻击,它无
5、能为力,例如,在防火墙内部通过拨号出去例如,在防火墙内部通过拨号出去 防火墙不能防止内部的攻击,以及内部防火墙不能防止内部的攻击,以及内部人员与外部人员的联合攻击人员与外部人员的联合攻击(比如,通过比如,通过tunnel进入进入)防火墙不能防止被病毒感染的程序或者防火墙不能防止被病毒感染的程序或者文件、邮件等文件、邮件等 防火墙的性能要求防火墙的性能要求串口:可对防火墙进行初始化的配置内容提要内容提要 防火墙的基本概念 防火墙的发展历程防火墙的发展历程 防火墙的核心技术 防火墙的体系结构 防火墙的构造体系 防火墙的功能与原理防火墙的发展历程防火墙的发展历程 基于路由器的防火墙基于路由器的防火墙
6、 利用路由器本身对分组的解析,进行分组过滤利用路由器本身对分组的解析,进行分组过滤 过滤判断依据:地址、端口号以及其他网络特征过滤判断依据:地址、端口号以及其他网络特征 防火墙与路由器合为一体,只有过滤功能防火墙与路由器合为一体,只有过滤功能 适用于对安全要求不高的网络环境适用于对安全要求不高的网络环境 防火墙工具组件防火墙工具组件 将过滤功能从路由器中独立出来,并加上审计和告警将过滤功能从路由器中独立出来,并加上审计和告警功能功能 针对用户需求,提供模块化的软件包针对用户需求,提供模块化的软件包 软件可以通过网络发送,用户可根据需要构造防火墙软件可以通过网络发送,用户可根据需要构造防火墙 与
7、第一代相比,安全性提高了,价格降低了与第一代相比,安全性提高了,价格降低了防火墙的发展历程防火墙的发展历程 基于通用操作系统的防火墙基于通用操作系统的防火墙 是批量上市的专用防火墙。是批量上市的专用防火墙。包括分组过滤或者借用路由器的分组过滤功能。包括分组过滤或者借用路由器的分组过滤功能。装有专用的代理系统,监控所有协议的数据和指令。装有专用的代理系统,监控所有协议的数据和指令。保护用户编程空间和用户可配置内核参数的设置。保护用户编程空间和用户可配置内核参数的设置。安全性和速度大为提高安全性和速度大为提高 基于安全操作系统的防火墙基于安全操作系统的防火墙 防火墙厂商具有操作系统的源代码,并可实
8、现安全内防火墙厂商具有操作系统的源代码,并可实现安全内核。核。去掉不必要的系统特性,加固内核,强化安全保护。去掉不必要的系统特性,加固内核,强化安全保护。在功能上包括了分组过滤、应用网关、电路级网关。在功能上包括了分组过滤、应用网关、电路级网关。增加了许多附加功能:加密、鉴别、审计、增加了许多附加功能:加密、鉴别、审计、NAT转换。转换。透明性好,易于使用。透明性好,易于使用。内容提要内容提要 防火墙的基本概念 防火墙的发展历程 防火墙的核心技术防火墙的核心技术 防火墙的体系结构 防火墙的构造体系 防火墙的功能与原理防火墙的类型防火墙的类型 简单包过滤防火墙简单包过滤防火墙 状态检测包过滤防火
9、墙状态检测包过滤防火墙 应用代理防火墙应用代理防火墙 包过滤与应用代理复合型防火墙包过滤与应用代理复合型防火墙 核检测防火墙核检测防火墙简单包过滤防火墙简单包过滤防火墙 包过滤防火墙是第一代和最基本形式的防火墙,防火墙检查每一个通过的数据包,并查看数据包的包头,然后依据一套规则决定或者丢弃,或者放行该数据包。这称为包过滤防火墙。包过滤防火墙检查每一个传入包,查看包中可用的基本信息(源地址和目的地址、端口号、协议等)。然后,将这些信息与设立的规则相比较。简单包过滤防火墙简单包过滤防火墙包过滤器操作的基本过程包过滤规则必须被包过滤设备端口存储起来。当包到达端口时,对包报头进行语法分析。大多数包过滤
10、设备只检查IP、TCP、或UDP报头中的字段。包过滤规则以特殊的方式存储。应用于包的规则的顺序与包过滤器规则存储顺序必须相同。若一条规则阻止包传输或接收,则此包便不被允许。若一条规则允许包传输或接收,则此包便可以被继续处理。若包不满足任何一条规则,则此包便被阻塞。简单包过滤防火墙简单包过滤防火墙 不检查数据区。不检查数据区。不建立连接状态表。不建立连接状态表。前后报文无关。前后报文无关。应用层控制很弱。应用层控制很弱。效率高。效率高。包过滤路由器包过滤路由器 基本的思想很简单基本的思想很简单 对于每个进来的包,适用一组规则,然后对于每个进来的包,适用一组规则,然后决定转发或者丢弃该包决定转发或
11、者丢弃该包 往往配置成双向的往往配置成双向的包过滤路由器包过滤路由器 如何过滤如何过滤 过滤的规则以过滤的规则以IP和传输层的头中的域和传输层的头中的域(字段字段)为基础,包括源和目标为基础,包括源和目标IP地址、地址、IP协议域、协议域、源和目标端口号源和目标端口号 过滤器往往建立一组规则,根据过滤器往往建立一组规则,根据IP包是否匹包是否匹配规则中指定的条件来作出决定。配规则中指定的条件来作出决定。如果匹配到一条规则,则根据此规则决定转发或如果匹配到一条规则,则根据此规则决定转发或者丢弃者丢弃 如果所有规则都不匹配,则根据缺省策略如果所有规则都不匹配,则根据缺省策略安全缺省策略安全缺省策略
12、 两种基本策略,或缺省策略两种基本策略,或缺省策略 没有被拒绝的流量都可以通过没有被拒绝的流量都可以通过 管理员必须针对每一种新出现的管理员必须针对每一种新出现的攻击,制定新的规则攻击,制定新的规则 没有被允许的流量都要拒绝没有被允许的流量都要拒绝 比较保守比较保守 根据需要,逐渐开放根据需要,逐渐开放包过滤防火墙包过滤防火墙 在网络层上进行监测在网络层上进行监测 并没有考虑连接状态信息并没有考虑连接状态信息 通常在路由器上实现通常在路由器上实现 实际上是一种网络的访问控制机制实际上是一种网络的访问控制机制 数据包过滤技术的发展:静态包过滤、数据包过滤技术的发展:静态包过滤、动态包过滤动态包过
13、滤包过滤防火墙包过滤防火墙 优点:优点:不用改动应用程序不用改动应用程序 一个过滤路由器能协助保护整个网络一个过滤路由器能协助保护整个网络 过滤路由器速度快过滤路由器速度快 数据包过滤对用户透明数据包过滤对用户透明 效率高效率高包过滤防火墙包过滤防火墙 缺点:缺点:正确制定规则并不容易正确制定规则并不容易 不可能引入认证机制不可能引入认证机制 不能彻底防止地址欺骗不能彻底防止地址欺骗 一些应用协议不适合于数据包过滤一些应用协议不适合于数据包过滤 正常的数据包过滤路由器无法执行某些安正常的数据包过滤路由器无法执行某些安全策略全策略Ftp文件传输协议文件传输协议clientftp server命令
14、通道:命令通道:21端口端口数据通道:数据通道:20端口端口5151 515021 20PORT 5151OK建立数据通道建立数据通道OKFtp文件传输协议文件传输协议(续续)clientftp server命令通道:命令通道:21端口端口数据通道:大于数据通道:大于10235151 515021 20PASVPORT 3267建立数据通道建立数据通道OK3267针对针对ftp的包过滤规则注意事项的包过滤规则注意事项 建立一组复杂的规则集建立一组复杂的规则集 是否允许正常模式的是否允许正常模式的ftp数据通道?数据通道?有些有些ftp client不支持不支持pasv模式模式 动态监视动态监视
15、ftp通道发出的通道发出的port命令命令 有一些动态包过滤防火墙可以做到有一些动态包过滤防火墙可以做到 启示启示 包过滤防火墙比较适合于单连接的服务包过滤防火墙比较适合于单连接的服务(比如比如smtp,pop3),不适合于多连接的服务,不适合于多连接的服务(比如比如ftp)针对包过滤防火墙的攻击针对包过滤防火墙的攻击 IP地址欺骗,例如,假冒内部的地址欺骗,例如,假冒内部的IP地址。地址。对策:在外部接口上禁止内部地址对策:在外部接口上禁止内部地址 源路由攻击,即由源指定路由,绕开防火墙。源路由攻击,即由源指定路由,绕开防火墙。对策:禁止这样的选项对策:禁止这样的选项 IP碎片攻击。碎片攻击
16、。对策:对策:Windows系统请打上最新的系统请打上最新的Service Pack,目前的,目前的Linux内核已经不受影响。内核已经不受影响。如果可能,在网络边界上禁止碎片包通过,或者用如果可能,在网络边界上禁止碎片包通过,或者用iptables限限制每秒通过碎片包的数目。制每秒通过碎片包的数目。如果防火墙有重组碎片的功能,请确保自身的算法没有问题,如果防火墙有重组碎片的功能,请确保自身的算法没有问题,否则被否则被DoS就会影响整个网络。就会影响整个网络。Win2K系统中,自定义系统中,自定义IP安全策略,设置安全策略,设置“碎片检查碎片检查”。利用复杂协议和管理员的配置失误进入防火墙。利
17、用复杂协议和管理员的配置失误进入防火墙。例如,利用例如,利用ftp协议对内部进行探查协议对内部进行探查IP碎片攻击碎片攻击1.为什么存在为什么存在IP碎片碎片 链路层具有最大传输单元链路层具有最大传输单元MTU这个特性,它限制了数据帧的最大长度,这个特性,它限制了数据帧的最大长度,不同的网络类型都有一个上限值。以太网的不同的网络类型都有一个上限值。以太网的MTU是是1500,你可以,你可以用用 netstat-i 命令查看这个值。如果命令查看这个值。如果IP层有数据包要传,而且数据包的长层有数据包要传,而且数据包的长度超过了度超过了MTU,那么,那么IP层就要对数据包进行分片(层就要对数据包进
18、行分片(fragmentation)操)操 作,作,使每一片的长度都小于或等于使每一片的长度都小于或等于MTU。我们假设要传输一个。我们假设要传输一个UDP数据包,数据包,以太网的以太网的MTU为为1500字节,一般字节,一般IP首部为首部为20字节,字节,UDP首部为首部为8字节,数字节,数据的净荷(据的净荷(payload)部分预留是)部分预留是1500-20-8=1472字节。如果数据部分大于字节。如果数据部分大于1472字节,就会出现分片现象。字节,就会出现分片现象。IP首部包含了分片和重组所需的信息:首部包含了分片和重组所需的信息:+-+-+-+-+-+-+-+-+-+-+-+-+-
19、+-+-+-+-+-+-+-+-+-+-+-+-+-+-|Identification|R|DF|MF|Fragment Offset|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|IP碎片攻击碎片攻击Identification:发送端发送的:发送端发送的IP数据包标识字段都是一个唯一值,该值在数据包标识字段都是一个唯一值,该值在分片时被复制到每个片中。分片时被复制到每个片中。R:保留未用。:保留未用。DF:Dont Fragment,“不分片不分片”位,如果将这一比特置位,如果将这一比特置1,IP层将不对层将不对数据报进行分片。
20、数据报进行分片。MF:More Fragment,“更多的片更多的片”,除了最后一片外,其他每个组成,除了最后一片外,其他每个组成数据报的片都要把比特置数据报的片都要把比特置1。Fragment Offset:该片偏移原始数据包开始处的位置。偏移的字节数是该:该片偏移原始数据包开始处的位置。偏移的字节数是该值乘以值乘以8。另外,当数据报被分片后,每个片的总长度值要改为该片的长度值。每一另外,当数据报被分片后,每个片的总长度值要改为该片的长度值。每一IP分片都各自路由,到达目的主机后在分片都各自路由,到达目的主机后在IP层重组,请放心,首部中的数据层重组,请放心,首部中的数据能够正确完成分片的重
21、组。能够正确完成分片的重组。既然分片可以被重组,那么所谓的碎片攻击是如何产生的呢?既然分片可以被重组,那么所谓的碎片攻击是如何产生的呢?IP碎片攻击碎片攻击 2.IP碎片攻击 IP首部有两个字节表示整个IP数据包的长度,所以IP数据包最长只能为0 xFFFF,就是65535字节。如果有意发送总长度超过65535的IP碎片,一些老的系统内核在处理的时候就会出现问题,导致崩溃或者拒绝服务。另外,如果分片之间偏移量经过精心构造,一些系统就无法处理,导致死机。所以说,漏洞的起因是出在重组算法上。状态检测包过滤防火墙状态检测包过滤防火墙 不检查数据区。不检查数据区。建立连接状态表。建立连接状态表。前后报
22、文相关。前后报文相关。应用层控制很弱。应用层控制很弱。检测性能提高了。检测性能提高了。不检查不检查IP、TCP包头。包头。不建立连接状态表。不建立连接状态表。网络层保护比较弱。网络层保护比较弱。安全性提高了,性能降低了。安全性提高了,性能降低了。应用代理防火墙应用代理防火墙复合型防火墙复合型防火墙 可以检查整个数据包内容。可以检查整个数据包内容。根据需要建立连接状态表。网络层保护强。应用层控制细。会话控制弱。核检测防火墙核检测防火墙 网络层保护强。网络层保护强。应用层保护强。应用层保护强。会话保护很强。会话保护很强。上下文相关。上下文相关。前后报文有联系。前后报文有联系。内容提要内容提要 防火
23、墙的基本概念 防火墙的发展历程 防火墙的核心技术 防火墙的体系结构防火墙的体系结构 防火墙的构造体系 防火墙的功能与原理核检测技术就是基于操作系统内核的会话检测技术。基于内核的会话检测技术就是在基于内核的会话检测技术就是在操作系统内核模拟出典型的应用操作系统内核模拟出典型的应用层协议,在内核实现应用层协议层协议,在内核实现应用层协议的过滤,从而得到极高的性能。的过滤,从而得到极高的性能。并发连接数:20万 vs 120万内容提要内容提要 防火墙的基本概念 防火墙的发展历程 防火墙的核心技术 防火墙的体系结构 防火墙的构造体系防火墙的构造体系 防火墙的功能与原理防火墙构造体系防火墙构造体系 筛选
24、路由器。筛选路由器。多宿主主机。多宿主主机。被屏蔽主机。被屏蔽主机。被屏蔽子网。被屏蔽子网。优点:优点:结构简单结构简单 部署容易、灵活部署容易、灵活 缺点:缺点:安全防护能力弱安全防护能力弱筛选路由器筛选路由器多宿主主机:即带有多个网卡的主机,也就是一个代理服务器。缺点:缺点:安全防护能力只有一层,一旦多宿安全防护能力只有一层,一旦多宿主主机受到攻击,内网就可能完全主主机受到攻击,内网就可能完全暴露于外网之下。暴露于外网之下。多宿主主机多宿主主机堡垒主机:堡垒主机:对外部网络暴露,对外部网络暴露,同时也是内部网络同时也是内部网络用户的主要连接点用户的主要连接点 堡垒主机安装在内部网络上,通常
25、在路堡垒主机安装在内部网络上,通常在路由器上设立过滤规则,并使这个堡垒主由器上设立过滤规则,并使这个堡垒主机成为从外部网络唯一可直接到达的主机成为从外部网络唯一可直接到达的主机,这确保了内部网络不受未被授权的机,这确保了内部网络不受未被授权的外部用户的攻击外部用户的攻击屏蔽主机屏蔽主机 优点:优点:只要包过滤防火墙安全,即使堡垒主机被只要包过滤防火墙安全,即使堡垒主机被攻破,其他主机仍然是安全的。攻破,其他主机仍然是安全的。缺点:缺点:堡垒主机与其他主机处于同一个子网。堡垒主机与其他主机处于同一个子网。一旦包过滤防火墙被攻破,堡垒主机和其一旦包过滤防火墙被攻破,堡垒主机和其他主机都暴露在外网之
26、下,是不安全的。他主机都暴露在外网之下,是不安全的。被屏蔽主机被屏蔽主机堡垒主机的实现堡垒主机的实现(1)堡垒主机操作系统的选择;)堡垒主机操作系统的选择;(2)堡垒主机速度的选择;)堡垒主机速度的选择;(3)堡垒主机的硬件;)堡垒主机的硬件;(4)堡垒主机的物理位置。)堡垒主机的物理位置。(1)堡垒主机操作系统的选择)堡垒主机操作系统的选择 应该选较为熟悉的、流行的系统作为堡垒主机应该选较为熟悉的、流行的系统作为堡垒主机的操作系统。的操作系统。选择主机时,应该选择一个可支持有若干个接选择主机时,应该选择一个可支持有若干个接口同时处于活跃状态并且能可靠地提供一系列口同时处于活跃状态并且能可靠地
27、提供一系列内部网用户所需要的因特网服务的机器。内部网用户所需要的因特网服务的机器。(2)堡垒主机速度的选择)堡垒主机速度的选择实际上,选用功能并不十分强大的机器作为堡垒主实际上,选用功能并不十分强大的机器作为堡垒主机反而更好。机反而更好。不使用功能过高的机器充当堡垒主机的理由如下:不使用功能过高的机器充当堡垒主机的理由如下:低档的机器对入侵者的吸引力要小一些;低档的机器对入侵者的吸引力要小一些;如若堡垒主机被破坏,低档的堡垒主机对于入侵如若堡垒主机被破坏,低档的堡垒主机对于入侵 者进一步侵入内部网提供的帮助要小些;者进一步侵入内部网提供的帮助要小些;也可降低内部网用户破坏的兴趣。也可降低内部网
28、用户破坏的兴趣。(3)堡垒主机的硬件)堡垒主机的硬件因为我们总是希望堡垒主机上有高可靠性,因为我们总是希望堡垒主机上有高可靠性,所以,应慎选产品。还希望堡垒主机具有高兼容所以,应慎选产品。还希望堡垒主机具有高兼容性,所以不可选太旧的产品。在不追求纯粹的高性,所以不可选太旧的产品。在不追求纯粹的高CPU性能的同时,我们要求它至少能支持同时处性能的同时,我们要求它至少能支持同时处理两个网际连接的能力。这个要求使得堡垒主机理两个网际连接的能力。这个要求使得堡垒主机的内存要大,并配置有足够的交换空间。另外,的内存要大,并配置有足够的交换空间。另外,如果在堡垒主机上要运行代理服务还需要有较大如果在堡垒主
29、机上要运行代理服务还需要有较大的磁盘空间作为存储缓冲。的磁盘空间作为存储缓冲。(4)堡垒主机的物理位置)堡垒主机的物理位置位置要安全:位置要安全:如若入侵者与堡垒主机有物理接触,他就有如若入侵者与堡垒主机有物理接触,他就有很多我们无法控制的方法来攻破堡垒主机。很多我们无法控制的方法来攻破堡垒主机。对堡垒主机提供了许多内部网与因特网的功对堡垒主机提供了许多内部网与因特网的功能性连接,如果它被损或被盗,那整个站点与外能性连接,如果它被损或被盗,那整个站点与外部网就地脱离或完全中断。部网就地脱离或完全中断。对堡垒主机要细心保护,以免发生不测。应对堡垒主机要细心保护,以免发生不测。应把它放在通风良好、
30、温湿度较为恒定的房间,并把它放在通风良好、温湿度较为恒定的房间,并最好配备有空调和不间断电源。最好配备有空调和不间断电源。堡垒主机在网络上的位置:堡垒主机在网络上的位置:堡垒主机应被放置在没有机密信息流的网络上,堡垒主机应被放置在没有机密信息流的网络上,最好放置一个单独的网络上。最好放置一个单独的网络上。将堡垒主机放置在参数网络上而不放在内部网将堡垒主机放置在参数网络上而不放在内部网上。上。即使我们无法将堡垒主机放置在参数网络上,即使我们无法将堡垒主机放置在参数网络上,也应该将它放置在信息流不太敏感的网络上。也应该将它放置在信息流不太敏感的网络上。(4)堡垒主机的物理位置)堡垒主机的物理位置D
31、MZ区:区:非军事化区,非军事化区,在内部网络在内部网络和外部网络和外部网络之间增加的之间增加的一个子网。一个子网。DMZ是英文是英文“demilitarized zone”的缩写,中文名称的缩写,中文名称为为“隔离区隔离区”,也称,也称“非军事化区非军事化区”。它是为了解。它是为了解决安装防火墙后外部网络不能访问内部网络服务器决安装防火墙后外部网络不能访问内部网络服务器的问题,而设立的一个非安全系统与安全系统之间的问题,而设立的一个非安全系统与安全系统之间的缓冲区,这个缓冲区位于企业内部网络和外部网的缓冲区,这个缓冲区位于企业内部网络和外部网络之间的小网络区域内,在这个小网络区域内可以络之间
32、的小网络区域内,在这个小网络区域内可以放置一些必须公开的服务器设施,如企业放置一些必须公开的服务器设施,如企业Web服务服务器、器、FTP服务器和论坛等。另一方面,通过这样一个服务器和论坛等。另一方面,通过这样一个DMZ区域,更加有效地保护了内部网络,因为这种区域,更加有效地保护了内部网络,因为这种网络部署,比起一般的防火墙方案,对攻击者来说网络部署,比起一般的防火墙方案,对攻击者来说又多了一道关卡。又多了一道关卡。被屏蔽子网被屏蔽子网 被屏蔽子网包括两个防火墙,外部防火墙抵挡外部被屏蔽子网包括两个防火墙,外部防火墙抵挡外部网络的攻击,并管理所有外部网络对网络的攻击,并管理所有外部网络对DMZ
33、的访问。的访问。内部防火墙管理内部防火墙管理DMZ对于内部网络的访问。内部防对于内部网络的访问。内部防火墙是内部网络的第三道安全防线火墙是内部网络的第三道安全防线(前面有了外部防前面有了外部防火墙和堡垒主机火墙和堡垒主机),当外部防火墙失效的时候,它还,当外部防火墙失效的时候,它还可以起到保护内部网络的功能。而局域网内部,对可以起到保护内部网络的功能。而局域网内部,对于于Internet的访问由内部防火墙和位于的访问由内部防火墙和位于DMZ的堡垒主的堡垒主机控制。在这样的结构里,一个黑客必须穿过三个机控制。在这样的结构里,一个黑客必须穿过三个独立的区域独立的区域(外部防火墙、内部防火墙和堡垒主
34、机外部防火墙、内部防火墙和堡垒主机)才才能够到达局域网。攻击难度大大加强,相应内部网能够到达局域网。攻击难度大大加强,相应内部网络的安全性也就大大加强,但投资成本也是最高的。络的安全性也就大大加强,但投资成本也是最高的。被屏蔽子网被屏蔽子网 优点:优点:提供多重保护措施,提高安全保护提供多重保护措施,提高安全保护的强度。的强度。被屏蔽子网被屏蔽子网串口:可对防火墙进行初始化的配置内容提要内容提要 防火墙的基本概念 防火墙的发展历程 防火墙的核心技术 防火墙的体系结构 防火墙的构造体系 防火墙的功能与原理防火墙的功能与原理 RADIUS服务器(服务器(远程用户拨号认证系统远程用户拨号认证系统)R
35、emote Authentication Dial-In User Service 服务器(服务器(RADIUS),),以执行对用户的验证(以执行对用户的验证(Authentication)、授权()、授权(Authorization)和记帐(和记帐(Accounting)()(AAA)功能。)功能。它允许网络访问服务器(它允许网络访问服务器(NAS)执行对用户的验证、授权和记)执行对用户的验证、授权和记帐。帐。RADIUS是基于是基于UDP的一种客户机的一种客户机/服务器协议。服务器协议。RADIUS服务器通常是在服务器通常是在UNIX、LINUX或或Windows 服务器上运行的一服务器上
36、运行的一个监护程序。个监护程序。如果如果NAS收到用户连接请求,它会将它们传递到指定的收到用户连接请求,它会将它们传递到指定的RADIUS服务器,后者对用户进行验证,并将用户的配置信息返回给服务器,后者对用户进行验证,并将用户的配置信息返回给NAS。然后,。然后,NAS接受或拒绝连接请求。接受或拒绝连接请求。认证服务认证服务 虽然大部分用户还在使用可重用口令技术来保护他们的系统,但随着网络应用的大规模普及,可重用口令技术的缺陷日渐暴露无遗。在我们能够使用信息系统之前,通常需要经过以下两个步骤:鉴别和授权。鉴别是授权的基础,因为如果不能正确的识别用户的身份,正确的授权就无从谈起。利用口令认证用户
37、是最常用的一种鉴别技术,而口令鉴别技术通常又分为两种:历史悠久的可重用口令鉴别技术和后起之秀一次性口令鉴别技术。可重用口令可重用口令 可重用口令鉴别技术的历史很悠久,其缺陷也非常明显:网络窃听:有时候口令需要通过网络传输,很多鉴别系统的口令是未经加密的明文,攻击者只要通过窃听网络数据,就很容易获取鉴别所需的用户名和口令。重放攻击:有的系统会将鉴别信息进行简单加密后进行传输,这时攻击者虽然无法窃听密码,但他们却可以首先截取加密后的口令然后将其重放,从而利用这种方式进行有效的攻击。字典攻击:由于多数用户习惯使用有意义的单词或数字作为密码,某些攻击者会使用字典中的单词来尝试用户的密码。所以大多数系统
38、都建议用户在口令中加入特殊字符,以增加口令的安全性。可重用口令可重用口令可重用口令鉴别技术的历史很悠久,其缺陷也非常明显:强力攻击:这是一种特殊的字典攻击,它使用字符串的全集作为字典,即穷举所有可能的口令空间。这需要很大的耐心和巨大的工作量以及一点运气。然而,若用户的密码较短,那么它很快就会被穷举出来,因而很多系统都建议用户使用长口令。窥探:攻击者利用与被攻击系统接近的机会,安装监视器或亲自窥探合法用户输入口令的过程,以得到口令。对于后者,根本不需要特别的技术或设备,只要眼睛不是近视,需要的仅是静悄悄的站在您的身后,就可以轻松实施攻击。社交工程:攻击者冒充管理人员发送邮件或打电话给合法用户,比
39、如“我是某某单位的系统管理员,现在需要更新所有用户的密码,请将您原来使用的口令告诉我。”这种情况下,许多经验不足的用户会毫不犹豫地将其口令奉上。可重用口令可重用口令 可重用口令鉴别技术的历史很悠久,其缺陷也非常明显:垃圾搜索:攻击者通过搜索被攻击者的废弃物,得到与攻击系统有关的信息,如果用户将口令写在纸上又随便丢弃,则很容易成为垃圾搜索的攻击对象。有文章报道说,当今的商业间谍流行以清洁工人的身份来搜集情报,一方面清洁工人不太引起人们的注意,同时工作起来特顺手。虽然可以通过强迫用户经常更换密码和增加密码长度来保证安全,但由于人类天性懒惰的缘故,经常更换难以记忆的密码会让他们感觉很不舒服,这时难保
40、他们不会将口令写到小纸条上并置于键盘之下(若系统管理员看到了会气得在地上打滚)。所以说实施某项安全措施时,必须考虑到来自用户的阻力。可重用口令可重用口令 一次性口令的工作原理 为了解决固定口令的诸多问题,安全专家提出了一次性口令(OTP:One Time Password)的密码体制,以保护关键的计算资源。OTP的主要思路是:在登录过程中加入不确定因素,使每次登录过程中传送的信息都不相同,以提高登录过程安全性。例如:登录密码=MD5(用户名密码 时间),系统接收到登录口令后做一个验算即可验证用户的合法性。OTP:One Time Password 不确定因子选择与口令生成 口令序列(S/KEY
41、)口令为一个单向的前后相关的序列,系统只用记录第 N个口令。用户用第N1个口令登录时,系统用单向算法算出第N个口令与自己保存的第N个口令匹配,以判断用户的合法性。由于N是有限的,用户登录N次后必须重新初始化口令序列。挑战/回答(CRYPTOCard)用户要求登录时,系统产生一个随机数发送给用户。用户用某种单向算法将自己的秘密口令和随机数混合起来发送给系统,系统用同样的方法做验算即可验证用户身份。时间同步(SecureID)以用户登录时间作为随机因素。这种方式对双方的时间准确度要求较高,一般采取以分钟为时间单位的折中办法。在SecureID 产品中,对时间误差的容忍可达1分钟。事件同步(Safe
42、 Word)这种方法以挑战/回答方式为基础,将单向的前后相关序列作为系统的挑战信息,以节省用户每次输入挑战信息的麻烦。但当用户的挑战序列与服务器产生偏差后,需要重新同步。OTP:One Time Password 一次性口令的使用过程 当一个用户在服务器上首次注册时,系统给用户分配一个种子值(seed)和一个迭代值(iteration),这两个值就构成了一个原始口令,同时在服务器端还保留有仅用户自己知道的通行短语。当用户每次向服务器发出连接请求时,服务器把用户的原始口令传给用户。用户接到原始口令以后,利用口令生成程序,采用MD4或MD5散列算法,结合通行短语计算出本次连接实际使用的口令,然后再
43、把口令传回服务器;服务器先保存用户传来的口令,然后调用口令生成器,采用MD4或MD5散列算法,利用用户存在服务器端的通行短语和它刚刚传给用户的原始口令自行计算生成一个口令;服务器把这个口令与用户传来的口令进行比较,进而对用户进行身份确认;每一次身份成功认证后,原始口令中的迭代值数自动减1。这里要指出的是,用户主机上采用的散列算法和服务器上采用的散列算法必须是一样的。口令序列 一次性口令的使用过程 用户通过网络传给服务器的口令是利用原始口令和通行短语经MD4或MD5散列算法生成的密文,用户本身的通行短语并没有在网上传播;在服务器端,因为每一次成功的身份认证后,用户原始口令中的迭代值就自动减1。这
44、样,下一次用户连接时使用的原始口令同上一次使用的原始口令是不一样的,因此,两次生成的口令也是不同的,从而有效地保证了用户口令的安全。口令序列 用 户 服 务 器1、发出连接请求2、提示输入用户名3、输入用户名4、给用户原始口令5、利用原始口令和通行短语,采用Hash算法生成一次性口令,并将一次性口令传给服务器。6、利用原始口令和通行短语,采用相同的Hash算法生成一次性口令,并将生成的口令与用户传来的口令进行比较,然后传给用户相应的认证信息。口令序列1991年,贝尔通信研究中心(Bellcore)首次研制出了基于一次性口令思想的身份认证系统S/KEY。S/KEY最初使用DES算法,后因安全问题改用MD4作为其加密算法。FreeBSD操作系统下的一次性口令系统OPIE(One-time Passwords In Everything)。OPIE使用比S/KEY的MD4更为强壮的MD5算法,因此一般认为OPIE更为安全。S/KEY OPIE