第 3章 信息系统隔离技术隔离就是在内部系统与对外连接通道上设置阻塞点,以便对攻击者进行监视和控制,有效地维持被保护网络的边界安全。按照《国家信息化领导小组关于我国电子政务建设的指导意见》,“电子政务网络由政务内网和政务外网构成,两网之间物理隔离,政务外网与 Internet之间逻辑隔离”,网络隔离技术从大的方面看,可以分为逻辑隔离 (主要指防火墙)和 物理隔离 (主要指网闸)。
本章主要介绍它们及其相关技术。
信息系统隔离技术
3.1 数据过滤技术
3.2 网络地址转换
3.3 代理技术
3.4 网络防火墙
3.5 网络的物理隔离技术
3.6 计算机系统的电磁防护
3.1.1 数据过滤技术概述
1,数据包及其结构在网络中传输的数据是从应用程序那里递交来的。应用程序递交给网络要传输的数据后,网络就要逐层向下,转交给下面的一层去实施,每交到下一层,就要按照本层的协议要求进行一次打包,形成不同协议层中的数据包( Packet),直到物理网络。 图 3.1表明在
TCP/IP网络中数据包的封装与解包过程。图中的虚箭头为发送端的数据封装过程,实箭头表示接收端的数据解包过程。
图 3.1 TCP/IP网络中数据包的封装与解包
图中的虚箭头为发送端的数据封装过程;
数据包体传输层包头包体网络层包头包体链路层包头应用层
SMTP,Telnet,FTP
TCP,UDP,ICMP
传输层
IP
网络层网络接口层
ATM,Ethernet等包的封装数据解包
实箭头表示接收端的数据解包过程。
应当注意,包过滤是根据数据包的特征进行的。其中,主要根据数据包头的一些字段的特征进行。同时,不同的协议所规定的包头格式不同。因此在制定过滤规则前,应当充分了解数据包的格式。前面图 2.8介绍了 TCP数据报的格式,图
2.9介绍了用于以太网的 ARP分组格式,下面在 图 3.2中,还列出了其他一些常用的数据包的格式,供本书后面的讨论中使用。
图 3.2 其它一些数据包的格式类型码 代 码 校验和首部其余部分数据部分
0 … 7 8 … 15
UDP 源端口
UDP 数据区
UDP 目的端口
UDP 数据报长度 UDP 校验和
版本 头标长 服务类型 总 长标 识 标志 片偏移生存时间 协议 报头校验和源 IP地址目的 IP地址
IP分组选项 填充数 据
0 … 3 4 … 7 8 … 15 16 … 18 19 … 23 24 … 31
( a) IP分组格式
( b) UDP数据报格式 ( c) ICMP分组的格式数据包中可以体现数据包特征的有关字段
( 1)源地址( Source Address) 和目的地址( Destination Address)
它们各表明数据包的源 IP地址和目标 IP目的地址。根据地址,还可以判断出数据流的方向:是由外部网络流入内部网络 —— 往内(流入),还是由内部网络流入外部网络 —— 往外(流出)。
( 2)标识符是发送方分配的一个独一无二的编号,用于标识同一数据报中的各分组,以便组装。
( 3)标志 F( Flag)
F共占 3位:
第 1位恒为 0;
第 2位为 0时是可分片,为 1时是不可分片;
第 3位为 0时是最后报片,为 1时是非最后报片。
( 4)片偏移量 FO( Fragment Offset)
FO占 13位,用以标明当前段片在初始 IP分组中的位置,目的主机可以根据 FO来重新组合 IP分组。
( 5)源端口( Source Port) 和目的端口( Destination Port)
在 TCP和 UDP数据包中,源端口和目的端口分别表示本地通信端口和地通信端口。端口号是按照协议类型分配的,所以端口号也表明了所传输的数据包服务的协议类型。
( 6)协议 Prot( Protocol)
在 IP数据包中,“协议字段”用以标识接收的 IP分组中的数据的高层(传输层)协议。高层协议号由 TCP/IP协议中央权威机构 NIC
( Network Information Center) 分配,如,1—— 控制报文协议
ICMP,6—— 传输控制协议 TCP,8—— 外部网关协议 EGP,17—
— 用户数据抱协议 UDP,29—— 传输层协议第 4类 ISO-TP4。
( 7)服务类型 ToS( Type of Service)
在 IP数据包中,ToS描述 IP分组所希望获得的服务质量,占 8位,包括:
低延迟、高吞吐量、高可靠性,各占 1位;
优先级,共 8级,占 3位;
未用 2位。
( 8)数据包内容前面的 7个字段都来自数据包头中,而数据内容则是来自数据包体中。如数据内容中一些关键词可以代表数据内容的某一方面的特征。
对数据包内容的抽取,将会形成依据内容的包过滤规则。这是目前包过滤技术研究的一个重要方面。
表 3.1列出了 RFC 1349[Almquist 1992]对于不同应用建议的 ToS值。
表 3.1 RFC 1349[Almquist 1992]对于不同应用建议的 ToS值应用程序 最小时延 最大吞吐量 最高可靠性 最小费用 十六进制值
Telnet/Rlogin 1 0 0 0 0x10
FTP
控制 1 0 0 0 0x10
数据 0 1 0 0 0x08
任意块数据 0 1 0 0 0x08
TFTP 1 0 0 0 0x10
SMTP
命令 1 0 0 0 0x10
数据 0 1 0 0 0x08
DNS
UDP查询 1 0 0 0 0x10
TCP查询 0 0 0 0 0x00
区域传输 0 1 0 0 0x08
ICMP
差错 0 0 0 0 0x00
查询 0 0 0 0 0x00
任何 IGP 0 0 1 0 0x04
SNMP 0 0 1 0 0x04
BOOTP 0 0 0 0 0x00
NNTP 0 0 0 1 0x02
2,数据包过滤基本准则最早的包过滤是在路由器上进行的。通过对路由表的配置,来决定数据包是否符合过滤规则。数据包的过滤规则由一些规则逻辑描述:一条过滤规则规定了允许数据包流进或流出内部网络的一个条件。
在制定了数据包过滤规则后,对于每一个数据包,路由器会从第一条规则开始诸条进行检查,最后决定该数据包是否符合过滤逻辑。
数据包规则的应用有两种策略:
默认接受,一切未被禁止的,就是允许的。即除明确指定禁止的数据包,其他都是允许通过的。这也称为“黑名单”策略。
默认拒绝,一切未被允许的,就是禁止的。即除明确指定通过的数据包,其他都是被禁止的。这也称为“白名单”策略。
从安全的角度,默认拒绝应该更可靠。
此外,包过滤还有禁入和禁出的区别。前者不允许指定的数据包由外部网络流入内部网络,后者不允许指定的数据包由内部网络流入外部网络。
建立数据包过滤规则的大致步骤如下:
安全需求分析,确定安全策略:根据网络的具体情况,确定需要保护什么,需要提供什么服务,进一步明确所允许和禁止的任务。
将安全策略转化为数据包分组字段的逻辑表达式。
用防火墙提供的过滤规则语法描述过滤逻辑。
按照过滤逻辑对路由器进行设置。
3.1.2 数据包的地址过滤策略
1,地址过滤策略概述按照地址进行过滤是最简单的过滤方式,它的过滤规则只对数据包的源地址、目标地址和地址偏移量进行判断,
这在路由器上是非常容易配置的。对于信誉不好或内容不宜并且地址确定的主机,用这种策略通过简单配置,
就可以将之拒之门外。但是,对于攻击,尤其是地址欺骗攻击的防御,过滤规则的配置就要复杂多了。
下面分几种情形分别考虑。
( 1) IP源地址欺骗攻击对于攻击者伪装内部用户的 IP地址攻击,可以按照下面的原则配置过滤规则:如果发现具有内部地址的数据包到达路由器的外部接口,
就将其丢弃。
显然,这种规则对于外部主机冒充另外一台主机的攻击则无能为力。
( 2)源路由攻击攻击者有时为了躲过网络的安全设施,要为数据包指定一个路由,
这条路由可以使数据包以不期望路径到达目标。对付这种攻击的过滤规则是丢弃所有含有源路由的数据包。
( 3)小分段攻击当一个 IP包太长时,就要对其进行分片传输。分组后,传输层的首部只出现在 IP层的第 1片中。攻击者利用 IP分片的这一特点,往往会建立极小的分片,希望过滤路由器只检查第 1片,而忽略后面的分组。
对付小分段攻击的策略是丢弃 FO为 1的 TCP,UDP数据包。
2,基于地址的过滤规则的设计例 3.1.1 某公司有一 B类网( 123.45)。该网的子网
( 123.45.6.0/24)有一合作网络( 135.79)。管理员希望:
( 1)禁止一切来自 Internet的对公司内网的访问;
( 2)允许来自合作网络的所有子网( 135.79.0.0/16)访问公司的子网( 123.45.6.0/24);
( 3)禁止对合作网络的子网( 135.79.99.0/24)的访问权
(除对全网开放的特定子网外)。
为简单起见,只考虑从合作网络流向公司的数据包,对称地处理逆向数据包只需互换规则行中源地址和目标地址即可。
表 3.2 该公司网络的包过滤规则
表中规则 C是默认规则。
规 则 源 地 址 目 的 地 址 过滤操作
A 135.79.0.0/16 123.45.6.0/24 允许
B 135.79.99.0/24 123.45.0.0/16 拒绝
C 0.0.0.0/0 0.0.0.0/0 拒绝数据包 源地址 目的地址 目标行为操作 ABC行为操作 BAC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (B) 拒绝 (B)
2 135.79.99.1 123.45.6.1 允许 允许 (A) 拒绝 (B)
3 135.79.1.1 123.45.6.1 允许 允许 (A) 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C) 拒绝 (C)
表 3.3 使用样本数据包测试结果
3,3是使用一些样本数据包对表 3.2所示过滤规则的测试结果。
表 3.3 使用样本数据包测试结果
由表 3.3可见,按 ABC的规则顺序,能够得到想要的操作结果;而按 BAC的规则顺序则得不到预期的操作结果,
原本允许的数据包 2被拒绝了。
数据包 源地址 目的地址 目标行为操作 ABC行为操作 BAC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (B) 拒绝 (B)
2 135.79.99.1 123.45.6.1 允许 允许 (A) 拒绝 (B)
3 135.79.1.1 123.45.6.1 允许 允许 (A) 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C) 拒绝 (C)
仔细分析可以发现,表 3.2中用来禁止合作网的特定子网的访问规则 B是不必要的。它正是在 BAC规则集中造成数据包 2被拒绝的原因。如果删除规则 B,得到 表 3.4所示的行为操作。
表 3.4 删除规则 B后的行为操作这才是想要的结果。由此得出两点结论:
数据包 源地址 目的地址 目标行为操作 AC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (C)
2 135.79.99.1 123.45.6.1 允许 允许 (A)
3 135.79.1.1 123.45.6.1 允许 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C)
正确地制定过滤规则是困难的;
过滤规则的重新排序使得正确地指定规则变得越发困难。
3.1.3 数据包的服务过滤策略
按服务进行过滤,就是根据 TCP/UDP的端口号制定过滤策略。但是,由于源端口是可以伪装的,
所以基于源端口的过滤是会有风险的。同时还需要确认内部服务确实是在相应的端口上。下面进行一些分析。
( 1) 关于外部服务的端口号如果过滤规则完全依赖于外部主机的端口号,例如允许内部主机向外部服务器的邮件发送服务,而且 TCP的端口 25就是常规邮件( STMP) 端口时,这样的配置是安全的。但是,包过滤路由器是无法控制外部主机上的服务确实在常规的端口上,攻击者往往会通过伪造,利用端口 25向内部主机发送其他应用程序(非常规邮件)的数据包,建立连接,进行非授权访问。这时,只能禁止
25端口对于内部主机的访问。因为内部主机对这个外部端口不能信任。
( 2) 关于内部主机的源端口号从内部到外部的 TCP/UDP连接中,内部主机的源端口一般采用大于 1024的随机端口。为此,对端口号大于 1024的所有返回到内部的数据包都要允许。对此,就需要辨认端口号大于 1024的数据包中哪些是非法的。
对于 TCP数据包来说,可以通过 flag位辨认哪些是来自外部的连接请求。但是 UDP是无连接的,没有这样的 flag位可使用,只能唯一地辨认端口号。所以允许 UDP协议对外访问会带来风险。因为返回的数据包上的端口号有可能是攻击者伪造的。当请求端口和目的端口都是固定的时,这个问题才能解决。
例 3.1.2
表 3.5与 表 3.6就是否考虑数据包的源端口进行对照。规则表 3.5由于未考虑到数据包的源端口,出现了两端所有端口号大于 1024的端口上的非预期的作用。而规则表 3.6考虑到数据包的源端口,所有规则限定在 25号端口上,故不可能出现两端端口号均在 1024以上的端口上连接的交互。
规则 方向 类型 源地址 目的地址 目的端口 行为操作
A 入 TCP 外 内 25 允许
B 出 TCP 内 外 >=1024 允许
C 出 TCP 内 外 25 允许
D 入 TCP 外 内 >=1024 允许
E 出 /入 任何 任何 任何 任何 禁止规则 方向 类型 源地址 目的地址 源端口 目的端口 行为操作
A 入 TCP 外 内 >=1024 25 允许
B 出 TCP 内 外 25 >=1024 允许
C 出 TCP 内 外 >=1024 25 允许
D 入 TCP 外 内 25 >=1024 允许
E 出 /入 任何 任何 任何 任何 任何 禁止表 3.5 未考虑源端口时的包过滤规则表 3.6 考虑了源端口时的包过滤规则
3.1.4 数据包的状态检测过滤策略
使用 C/S模式的数据通信具有连接状态。最典型的是 TCP连接。如 图 3.3所示,TCP连接具有 11个状态:
CLOSED,LISTEN,SYS_SENT,SYS_REVD、
FIN_WAIT_1,FIE_WAIT_2,ESTAB、
CLOSE_WAIT,LAST_ACK,CLOSING、
TIME_WAIT。
图 3.3 TCP协议状态转换图
Passive Open,本地用户的被动打开连接 rcv:本地 TCP在引发事件中收到 TCP控制消息
Active Open,本地用户的主动打开连接 send:本地 TCP在结果动作中发出 TCP控制消息
CLOSE:关闭连接请求 x:无动作
create TCB:本地 TCP创建了对应虚电路的协议控制块;
create TCB:本地 TCP撤消 TCP协议控制块并结束通信连接;
Timeout=2MSL,本地 TCP等待超时 2MSL( 2倍的最大段生存期);
CLOSED
LISTEN
ESTAB
CLOSING
TIME WAIT CLOSED
FIN
WAIT_1
CLOSE
WAIT
LAST_ACK
SYS
SENT
SYS
REVD
passive OPEN
create TCB
FIN
WAIT_2
CLOSE
delete TCB
CLOSE
delete TCB
active OPEN
create TCB
send SYN
SEND
send SYN
rcv SYN
send SYN,ACK rcv SYN
send ACK rcv SYN,ACK
send ACK
rcv ACK of SYN
xCLOSE
send FIN CLOSEsend FIN rcv FIN
send ACK
CLOSE
send FIN
rcv FIN
send ACK
rcv ACK of FIN
x
rcv FIN
send ACK
rcv ACK of FIN
x
rcv ACK of FIN
xTimeout=2MSL
delete TCB
TCP连接状态的特征由图 3.3描述可以看出 TCP连接状态的如下特征:
TCP连接是有状态的,连接进入不同的阶段具有不同的状态;
TCP连接状态的转换要按一定的顺序进行,不可随意改变;
在 TCP连接中客户机与服务器的状态不相同,如客户机不能进入
LISTEN状态,服务器不可能进入 SYN_SEND状态;
TCP包中有 6个标志位,FIN,SYS,RST,PSH,ACK,URG,其中一些不能同时存在,如 SYS不能和 FIN,RST,PSH同时存在。
这些特征就是设置状态检测包过滤规则的基础。状态信息可以从数据包中的源地址、目的地址、协议类型、连接状态、超时时间以及其他信息(如 TCP/UDP协议的端口号,ICMP的 ID号等)中获得。
在检测中,一旦发现数据包的状态不符,就可以认为是状态异常包而加以拒绝。
3.1.5 数据包的内容过滤策略
1,内容安全的概念
内容安全是包过滤技术中正在兴起的一个重要的分支,也是目前最活跃的安全领域。它是基于内容安全的一项技术。
内容安全涵盖如下 3个方面。
( 2)基于内容的破坏内容破坏的典型是带有病毒的文件,是被篡改了的正常文件上带有病毒特征代码。这些代码在被执行的时候,具有有害的特性。
( 1)违禁内容的传播违禁内容是指内容本身要表达的意思,违反了某种规则或安全策略,尤其是政策法规允许的范畴。例如,传播关于 SRARS的谣言,发布关于恐怖袭击的谣言,制造或传播淫秽色情等,都是违法的。违禁内容的危害是对思想造成破坏。在很多情况下,违禁内容的表达方式和格式并没有什么特殊,因此无法从表达方式或格式来加以禁止,必须从语意和关键词上理解该内容是违禁的。
( 3)基于内容的攻击基于内容的攻击,是以内容为载体容,以应用程序为攻击对象,目标是取得对应用主机的控制权。例如,在 web上表格填写数据时,填写恶意格式,导致 CGI程序执行错误,引发应用程序出错。在 web服务和 web应用盛行的今天,基于内容的攻击越来越流行,危害越来越大,对电子政务和电子商务是一个巨大的灾难。
2,内容安全解决方案
( 1)禁止违禁内容传播的解决方案禁止违禁内容的传播的方法,一是对违禁内容进行内容过滤,如基于关键词的内容过滤,
基于语意的内容过滤。前者在技术上很成熟,准确度很高,漏报率低,但误报率高。二是对违禁内容的来源进行访问控制,这种方式对已经知道恶意传播的对象非常有效。到目前为止,还没有禁止违禁内容传播的理想的理论方法,在必须执行违禁内容控制的情况下,多采用人工和技术相结合的策略。
( 2)防止基于内容破坏的解决方案防病毒是目前采用最多的防止基于内容破坏的解决方案。通过查找内容中的恶意病毒代码来消除基于内容的破坏。防病毒软件同样存在漏报和误报的问题。最关键的问题是,
每次总数病毒爆发在前,才能取得病毒特征代码,然后才能防止该病毒。预防已知病毒的实现较为成功,但预防未知病毒的能力较弱。为了解决防病毒软件这方面的不足,出现了很多的相关技术如专家会诊,引发病毒隔离区等,来补充和弥补方病毒软件的不足。
( 3)防止基于内容攻击的解决方案基于内容的攻击已经超过违禁内容传播和病毒,成为目前最热门的威胁之一。目前存在的十大漏洞和风险包括:参数无效、访问控制失效、账户和会话管理失效、跨站点脚本、
缓冲溢出、恶意命令、错误处理问题、不安全加密、远程管理缺陷、配置错误。目前已经出现一类新的产品称为应用安全代理来解决基于内容攻击的问题。
与传统的过滤方法相比,基于内容的过滤技术需要耗费更多的计算资源。如何突破内容过滤的性能瓶颈,已经成为用户和厂商普遍关心的问题。
3,内容扫描原理在接收到网络流量后,安全网关进行内容扫描,定向到 TCP/IP 堆栈,
其他数据流直接定向到状态检测引擎,按基本检测方式进行处理。高性能的硬件体系结构协助 TCP/IP 堆栈进行协议内容的处理。内容协议数据包括 Web流量( HTTP) 和 E-mail 流量( SMTP,POP3,IMAP) 。
当接收到内容数据流时,TCP/IP 堆栈建立 Client 和 Server会话,开始数据包的传输。堆栈接收数据包,然后转化成内容数据流。
服务分析器根据数据流服务类型分离内容数据流,传送数据流到一个命令解析器中。
命令解析器定制和分析每一个内容协议,分析内容数据流,检测病毒和蠕虫。如果检测到信息流是一个 HTTP 数据流,则命令解析器检查上载和下载的文件 ; 如果数据是 Mail 类型,则检查邮件的附件。
如果数据流包含附件或上载 /下载文件,附件和文件将传输到病毒扫描引擎,所有其他内容传输到内容过滤引擎。如果内容过滤启动,数据流将根据过滤的设置进行匹配,通过或拒绝数据。
3.2 网络地址转换
1,NAT概述网络地址转换 (Network Address Translation,NAT)就是使用使用两套 IP地址 —— 内部 IP地址 (也称私有 IP地址)和 外部 IP地址 (也称公共 IP地址)。当受受保护的内部网连接到 Internet并且有用户要访问 Internet时,它首先使用自己网络的内部 IP地址,到了 NAT后,
NAT就会从公共 IP地址集中选一个未分配的地址分配给该用户,该用户即可使用这个合法的 IP地址进行通信。同时,对于内部的某些服务器如 Web服务器,网络地址转换器允许为其分配一个固定的合法地址。外部网络的用户就可通过 NAT来访问内部的服务器。这种技术既缓解了少量的 IP地址和大量的主机之间的矛盾 —— 被保护网络中的主机不必拥有固定的 IP地址;又对外隐藏了内部主机的 IP地址,提高了安全性。
2,NAT的工作过程
NAT的工作过程如 图 3.4所示。
NAT源地址
abc.com.cn
目的地址
234.56.7.8
源地址
234.56.7.8
目的地址
abc.com.cn
源地址
abc.com.cn
目的地址
123.456.111.3
源地址
123.456.111.3
目的地址
abc.com.cn
Internet 被保护内部网源 IP包目的 IP包图 3.4 NAT的工作过程在内部网络通过安全网卡访问外部网络时,将产生一个映射记录。系统将外出的源地址和源端口映射为一个伪装的地址和端口,让这个伪装的地址和端口通过非安全网卡与外部网络连接,这样对外就隐藏了真实的内部网络地址。在外部网络通过非安全网卡访问内部网络时,它并不知道内部网络的连接情况,而只是通过一个开放的 IP地址和端口来请求访问。 NAT据预先定义好的映射规则来判断这个访问是否安全:当符合规则时,防火墙认为访问是安全的,可以接受访问请求,也可以将连接请求映射到不同的内部计算机中;当不符合规则时,被认为该访问是不安全的,不能被接受,外部的连接请求即被屏蔽。网络地址转换的过程对于用户来说是透明的,不需要用户进行设置,用户只要进行常规操作即可。
3,使用 NAT的优缺点
NAT使内部网络的计算机就不可能直接访问外部网络:通过包过滤分析,当所有传入的包如果没有专门指定配置到 NAT
,就将之丢弃。同时使所有内部的 IP地址对外部是隐蔽的。
因此,网络之外没有谁可以通过指定 IP地址的方式直接对网络内的任何一台特定的计算机发起攻击。 NAT还可以使多个内部主机共享数量有限的 IP地址,还可以启用基本的包过滤安全机制。
NAT虽然可以保障内部网络的安全,但也是一些局限。例如
,内网用户可以利用某些木马程序通过 NAT做外部连接。
3.3 代理技术
应用于网络安全的代理( Proxy) 技术,来自代理服务器
( Proxy Server) 技术。代理服务器是用户计算机与
Internet之间的中间代理机制,它采用客户机 /服务器工作模式。代理服务器位于客户与 Internet上的服务器之间。
请求由客户端向服务器发起,但是这个请求要首先被送的代理服务器;代理服务器分析请求,确定其是合法的以后,
首先查看自己的缓存中有无要请求的数据,有就直接传送给客户端,否则再以代理服务器作为客户端向远程的服务器发出请求;远程服务器的响应也要由代理服务器转交给客户端,同时代理服务器还将响应数据在自己的缓存中保留一份拷贝,以被客户端下次请求时使用。 图 3.5为代理服务的结构及其数据控制和传输过程示意图。
图 3.5 代理服务的结构及其数据控制和传输过程
应用于网络安全的代理技术,也是要建立一个数据包的中转机制,并在数据的中转过程中,加入一些安全机制。
被 保护 网络内部客户服务器客户代理访问控制代 理服务器代理服务请求 请求转发转发应答 应答
代理技术可以在不同的网络层次上进行。主要的实现层次在应用层和运输层,分别称为应用级代理和电路级代理。它们的工作原理有所不同。
3.3.1 应用级代理
1,概述应用级代理没有通用的安全机制和安全规则描述,它们通用性差,对不同的应用具有很强的针对性和专用性。它们不但转发流量而且对应用层协议做出结实。 图 3.6为其示意图。显然,如果不为特定的应用程序安装代理程序代码,该服务是不会被支持的,不能建立任何连接。
这种方式可以拒绝任何没有明确配置的连接,从而提供了额外的安全性和控制性。
FTP代理 TELNET代理 HTTP代理 POP代理 SMTP代理 DNS代理
out
in in
out
in
out out
in in
out
in
out
…
外部客户内部服务器客户 — 代理连接代理 — 服务器连接外部内部图 3.6 应用级代理工作原理
2,应用级代理的工作特点图 3.7为应用级代理的基本工作过程。
内部接口外部接口客户 公共服务时间请求页
URL检查请求页返回页返回页内容过滤图 3.7 应用级代理的基本工作过程下面介绍应用级代理的一些功能。
( 1) 阻断路由与 URL
代理是通过侦听网络内部客户的服务请求,然后把这些请求发向外部网络。在这一过程中,代理要重新产生服务级请求。例如,一个 Web
客户向外部发出一个请求时,这个请求会被代理服务器“拦截”,再由代理服务器向目标服务器发出一个请求。服务协议(如 HTTP) 才可以通过代理服务器,而 TCP/IP和其他低级协议不能通过,必须由代理服务器重新产生。因此外部主机与内部机器之间并不存在直接连接,
从而可以防止传输层因源路由、分段和不同的服务拒绝造成的攻击,
确保没有建立代理服务的协议不会被发送的外部网络。
( 2) 隐藏客户应用级代理既可以隐藏内部 IP地址,也可以给单个用户授权,即使攻击者盗用了一个合法的 IP地址,也通不过严格的身份认证。因此应用级代理比数据包过滤具有更高的安全性。但是这种认证使得应用网关不透明,用户每次连接都要受到认证,这给用户带来许多不便。这种代理技术需要为每个应用写专门的程序。
( 3)安全监控代理服务是一种服务程序,它位于客户机与服务器之间,完全阻挡了二者间的数据交流。从客户机来看,代理服务器相当于一台真正的服务器;而从服务器来看,代理服务器又是一台真正的客户机。当客户机需要使用服务器上的数据时,首先将数据请求发给代理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器将数据传输给客户机。由于外部系统与内部服务器之间没有直接的数据通道,外部的恶意侵害也就很难伤害到企业内部网络系统。
3.3.2 电路级代理
1,电路级代理概述电路级代理即通常意义的代理服务器,它适用于多个协议,但不能解释应用协议,需要通过其他方式来获得信息,只对数据包进行转发。电路级代理也称电路级网关,其工作原理如 图 3.8所示。
传输层网络层数据链路 /物理层电路级网关
TCP端口 TCP端口图 3.8 电路级网关工作原理电路级网关依赖于 TCP连接,并且只用来在两个通信端点之间转接,进行简单的字节复制式的数据包转接。数据包处理是要在应用层进行。
电路级网关对外像一个代理,对内又像一个过滤器。这种特点使它可以为各种不同的协议提供服务。简单的电路级网关仅传输 TCP的数据段,
增强的电路级网关还具有认证作用。
2,SOCKS代理技术
SOCKS协议(套接字协议)是一个电路级网关协议。一个
SOCKS代理主要由两部分组成:
( 1) SOCKS客户程序,经过修改的 Internet客户程序,改造的目的是使运行客户程序的主机从与 Internet通信改为与运行 SOCKS代理的主机通信。
( 2) SOCKS服务程序,既可以 Internet通信又可以和内部网络通信的程序。
SOCKS代理的工作过程
SOCKS代理的工作过程如下:
对用户来说,受保护网与外部网的信息交换是透明的,感觉不到代理的存在
,那是因为网络用户不需要登录到代理上。但是客户端的应用软件必须支持
,Socketsified API”,受保护网络用户访问公共网所使用的 IP地址也都是代理服务器的 IP地址。
1)当一个经过 SOCKS化的客户程序要连接到 Internet时,
SOCKS就会截获这个这个连接,将之连接到运行 SOCKS服务器的主机上。
2)连接建立后,SOCKS客户程序发送如下信息:
版本号
连接请求命令
客户端端口号
发起连接的用户名
3)经过确认后,SOCKS服务器才与外部的服务器建立连接。
3.4 网络防火墙
1,防火墙的概念在建筑群中,防火墙 (Fire Wall)用来防止火灾蔓延。在计算机网络中,防火墙是设置在 可信任的内部网络 和 不可信任的外界 之间的一道屏障,来保护计算机网络的资源和用户的声誉,使一个网络不受来自另一个网络的攻击。
2,防火墙的基本功能在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和 Internet之间的任何活动,
保证了内部网络的安全。作为一个中心“遏制点”,它可以将局域网的安全管理集中起来,屏蔽非法请求,防止跨权限访问并产生安全报警。
具体地说,防火墙有以下一些功能:
防火墙的一些功能
( 1)作为网络安全的屏障防火墙由一系列的软件和硬件设备组合而成,它保护网络中有明确闭合边界的一个网块。所有进出该网块的信息,都必须经过防火墙,将发现的可疑访问拒之门外。当然,防火墙也可以防止未经允许的访问进入外部网络。因此,防火墙的屏障作用是双向的,即进行内外网络之间的隔离,包括地址数据包过滤、代理和地址转换。
( 2)强化网络安全策略防火墙能将所有安全软件(如口令、加密、身份认证、审计等)配置在防火墙上,形成以防火墙为中心的安全方案。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。例如在网络访问时,一次一密口令系统和其它的身份认证系统完全可以不必分散在各个主机上,而集中在防火墙一身上。
( 3)对网络存取和访问进行监控审计审计是一种重要的安全措施,用以监控通信行为和完善安全策略,检查安全漏洞和错误配置,并对入侵者起到一定的威慑作用。报警机制是在通信违反相关策略以后,以多种方式如声音、邮件、电话、手机短信息及时报告给管理人员。
防火墙的审计和报警机制在防火墙体系中是很重要的,只有有了审计和报警
,管理人员才可能知道网络是否受到了攻击。另外,防火墙的该功能也有很大的发展空间,如日志的过滤、抽取、简化等等。日志还可以进行统计、分析、(按照特征)存储(在数据库中),稍加扩展便又是一个网络分析与查询模块。
由于日志数据量比较大,主要通过两种方式解决,一种是将日志挂接在内网的一台专门存放日志的日志服务器上;一种是将日志直接存放在防火墙本身的存储器上。 目前这两种方案国内(包括国外)都有使用。
如果所有的访问都经过防火墙,防火墙就能记录下这些访问并作出日志记录
,同时也能提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行适当的报警,并提供网络是否受到监测和攻击的详细信息。
收集一个网络的使用和误用情况也非常重要。这样可以对网络进行需求分析和威胁分析,清楚防火墙是否能够抵挡攻击者的探测和攻击,并且清楚防火墙的控制是否充足。
( 4)远程管理管理界面一般完成对防火墙的配置、管理和监控。
管理界面设计直接关系到防火墙的易用性和安全性。目前防火墙主要有两种远程管理界面,web界面 和 GUI界面 。对于硬件防火墙,一般还有串口配置模块和或控制台控制界面。
管理主机和防火墙之间的通信一般经过加密。 国内比较普遍采用自定义协议、一次性口令进行管理主机与防火墙之间通信(适用 GUI界面)。
GUI界面可以设计的比较美观和方便,并且可以自定义协议,也为多数厂商使用。一般使用语言 VB,VC,有部分厂家使用 Java开发,并把此作为一个卖点(所谓跨平台)。 Web界面也有厂商使用,然而由于防火墙因此要增加一个 CGI解释部分,减少了防火墙的可靠性( GUI界面只需要一个简单的后台进程就可以),故应用不是太广泛。
( 5)防止攻击性故障蔓延和内部信息的泄露防火墙也能够将隔开网络中一个网块(也称网段)与另一个网块隔开
,从而限制了局部重点或敏感网络安全问题对全局网络造成的影响。
此外,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至因此而暴漏了内部网络的某些安全漏洞。使用防火墙就可以隐蔽那些透漏内部细节如 Finger,DNS等服务。
Finger显示了主机的所有用户的注册名、真名,最后登录时间和使用
shell类型等。但是 Finger显示的信息非常容易被攻击者所获悉。攻击者可以知道一个系统使用的频繁程度,这个系统是否有用户正在连线上网,这个系统是否在被攻击时引起注意等等。防火墙可以同样阻塞有关内部网络中的 DNS信息,这样一台主机的域名和 IP地址就不会被外界所了解。
( 6) MAC与 IP地址的绑定
MAC与 IP地址绑定起来,主要用于防止受控(不可访问外网)的内部用户通过更换 IP地址访问外网。这其实是一个可有可无的功能。不过因为它实现起来太简单了,内部只需要两个命令就可以实现,所以绝大多数防火墙都提供了该功能。
( 7)流量控制(带宽管理)和统计分析、流量计费流量控制可以分为基于 IP地址的控制和基于用户的控制。基于 IP地址的控制是对通过防火墙各个网络接口的流量进行控制,基于用户的控制是通过用户登录来控制每个用户的流量,从而防止某些应用或用户占用过多的资源。并且通过流量控制可以保证重要用户和重要接口的连接。
( 8)其他特殊功能流量统计是建立在流量控制基础之上的。一般防火墙通过对基于 IP、
服务、时间、协议等等进行统计,并可以与管理界面实现挂接,实时或者以统计报表的形式输出结果。流量计费从而也是非常容易实现的。
3.4.2 网络防火墙构建与基本结构举例
1,屏蔽路由器 ( Screening Router) 和屏蔽主机 ( Screening Host)
防火墙最基本、也是最简单技术是数据包过滤。而过滤规则可以安装在路由器上,也可以安装在主机上。具有数据包过滤功能的路由器称为屏蔽路由器。具有数据包过滤功能的主机称为屏蔽主机。 图 3.9为包过滤防火墙的两种基本结构。
防火墙外部网屏蔽路由器 内部网图 3.9 路由过滤式防火墙路由器是内部网络与 Internet连接的必要设备,是一种“天然”的防火墙
,它除具有路由功能之外,还安装了分组 /包过滤(数据包过滤或应用网关
)软件,可以决定对到来的数据包是否要进行转发。
这种防火墙实现方式相当简捷,效率较高,在应用环境比较简单的情况下,能够以较小的代价在一定程度上保证系统的安全。但由于过滤路由器是在网关之上的包过滤,因此它允许被保护网络的多台主机与 Internet的多台主机直接通信。这样,其危险性便分布在被保护网络内的全部主机以及允许访问的各种服务器上,随着服务的增加,网络的危险性也增加。其次,也是特别重要的一点是,这种网络由于仅靠单一的部件来保护系统,一旦部件被攻破,就再也没有任何设防了,并且当防火墙被攻破时几乎可以不留下任何痕迹,甚至难于发现已发生的攻击。它只能根据数据包的来源、目标和端口等网络信息进行判断,无法识别基于应用层的恶意侵入,如恶意的 Java
小程序以及电子邮件中附带的病毒。有经验的黑客很容易伪造 IP地址,骗过包过滤型防火墙,一旦突破防火墙,即可对主机上的软件和配置漏洞进行攻击。进一步说,由于数据包的源地址、目标地址以及 IP的端口号都在数据包的头部,很有可能被窃听或假冒;并且数据包缺乏用户日志( log) 和审计信息( audit),不具备登录和报告性能,不能进行审核管理,因而过滤规则的完整性难以验证,所以安全性较差。
2,双宿主网关( Dual Homed Gateway)
如 图 3.10所示,双宿主主机是一台有两块 NIC的计算机,每一块 NIC各有一个 IP地址。所以它可以是 NAT和代理两种安全机制。如果 Internet上的一台计算机想与被保护网( Intranet) 上的一个工作站通信,必须先行注册,与它能看到的 IP地址联系;代理服务器软件通过另一块 NIC启动到
Intranet的连接。
外部网双穴主机 内部网图 3.10 双宿主机网关防火墙双宿主网关使用代理服务器简化了用户的访问过程,它将被保护网络与外界完全隔离,由域名系统的信息不会通过被保护系统传到外部,所以系统的名字和 IP地址对 Internet是隐蔽的,做到对用户全透明。由于该防火墙仍是由单机组成,没有安全冗余机制,一旦该“单失效点”出问题
,网络将无安全可言。
3,堡垒主机( Bastion Host)
堡垒主机有如下特性:
( 1)堡垒主机的概念
· 它是专门暴露在外部网络上的一台计算机,是被保护的内部网络在外网上的代表,并作为进入内部网的一个检查点。
· 它面对大量恶意攻击的风险,并且它的安全对于建立一个安全周边具有重要作用,因此必须强化对它的保护,使风险降至最小。
· 它通常提供公共服务,如邮件服务,WWW服务,FTP服务,WWW
服务,DNS服务等。
· 堡垒主机与内部网络是隔离的。它不知道内部网络上的其他主机的任何系统细节,如内部主机的身份认证服务和正在运行的程序的细节
。这样,对堡垒主机的攻击不会殃及内部网络。
所以,堡垒主机是一个被强化的、被暴露在被保护网络外部的、可以预防进攻的计算机。
( 2) 单连点堡垒主机过滤式防火墙单连点堡垒主机过滤式防火墙有 图 3.11所示的结构。它实现了网络层安全(包过滤)和应用层安全(代理),具有比单纯包过滤更高的安全等级。
外部网过滤路由器内部网堡垒主机信息服务器 专用网主机图 3.11 单连点堡垒主机过滤式防火墙在该系统中,堡垒主机被配置在过滤路由器的后方,并且过滤规则的配置使得外部主机只能访问堡垒主机,发往内部网的其他业务流则全部被阻塞。对于内部主机来说,由于内部主机和堡垒主机同在一个内部网络上,所以机构的安全策略可以决定内部系统允许直接访问外部网,还是要求使用配置在堡垒主机上的代理服务。当配置路由器的过滤规则,使其仅仅接收来自堡垒主机的内部业务流时,内部用户就不得不使用代理服务。
主机过滤防火墙具有双重保护,从外网来的访问只能访问到堡垒主机,而不允许访问被保护网络的其他资源,有较高的安全可靠性。但是它要求考虑到堡垒主机和路由器两个方面的安全性。
( 3) 双连点堡垒主机过滤式防火墙双连点堡垒主机过滤式防火墙有 图 3.12所示的结构。它比连点堡垒主机过滤式防火墙有更高的安全等级。由于堡垒主机具有两个网络接口,除了外部用户可以直接访问信息服务器外,外部用户发往内部网络的业务流和内部系统对外部网络的访问都不得不经过堡垒主机,以提高附加的安全性。
外部网屏蔽路由器内部网堡垒主机信息服务器 内部主机图 3.12 双连点堡垒主机过滤式防火墙在这种系统中,由于堡垒主机成为外部网络访问内部网络的唯一入口,
所以对内部网络的可能安全威胁都集中到了堡垒主机上。因而对堡垒主机的保护强度,关系到整个内部网的安全。
4,屏蔽子网( Screened Subnet) 防火墙被保护网络和 Internet之间设置一个独立的子网作为防火墙,就是子网过滤防火墙。具体的配置方法是在过滤主机的配置上再加上一个路由器,
形成具有外部路由过滤器、内部路由过滤器、应用网关等三道防线的过滤子网,如 图 3.13所示。
外部网堡垒主机信息服务器 内部网内部路由器外部路由器
DMZ
图 3.13 子网过滤防火墙配置在子网过滤防火墙中,外部过滤路由器用于防范通常的外部攻击(如源地址欺骗和源路由攻击),并管理外部网到过滤子网的访问。外部系统只能访问到堡垒主机,通过堡垒主机向内部网传送数据包。内部过滤路由器管理过滤子网与内部网络之间的访问,内部系统只能访问到堡垒主机,通过堡垒主机向外部网发送数据包。简单地说,任何跨越子网的直接访问都是被严格禁止的。从而在两个路有器之间定义了一个“非军事区”( Demilitarized Zone,DMZ)。 这种配置的防火墙具有最高的安全性,但是它要求的设备和软件模块较多,价格较贵且相当复杂。
3.4.3 网络防火墙的局限
1,防火墙可能留有漏洞防火墙应当是不可渗透或绕过的。实际上,防火墙往往会留有漏洞。
如 图 3.14所示,如果内部网络中有一个未加限制的拨出,内部网络用户就可以(用向 ISP购买等方式)通过 SLIP( Serial Line Internet
Protocol,串行链路网际协议)或 PPP( Pointer-to-Pointer protocol,点到点协议)与 ISP直接连接,从而饶过防火墙。
Internet
防火墙专用网安全漏洞
ISP
图 3.14 防火墙的漏洞防火墙可能留有的漏洞由于防火墙依赖于口令,所以防火墙不能防范黑客对口令的攻击。前不久,两个在校学生编了一个简单的程序,通过对波音公司的口令字的排列组合,试出了开启内部网的钥匙,从网中搞到了一张授权的波音公司的口令表,将口令一一出卖。所以美国马德里兰州的一家计算机安全咨询机构负责人诺尔 ·马切特说:“防火墙不过是一道较矮的篱笆墙”。黑客像耗子一样,能从这道篱笆墙上的窟窿中出入。这些窟窿常常是人们无意中留下来的,甚至包括一些对安全性有清醒认识的公司。例如,由于 Web服务器通常处于防火墙体系之外,而有些公司随意扩展浏览器的功能,使之含有 Applet编写工具。黑客们便可以利用这些工具钻空子,接管 Web服务器,接着便可以从 Web服务器出发溜过防火墙,大摇大摆地“回到”内部网中,好像他们是内部用户,刚刚出来办完事又返回去一样。
2,防火墙不能防止内部出卖性攻击或内部误操作显然,当内部人员将敏感数据或文件拷贝在优盘等移动存储设备上提供给外部攻击者时,防火墙是无能为力的。此外,
防火墙也不能防范黑客防火墙黑客有可能伪装成管理人员或新职工,以骗取没有防范心理的用户的口令或假用他们的临时访问权限实施的攻击。
3,防火墙不能防止数据驱动式的攻击有些数据表面上看起来无害,可是当它们被邮寄或拷贝到内部网的主机中后,就可能会发起攻击,或为其他入侵准备好条件。这种攻击就称为数据驱动式攻击。防火墙无法御防这类攻击。
3.5 网络的物理隔离技术
3.5.1 物理隔离的概念
1,问题的提出
20世纪末期,“政府上网”热潮把我国的信息化带进了一个新的高度。政府上网不仅表明 Internet已经进入了一个非常重要的领域,而且为信息系统安全技术提出了新的课题。由于政府中有许多敏感的数据以及大量机密数据,也有最为国民关心的信息。目前虽然开发了各种防火墙、病毒防治系统以及入侵检测、
安全预警、漏洞扫描等安全技术,但却并没有完全阻止了入侵,内部网络被攻破的事件屡有发生,据统计有近半数的防火墙被攻破过。为此,国家保密局
2000年 1月 1日起实施的《计算机信息系统国际联网保密管理规定》第二章第六条要求:“涉及国家机密的计算机信息系统,不得直接或间接地与国际互联网或其他公共信息网络相连接,必须实行物理隔离。”
学术界一般认为,最早提出物理隔离技术的,是以色列和美国的军方,主要用以解决涉密网络与公共网络连接时的安全。我国也有庞大的政府涉密网络和军事涉密网络,但是我国的涉密网络与公共网络,特别是与 Internet是无任何关联的独立网络,不存在与 Internet的信息交换,也用不着使用物理隔离网闸解决信息安全问题。所以,在电子政务、电子商务之前,物理隔离网闸在我国因无市场需求,产品和技术发展较慢。
随着我国信息化建设步伐的加快,电子政务的急速展开,物理隔离的问题才突出地提到议事日程上来,成为我国信息安全产业发展的一个新的增长点。
2,关于物理隔离的定义和理解到目前为止,并没有完整的关于物理隔离技术的定义和标准。从不同时期的用词也可以看出,物理隔离技术一直在演变和发展。
较早的用词为 Physical Disconnection。 Disconnection有使断开,切断,不连接的意思,直译为物理断开。这是在还没有解决涉密网与 Internet连接后出现的很多安全问题的技术手段之前说法,在无可奈何的情况下,只有先断开再说。
后来使用了词汇 Physical Separation。 Separation有分开,分离,间隔和距离的意思
,直译为物理分开。但是光分开不是办法,理智的策略应当是为该连即连,不该连则不连。为此要把该连的部分与不该连的部分分开。于是有了 Physical Isolation。
Isolation有孤立,隔离,封闭,绝缘的意思,直译为物理封闭。事实上,没有与
Internet相连的系统不多,因此,希望能将一部分高安全性的网络隔离封闭起来。
于是开始使用 Physical Gap。 Gap有豁口,裂口,缺口和差异的意思,直译为物理隔离,意为通过制造物理的豁口,来达到隔离的目的。由于 Physical这个词显得非常僵硬,于是有人用 Air Gap来代替 Physical Gap。 Air Gap意为空气豁口,很明显在物理上是隔开的。但有人不同意,理由是空气豁口就“物理隔离”了吗?电磁辐射
,无线网络,卫星等都是空气豁口,却没有物理隔离,甚至连逻辑上都没有隔离。
于是,E-Gap,Netgap,I-Gap等都出来了。现在,一般称 Gap Technology,意为物理隔离,成为 Internet上一个专用名词。
物理隔离的内涵这也是一个随认识和技术进步不断发展的概念。
最初的物理隔离是建立两套网络系统和计算机设备:一套用来用于内部办公,一套用于与 Internet连接。这样的两套互不连接的系统,不仅成本高,
而且极为不便。这一矛盾,促进了物理隔离设备的开发,也迫切需要一套技术标准和方案。
2002年《国家信息化领导小组关于我国电子政务建设的指导意见》( 13号文件)提出了“十五”期间,我国电子政务建设的主要任务之一是:“建设和整合统一的电子政务网络。为适应业务发展和安全保密的要求,有效遏制重复建设,要加快建设和整合统一的网络平台。电子政务网络由政务内网和政务外网构成,两网之间物理隔离,政务外网与 Internet之间逻辑隔离。政务内网主要是副省级以上政务部门的办公网,与副省级以下政务部门的办公网物理隔离。政务外网是政府的业务专网,主要运行政务部门面向社会的专业性服务业务和不需在内网上运行的业务。要统一标准,利用统一平台,促进各个业务系统的互联互通、资源共享。要用一年左右的时间,基本形成统一的电子政务内外网络平台,在运行中逐步完善。”
政务网
在公网和外网之间实行逻辑隔离;
简单地说,如 图 3.15所示,政务网应当跨越公网、外网和内部网。其安全要求是:
公网 t
内部网外网逻辑隔离 物理隔离图 3.15 电子政务的三网
在内网和外网之间实行物理隔离。
对物理隔离的理解对物理隔离的理解表现为以下几个方面:
阻断网络的直接连接,即没有两个网络同时连在隔离设备上;
阻断网络的 Internet逻辑连接,即 TCP/IP的协议必需被剥离,将原始数据通过 P2P的非 TCP/IP连接协议透过隔离设备传递;
隔离设备的传输机制具有不可编程的特性,因此不具有感染的特性;
任何数据都是通过两级移动代理的方式来完成,两级移动代理之间是物理隔离的;
隔离设备具有审查的功能;
隔离设备传输的原始数据,不具有攻击或对网络安全有害的特性。就像 txt文本不会有病毒一样,也不会执行命令等。
强大的管理和控制功能。
隔离的内容从隔离的内容看,隔离分为网络隔离和数据隔离:
数据隔离主要是指存储设备的隔离 —— 一个存储设备不能被几个网络共享。
网络隔离就是把被保护的网络从公开的、无边界的、自由的环境中独立出来。
只有实现了两种隔离,才是真正意义上的物理隔离。
3,逻辑隔离部件与物理隔离部件物理隔离与逻辑隔离有很大的不同。物理隔离的哲学是不安全就不连网,要绝对保证安全;逻辑隔离的哲学是在保证网络正常使用的情况下,尽可能安全。在技术上,实现逻辑隔离的方式有很多,但主要是防火墙。
中华人民共和国公安部 2001年 12月 24日发布( 2002年 5月 1日实施)的,端设备部件安全技术要求,( GA370-2001) 指出:
( 1)物理隔离部件的安全功能应保证被隔离的计算机资源不能被访问(至少应包括硬盘、软盘和光盘),计算机数据不能被重用(至少应包括内存)。
( 2)逻辑隔离部件的安全功能应保证被隔离的计算机资源不能被访问,只能进行隔离器内外的原始应用数据交换。
( 3)单向隔离部件的安全功能应保证被隔离的计算机资源不能被访问(至少应包括硬盘 /硬盘分区、软盘和光盘),计算机数据不能被重用(至少应包括内存)。
( 4)逻辑隔离部件应保证其存在泄露网络资源的风险不得多于开发商的评估文档中所提及的内容。
( 5)逻辑隔离部件的安全功能应保证在进行数据交换时数据的完整性。
( 6)逻辑隔离部件的安全功能应保证隔离措施的可控性,隔离的安全策略应由用户进行控制,开发者必须提供可控方法。
( 7)单向隔离部件使数据流无法从专网流向外网,数据流能在指定存储区域从公网流向专网;对专网而言,能使用外网的某些指定的要导入的数据。
隔离部件连接示意图图 3.16为使用物理隔离部件和单向隔离部件进行连接的示意图。
外网 t
专网存储设备公网存储设备计算机专网物理隔离部件 t
外网 t
交换存储设备公网存储设备计算机专网单向隔离部件 t
专网存储设备
( a) 用物理隔离部件连接 ( b) 用单向隔离部件连接图 3.16 物理隔离部件和单向隔离部件的连接示意图
4,物理隔离的技术路线目前物理隔离的技术路线有三种:
1) 网络开关( Network Switcher) 是比较容易理解的一种。
在一个系统里安装两套虚拟系统和一个数据系统,数据被写入到一个虚拟系统,然后交换到数据系统,再交换到另一个虚拟系统。网络隔离就是把被保护的网络从公开的、无边界的、自由的环境中独立出来。
2)实时交换( Real-time Switch),相当于在两个系统之间,共用一个交换设备,交换设备连接到网络 A,得到数据,
然后交换到网络 B。
3)单向连接( One Way Link),早期指数据向一个方向移动,一般指从高安全行的网络向安全性低的网络移动。
3.5.2 网络物理隔离基本技术目前物理隔离技术主要在如下三个网络位置上实施:
与此对应,实现网络物理隔离的技术主要有,网络安全隔离卡技术、安全集线器技术和单主板隔离计算机技术。
1)客户端物理隔离:采用隔离卡使一台计算机既连接内网又连接外网,在两个网上分时地工作,在保证内外网络隔离的同时,资源节省、
工作方便。
2)集线器物理隔离:在集线器处的物理隔离常常要与客户端的物理隔离相结合,它可以使客户端使用一条网线由远端切换器连接双网,
实现一台工作站连接两个网络的目的。
3)服务器端物理隔离:它采用复杂的软硬件技术,实现在服务器端的数据过滤和传输,使内外网之间同一时刻没有连线,能快速、分时地传递数据。
1,网络安全隔离卡技术网络安全隔离卡是一个硬件插卡,可以在物理上将计算机划分成两个独立的部分,
每一部分都有自己的的“虚拟”硬盘;
内部网络连接外部网络安全区公共区
S
P
网络安全隔离卡图 3.17 网络安全隔离卡的工作方式网络安全隔离卡设置在 PC最低层的物理部件上,卡的一边通过 IDE总线连接主板,
另一边连接 IDE硬盘。 PC机的硬盘被分割成两个物理区:
· 安全区,只与内部网络连接;
· 公共区,只与外部网络连接。
如 图 3.17所示,网络安全隔离卡就像一个分接开关,在 IDE硬件层上,由固件控制磁盘通道,任何时刻计算机只能与一个数据分区以及相应的网络连通。于是算机也因此被分为安全模式和公共模式,并且某一时刻只可以在一个模式下工作。两个模式转换时,所有的临时数据都会被彻底删除。
两个状态各有自己独立的操作系统,并分别导入,保证两个硬盘不会同时被激活。
两个分区不可以直接交换数据,但是可以通过专门设置的中间功能区进行,或通过设置的安全通道使数据由公共区向安全区转移(不可逆向)。
内部网络连接外部网络安全区公共区
S
P
网络安全隔离卡图 3.17 网络安全隔离卡的工作方式
· 在安全状态时,主机只能使用硬盘的安全区与内部网连接,此时外部网是断开的,
硬盘的公共区也是封闭的;
· 在公共状态时,主机只能使用硬盘的公共区与外网连接,此时与内网是断开的,且硬盘的安全区是封闭的。
安全状态转换到公共环境式的操作在安全区及内网连接状态下可以禁用软驱、光驱等移动存储设备,防止内部数据泄密。要转换到公共环境时,须进行如下操作:
按正常方式退出操作系统;
这些操作是由网络安全隔离卡自动完成的。为了便于用户从
Internet上下载数据,特设的硬盘数据交换区,通过读写控制只允许数据从外网分区向内网分区单向流动。
关闭计算机;
将安全硬盘转换为公共硬盘;
将 S/P开关转换到公共网络。
2,隔离集线器技术如 图 3.18所示,网络安全集线器是一种多路开关切换设备。它与网络安全隔离卡配合使用,并通过对网络安全隔离卡上发出的特殊信号的检测
,识别出所连接的计算机,自动将其网线切换到相应的网络的 HUB上,
从而实现多台独立的安全计算机与内、外两个网络的安全连接与自动切换。
内网 HUB
外网 HUB
隔离集线器网络安全隔 离 卡安全区公共区控制信号图 3.18 网络安全集线器的工作原理
3,单主板隔离计算机技术单主板隔离计算机技术的核心是 双硬盘技术,它将内外网转换功能做入
BIOS中,并将插槽也分为内网和外网。使用方便,也安全,价格介于双主机与隔离卡之间。
这种安全计算机是在较低层的 BIOS上开发的。 BIOS提供信息发送和输出设备的控制,并在 PC主板上形成两个各自独立的由网卡和硬盘构成的网络接入和信息存储环境,并只能在相应的网络环境下才能工作,不可能在一种环境下使用另一种环境下才能使用的设备,包括:
· 对软驱、光驱提供功能限制,在系统引导时不允许驱动器中有移动存储介质。双网计算机提供软驱关闭 /禁用控制。
· 提供双端口设备(打印机接口 /并行接口、串行接口,USB接口,MIDI
接口等)限制。对于 BIOS则由防写跳线防止病毒、非法刷新、破坏等。
3.5.3 网络物理隔离系统方案举例
1,单内网解决方案单网解决方案适合小型单网结构的局域网。对于小规模的政府部门中(如只有
5~15台计算机组成的网络)来说,由于功能比较单一,没有必要划分为几个网络
,同时也只有少数工作站节点机需要通过 Modem等设备接入 Internet。 这样,可以在接入 Internet的工作节点计算机上安装物理隔离部件,让其能够在与内部网络隔离的状态下拨号上网,并确保内部网络的安全。其结构如 图 3.18 所示。
图 3.18 单内网物理隔离方案内网 HUB
外网 HUB
隔离集线器网络安全隔 离 卡安全区公共区控制信号如果没有检测到来自网络安全隔离卡的信号,两个网络都会被切断。这样减少了安全区的工作站被错误地上未分类网络的风险。
这种网络安全隔离集线器与数据安全保护器的设置,允许用户顺利地进行额外的网络工作,避免了向桌面敷设电缆的争论。所有的附属设施被连接在通信机箱与后面的中枢上。此外,数据安全隔离集线器操作是全透明的,无须维修,且对以太网 /快速以太网的标准通信没有任何影响。
2,远程解决方案远程解决方案适合让远程计算机在安全环境下连接到内部安全网络中,
例如一个政府部门的信息中心分布在各处的分支机构中,当查询数据或分支机构向信息中心汇总数据时,需要有非常安全的措施保障网络不受非法侵犯。其结构如 图 3.19所示。
图 3.19 物理隔离的远程解决方案
3,双网解决方案双网解决方案适合中大型机构的局域网布局。这时,可以将一个政府机构的网络分为内部涉密网和外部公共网;其中公共网通过集中出口连接到 Internet( 视需要也可以安装防火墙、入侵检测及防病毒等措施),部分计算机需要能够接入两个网络,但同时又要保证内外网的完全隔离。另外,还有一些机构由于内部功能的划分,本身就有几个分离的网络。采用 图 3.20所示的双网结构,将更好地把这些网络整合在一起,变为一个全范围公共网加上几个内部安全子网的多网互动的有效网格格局。
图 3.20 物理隔离的双网解决方案
3.6 计算机系统的电磁防护
3.6.1 电磁威胁
1,电磁干扰
电磁防护是指对于电磁威胁的计算机防护。电磁威胁从两个方面造成,
电磁干扰和电磁泄露。
电磁干扰( Electromagnetic Interference,EMI) 是指无用的电磁信号对于有用的电磁信号造成的扰乱。一般说来,电磁干扰可以通过两种渠道传输:
· 辐射:电磁干扰信号以电磁波的形式,通过电路偶合,进入其他设备中。
· 传导:电磁干扰信号通过导线等传入其他设备中。
无论通过哪种渠道,非正常进入其他设备中的干扰信号都可能影响这些设备的正常工作。
2,电磁泄漏电磁泄露是指电子设备中的杂散能量向外扩展,并在扩展过程中夹带了设备所处理的数据信号。在一定的条件下,在一定的距离内,重新复原这些信息已经不是难事。
1985年,在法国召开的一次国际计算机安全会议上,年轻的荷兰人范 ·艾克当着各国代表的面,用价值仅仅几百美元的器件对普通电视机进行改造,在楼下的汽车内,接收并显示出了 8层楼上计算机屏幕上显示的图像。国外也有实验表明,银行计算机上显示的密码,竟在马路上就轻易地被截获了。
实际上,计算机的数字信号就是一些高频脉冲信号。这些高频电磁信号会产生与一台小型电台差不多的电磁波辐射。
3.6.2 电磁防护从干扰和泄露两个角度看,电磁防护的基本措施有:
1,屏蔽用电磁屏蔽技术,既可防止电磁波外泄,又可防止外来电磁波的干扰。
2,隔离将需要重点防护的设备从系统中分离出来,加以特别保护。
3,使用低辐射计算机设备计算机辐射主要由 4部分产生:
显示器辐射通信线路辐射主机辐射输出设备辐射低辐射计算机在元器件、集成电路、连线器和 CRT等方面采取防辐射措施。
电磁防护的基本措施(续)
4,使用干扰器干扰器可以根据电子对抗原理,产生电磁噪声,增大辐射信息被截获后破解还原的难度。
5,滤波在电源或信号线上加装合适的滤波器,阻断传导泄露的通道。
6,接地接地可以使杂散能量向大地泄露。
习 题
1,有一个内部网( 192.168.20.0)只与某一台外部主机( 172.1652.55)交换数据。写出位于它们之间的数据包过滤规则。
2,在组建 Intranet时,防火墙是必须的吗?为什么?
3,试述一个防火墙产品应具备哪些基本功能?
4,下面是选择防火墙时应考虑的一些因素,请按你的理解,将它们按重要性排序。
被保护网络受威胁的程度;
受到入侵,网络的损失程度;
网络管理员的经验;
被保护网络的已有安全措施;
网络需求的发展;
防火墙自身管理的难易度;
防火墙自身的安全性。
5,比较包过滤、网络地址转换和代理技术的特点以及适用的环境。
6,列举更多的防火墙系统结构。最好有自己的创意。
习 题(续)
7,查找资料,叙述防火墙测试的内容和方法。
8,查找资料,叙述防火墙选型的基本原则和具体标准。
9,简述攻击防火墙的主要手段。
10,查找资料,简述目前国内外防火墙技术发展的现状。
11,你对防火墙的未来有何设想?
12,收集资料,对当前常用的防火墙产品进行分析比较。
13,详细描述最常用的 3种防火墙产品的用法以及升级方法。
14,浏览最热门的 3个防火墙技术网站,综述目前关于防火墙讨论的热点问题。
15,简述国内外物理隔离技术的现状和发展趋势。
16,简述目前物理隔离产品的特点,并进行优缺点分析。
17,找 3个典型的物理隔离系统进行分析、评价。
18,浏览网站,列举国内有关物理隔离设备的厂家及其他们的产品特点。
本章主要介绍它们及其相关技术。
信息系统隔离技术
3.1 数据过滤技术
3.2 网络地址转换
3.3 代理技术
3.4 网络防火墙
3.5 网络的物理隔离技术
3.6 计算机系统的电磁防护
3.1.1 数据过滤技术概述
1,数据包及其结构在网络中传输的数据是从应用程序那里递交来的。应用程序递交给网络要传输的数据后,网络就要逐层向下,转交给下面的一层去实施,每交到下一层,就要按照本层的协议要求进行一次打包,形成不同协议层中的数据包( Packet),直到物理网络。 图 3.1表明在
TCP/IP网络中数据包的封装与解包过程。图中的虚箭头为发送端的数据封装过程,实箭头表示接收端的数据解包过程。
图 3.1 TCP/IP网络中数据包的封装与解包
图中的虚箭头为发送端的数据封装过程;
数据包体传输层包头包体网络层包头包体链路层包头应用层
SMTP,Telnet,FTP
TCP,UDP,ICMP
传输层
IP
网络层网络接口层
ATM,Ethernet等包的封装数据解包
实箭头表示接收端的数据解包过程。
应当注意,包过滤是根据数据包的特征进行的。其中,主要根据数据包头的一些字段的特征进行。同时,不同的协议所规定的包头格式不同。因此在制定过滤规则前,应当充分了解数据包的格式。前面图 2.8介绍了 TCP数据报的格式,图
2.9介绍了用于以太网的 ARP分组格式,下面在 图 3.2中,还列出了其他一些常用的数据包的格式,供本书后面的讨论中使用。
图 3.2 其它一些数据包的格式类型码 代 码 校验和首部其余部分数据部分
0 … 7 8 … 15
UDP 源端口
UDP 数据区
UDP 目的端口
UDP 数据报长度 UDP 校验和
版本 头标长 服务类型 总 长标 识 标志 片偏移生存时间 协议 报头校验和源 IP地址目的 IP地址
IP分组选项 填充数 据
0 … 3 4 … 7 8 … 15 16 … 18 19 … 23 24 … 31
( a) IP分组格式
( b) UDP数据报格式 ( c) ICMP分组的格式数据包中可以体现数据包特征的有关字段
( 1)源地址( Source Address) 和目的地址( Destination Address)
它们各表明数据包的源 IP地址和目标 IP目的地址。根据地址,还可以判断出数据流的方向:是由外部网络流入内部网络 —— 往内(流入),还是由内部网络流入外部网络 —— 往外(流出)。
( 2)标识符是发送方分配的一个独一无二的编号,用于标识同一数据报中的各分组,以便组装。
( 3)标志 F( Flag)
F共占 3位:
第 1位恒为 0;
第 2位为 0时是可分片,为 1时是不可分片;
第 3位为 0时是最后报片,为 1时是非最后报片。
( 4)片偏移量 FO( Fragment Offset)
FO占 13位,用以标明当前段片在初始 IP分组中的位置,目的主机可以根据 FO来重新组合 IP分组。
( 5)源端口( Source Port) 和目的端口( Destination Port)
在 TCP和 UDP数据包中,源端口和目的端口分别表示本地通信端口和地通信端口。端口号是按照协议类型分配的,所以端口号也表明了所传输的数据包服务的协议类型。
( 6)协议 Prot( Protocol)
在 IP数据包中,“协议字段”用以标识接收的 IP分组中的数据的高层(传输层)协议。高层协议号由 TCP/IP协议中央权威机构 NIC
( Network Information Center) 分配,如,1—— 控制报文协议
ICMP,6—— 传输控制协议 TCP,8—— 外部网关协议 EGP,17—
— 用户数据抱协议 UDP,29—— 传输层协议第 4类 ISO-TP4。
( 7)服务类型 ToS( Type of Service)
在 IP数据包中,ToS描述 IP分组所希望获得的服务质量,占 8位,包括:
低延迟、高吞吐量、高可靠性,各占 1位;
优先级,共 8级,占 3位;
未用 2位。
( 8)数据包内容前面的 7个字段都来自数据包头中,而数据内容则是来自数据包体中。如数据内容中一些关键词可以代表数据内容的某一方面的特征。
对数据包内容的抽取,将会形成依据内容的包过滤规则。这是目前包过滤技术研究的一个重要方面。
表 3.1列出了 RFC 1349[Almquist 1992]对于不同应用建议的 ToS值。
表 3.1 RFC 1349[Almquist 1992]对于不同应用建议的 ToS值应用程序 最小时延 最大吞吐量 最高可靠性 最小费用 十六进制值
Telnet/Rlogin 1 0 0 0 0x10
FTP
控制 1 0 0 0 0x10
数据 0 1 0 0 0x08
任意块数据 0 1 0 0 0x08
TFTP 1 0 0 0 0x10
SMTP
命令 1 0 0 0 0x10
数据 0 1 0 0 0x08
DNS
UDP查询 1 0 0 0 0x10
TCP查询 0 0 0 0 0x00
区域传输 0 1 0 0 0x08
ICMP
差错 0 0 0 0 0x00
查询 0 0 0 0 0x00
任何 IGP 0 0 1 0 0x04
SNMP 0 0 1 0 0x04
BOOTP 0 0 0 0 0x00
NNTP 0 0 0 1 0x02
2,数据包过滤基本准则最早的包过滤是在路由器上进行的。通过对路由表的配置,来决定数据包是否符合过滤规则。数据包的过滤规则由一些规则逻辑描述:一条过滤规则规定了允许数据包流进或流出内部网络的一个条件。
在制定了数据包过滤规则后,对于每一个数据包,路由器会从第一条规则开始诸条进行检查,最后决定该数据包是否符合过滤逻辑。
数据包规则的应用有两种策略:
默认接受,一切未被禁止的,就是允许的。即除明确指定禁止的数据包,其他都是允许通过的。这也称为“黑名单”策略。
默认拒绝,一切未被允许的,就是禁止的。即除明确指定通过的数据包,其他都是被禁止的。这也称为“白名单”策略。
从安全的角度,默认拒绝应该更可靠。
此外,包过滤还有禁入和禁出的区别。前者不允许指定的数据包由外部网络流入内部网络,后者不允许指定的数据包由内部网络流入外部网络。
建立数据包过滤规则的大致步骤如下:
安全需求分析,确定安全策略:根据网络的具体情况,确定需要保护什么,需要提供什么服务,进一步明确所允许和禁止的任务。
将安全策略转化为数据包分组字段的逻辑表达式。
用防火墙提供的过滤规则语法描述过滤逻辑。
按照过滤逻辑对路由器进行设置。
3.1.2 数据包的地址过滤策略
1,地址过滤策略概述按照地址进行过滤是最简单的过滤方式,它的过滤规则只对数据包的源地址、目标地址和地址偏移量进行判断,
这在路由器上是非常容易配置的。对于信誉不好或内容不宜并且地址确定的主机,用这种策略通过简单配置,
就可以将之拒之门外。但是,对于攻击,尤其是地址欺骗攻击的防御,过滤规则的配置就要复杂多了。
下面分几种情形分别考虑。
( 1) IP源地址欺骗攻击对于攻击者伪装内部用户的 IP地址攻击,可以按照下面的原则配置过滤规则:如果发现具有内部地址的数据包到达路由器的外部接口,
就将其丢弃。
显然,这种规则对于外部主机冒充另外一台主机的攻击则无能为力。
( 2)源路由攻击攻击者有时为了躲过网络的安全设施,要为数据包指定一个路由,
这条路由可以使数据包以不期望路径到达目标。对付这种攻击的过滤规则是丢弃所有含有源路由的数据包。
( 3)小分段攻击当一个 IP包太长时,就要对其进行分片传输。分组后,传输层的首部只出现在 IP层的第 1片中。攻击者利用 IP分片的这一特点,往往会建立极小的分片,希望过滤路由器只检查第 1片,而忽略后面的分组。
对付小分段攻击的策略是丢弃 FO为 1的 TCP,UDP数据包。
2,基于地址的过滤规则的设计例 3.1.1 某公司有一 B类网( 123.45)。该网的子网
( 123.45.6.0/24)有一合作网络( 135.79)。管理员希望:
( 1)禁止一切来自 Internet的对公司内网的访问;
( 2)允许来自合作网络的所有子网( 135.79.0.0/16)访问公司的子网( 123.45.6.0/24);
( 3)禁止对合作网络的子网( 135.79.99.0/24)的访问权
(除对全网开放的特定子网外)。
为简单起见,只考虑从合作网络流向公司的数据包,对称地处理逆向数据包只需互换规则行中源地址和目标地址即可。
表 3.2 该公司网络的包过滤规则
表中规则 C是默认规则。
规 则 源 地 址 目 的 地 址 过滤操作
A 135.79.0.0/16 123.45.6.0/24 允许
B 135.79.99.0/24 123.45.0.0/16 拒绝
C 0.0.0.0/0 0.0.0.0/0 拒绝数据包 源地址 目的地址 目标行为操作 ABC行为操作 BAC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (B) 拒绝 (B)
2 135.79.99.1 123.45.6.1 允许 允许 (A) 拒绝 (B)
3 135.79.1.1 123.45.6.1 允许 允许 (A) 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C) 拒绝 (C)
表 3.3 使用样本数据包测试结果
3,3是使用一些样本数据包对表 3.2所示过滤规则的测试结果。
表 3.3 使用样本数据包测试结果
由表 3.3可见,按 ABC的规则顺序,能够得到想要的操作结果;而按 BAC的规则顺序则得不到预期的操作结果,
原本允许的数据包 2被拒绝了。
数据包 源地址 目的地址 目标行为操作 ABC行为操作 BAC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (B) 拒绝 (B)
2 135.79.99.1 123.45.6.1 允许 允许 (A) 拒绝 (B)
3 135.79.1.1 123.45.6.1 允许 允许 (A) 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C) 拒绝 (C)
仔细分析可以发现,表 3.2中用来禁止合作网的特定子网的访问规则 B是不必要的。它正是在 BAC规则集中造成数据包 2被拒绝的原因。如果删除规则 B,得到 表 3.4所示的行为操作。
表 3.4 删除规则 B后的行为操作这才是想要的结果。由此得出两点结论:
数据包 源地址 目的地址 目标行为操作 AC行为操作
1 135.79.99.1 123.45.1.1 拒绝 拒绝 (C)
2 135.79.99.1 123.45.6.1 允许 允许 (A)
3 135.79.1.1 123.45.6.1 允许 允许 (A)
4 135.79.1.1 123.45.1.1 拒绝 拒绝 (C)
正确地制定过滤规则是困难的;
过滤规则的重新排序使得正确地指定规则变得越发困难。
3.1.3 数据包的服务过滤策略
按服务进行过滤,就是根据 TCP/UDP的端口号制定过滤策略。但是,由于源端口是可以伪装的,
所以基于源端口的过滤是会有风险的。同时还需要确认内部服务确实是在相应的端口上。下面进行一些分析。
( 1) 关于外部服务的端口号如果过滤规则完全依赖于外部主机的端口号,例如允许内部主机向外部服务器的邮件发送服务,而且 TCP的端口 25就是常规邮件( STMP) 端口时,这样的配置是安全的。但是,包过滤路由器是无法控制外部主机上的服务确实在常规的端口上,攻击者往往会通过伪造,利用端口 25向内部主机发送其他应用程序(非常规邮件)的数据包,建立连接,进行非授权访问。这时,只能禁止
25端口对于内部主机的访问。因为内部主机对这个外部端口不能信任。
( 2) 关于内部主机的源端口号从内部到外部的 TCP/UDP连接中,内部主机的源端口一般采用大于 1024的随机端口。为此,对端口号大于 1024的所有返回到内部的数据包都要允许。对此,就需要辨认端口号大于 1024的数据包中哪些是非法的。
对于 TCP数据包来说,可以通过 flag位辨认哪些是来自外部的连接请求。但是 UDP是无连接的,没有这样的 flag位可使用,只能唯一地辨认端口号。所以允许 UDP协议对外访问会带来风险。因为返回的数据包上的端口号有可能是攻击者伪造的。当请求端口和目的端口都是固定的时,这个问题才能解决。
例 3.1.2
表 3.5与 表 3.6就是否考虑数据包的源端口进行对照。规则表 3.5由于未考虑到数据包的源端口,出现了两端所有端口号大于 1024的端口上的非预期的作用。而规则表 3.6考虑到数据包的源端口,所有规则限定在 25号端口上,故不可能出现两端端口号均在 1024以上的端口上连接的交互。
规则 方向 类型 源地址 目的地址 目的端口 行为操作
A 入 TCP 外 内 25 允许
B 出 TCP 内 外 >=1024 允许
C 出 TCP 内 外 25 允许
D 入 TCP 外 内 >=1024 允许
E 出 /入 任何 任何 任何 任何 禁止规则 方向 类型 源地址 目的地址 源端口 目的端口 行为操作
A 入 TCP 外 内 >=1024 25 允许
B 出 TCP 内 外 25 >=1024 允许
C 出 TCP 内 外 >=1024 25 允许
D 入 TCP 外 内 25 >=1024 允许
E 出 /入 任何 任何 任何 任何 任何 禁止表 3.5 未考虑源端口时的包过滤规则表 3.6 考虑了源端口时的包过滤规则
3.1.4 数据包的状态检测过滤策略
使用 C/S模式的数据通信具有连接状态。最典型的是 TCP连接。如 图 3.3所示,TCP连接具有 11个状态:
CLOSED,LISTEN,SYS_SENT,SYS_REVD、
FIN_WAIT_1,FIE_WAIT_2,ESTAB、
CLOSE_WAIT,LAST_ACK,CLOSING、
TIME_WAIT。
图 3.3 TCP协议状态转换图
Passive Open,本地用户的被动打开连接 rcv:本地 TCP在引发事件中收到 TCP控制消息
Active Open,本地用户的主动打开连接 send:本地 TCP在结果动作中发出 TCP控制消息
CLOSE:关闭连接请求 x:无动作
create TCB:本地 TCP创建了对应虚电路的协议控制块;
create TCB:本地 TCP撤消 TCP协议控制块并结束通信连接;
Timeout=2MSL,本地 TCP等待超时 2MSL( 2倍的最大段生存期);
CLOSED
LISTEN
ESTAB
CLOSING
TIME WAIT CLOSED
FIN
WAIT_1
CLOSE
WAIT
LAST_ACK
SYS
SENT
SYS
REVD
passive OPEN
create TCB
FIN
WAIT_2
CLOSE
delete TCB
CLOSE
delete TCB
active OPEN
create TCB
send SYN
SEND
send SYN
rcv SYN
send SYN,ACK rcv SYN
send ACK rcv SYN,ACK
send ACK
rcv ACK of SYN
xCLOSE
send FIN CLOSEsend FIN rcv FIN
send ACK
CLOSE
send FIN
rcv FIN
send ACK
rcv ACK of FIN
x
rcv FIN
send ACK
rcv ACK of FIN
x
rcv ACK of FIN
xTimeout=2MSL
delete TCB
TCP连接状态的特征由图 3.3描述可以看出 TCP连接状态的如下特征:
TCP连接是有状态的,连接进入不同的阶段具有不同的状态;
TCP连接状态的转换要按一定的顺序进行,不可随意改变;
在 TCP连接中客户机与服务器的状态不相同,如客户机不能进入
LISTEN状态,服务器不可能进入 SYN_SEND状态;
TCP包中有 6个标志位,FIN,SYS,RST,PSH,ACK,URG,其中一些不能同时存在,如 SYS不能和 FIN,RST,PSH同时存在。
这些特征就是设置状态检测包过滤规则的基础。状态信息可以从数据包中的源地址、目的地址、协议类型、连接状态、超时时间以及其他信息(如 TCP/UDP协议的端口号,ICMP的 ID号等)中获得。
在检测中,一旦发现数据包的状态不符,就可以认为是状态异常包而加以拒绝。
3.1.5 数据包的内容过滤策略
1,内容安全的概念
内容安全是包过滤技术中正在兴起的一个重要的分支,也是目前最活跃的安全领域。它是基于内容安全的一项技术。
内容安全涵盖如下 3个方面。
( 2)基于内容的破坏内容破坏的典型是带有病毒的文件,是被篡改了的正常文件上带有病毒特征代码。这些代码在被执行的时候,具有有害的特性。
( 1)违禁内容的传播违禁内容是指内容本身要表达的意思,违反了某种规则或安全策略,尤其是政策法规允许的范畴。例如,传播关于 SRARS的谣言,发布关于恐怖袭击的谣言,制造或传播淫秽色情等,都是违法的。违禁内容的危害是对思想造成破坏。在很多情况下,违禁内容的表达方式和格式并没有什么特殊,因此无法从表达方式或格式来加以禁止,必须从语意和关键词上理解该内容是违禁的。
( 3)基于内容的攻击基于内容的攻击,是以内容为载体容,以应用程序为攻击对象,目标是取得对应用主机的控制权。例如,在 web上表格填写数据时,填写恶意格式,导致 CGI程序执行错误,引发应用程序出错。在 web服务和 web应用盛行的今天,基于内容的攻击越来越流行,危害越来越大,对电子政务和电子商务是一个巨大的灾难。
2,内容安全解决方案
( 1)禁止违禁内容传播的解决方案禁止违禁内容的传播的方法,一是对违禁内容进行内容过滤,如基于关键词的内容过滤,
基于语意的内容过滤。前者在技术上很成熟,准确度很高,漏报率低,但误报率高。二是对违禁内容的来源进行访问控制,这种方式对已经知道恶意传播的对象非常有效。到目前为止,还没有禁止违禁内容传播的理想的理论方法,在必须执行违禁内容控制的情况下,多采用人工和技术相结合的策略。
( 2)防止基于内容破坏的解决方案防病毒是目前采用最多的防止基于内容破坏的解决方案。通过查找内容中的恶意病毒代码来消除基于内容的破坏。防病毒软件同样存在漏报和误报的问题。最关键的问题是,
每次总数病毒爆发在前,才能取得病毒特征代码,然后才能防止该病毒。预防已知病毒的实现较为成功,但预防未知病毒的能力较弱。为了解决防病毒软件这方面的不足,出现了很多的相关技术如专家会诊,引发病毒隔离区等,来补充和弥补方病毒软件的不足。
( 3)防止基于内容攻击的解决方案基于内容的攻击已经超过违禁内容传播和病毒,成为目前最热门的威胁之一。目前存在的十大漏洞和风险包括:参数无效、访问控制失效、账户和会话管理失效、跨站点脚本、
缓冲溢出、恶意命令、错误处理问题、不安全加密、远程管理缺陷、配置错误。目前已经出现一类新的产品称为应用安全代理来解决基于内容攻击的问题。
与传统的过滤方法相比,基于内容的过滤技术需要耗费更多的计算资源。如何突破内容过滤的性能瓶颈,已经成为用户和厂商普遍关心的问题。
3,内容扫描原理在接收到网络流量后,安全网关进行内容扫描,定向到 TCP/IP 堆栈,
其他数据流直接定向到状态检测引擎,按基本检测方式进行处理。高性能的硬件体系结构协助 TCP/IP 堆栈进行协议内容的处理。内容协议数据包括 Web流量( HTTP) 和 E-mail 流量( SMTP,POP3,IMAP) 。
当接收到内容数据流时,TCP/IP 堆栈建立 Client 和 Server会话,开始数据包的传输。堆栈接收数据包,然后转化成内容数据流。
服务分析器根据数据流服务类型分离内容数据流,传送数据流到一个命令解析器中。
命令解析器定制和分析每一个内容协议,分析内容数据流,检测病毒和蠕虫。如果检测到信息流是一个 HTTP 数据流,则命令解析器检查上载和下载的文件 ; 如果数据是 Mail 类型,则检查邮件的附件。
如果数据流包含附件或上载 /下载文件,附件和文件将传输到病毒扫描引擎,所有其他内容传输到内容过滤引擎。如果内容过滤启动,数据流将根据过滤的设置进行匹配,通过或拒绝数据。
3.2 网络地址转换
1,NAT概述网络地址转换 (Network Address Translation,NAT)就是使用使用两套 IP地址 —— 内部 IP地址 (也称私有 IP地址)和 外部 IP地址 (也称公共 IP地址)。当受受保护的内部网连接到 Internet并且有用户要访问 Internet时,它首先使用自己网络的内部 IP地址,到了 NAT后,
NAT就会从公共 IP地址集中选一个未分配的地址分配给该用户,该用户即可使用这个合法的 IP地址进行通信。同时,对于内部的某些服务器如 Web服务器,网络地址转换器允许为其分配一个固定的合法地址。外部网络的用户就可通过 NAT来访问内部的服务器。这种技术既缓解了少量的 IP地址和大量的主机之间的矛盾 —— 被保护网络中的主机不必拥有固定的 IP地址;又对外隐藏了内部主机的 IP地址,提高了安全性。
2,NAT的工作过程
NAT的工作过程如 图 3.4所示。
NAT源地址
abc.com.cn
目的地址
234.56.7.8
源地址
234.56.7.8
目的地址
abc.com.cn
源地址
abc.com.cn
目的地址
123.456.111.3
源地址
123.456.111.3
目的地址
abc.com.cn
Internet 被保护内部网源 IP包目的 IP包图 3.4 NAT的工作过程在内部网络通过安全网卡访问外部网络时,将产生一个映射记录。系统将外出的源地址和源端口映射为一个伪装的地址和端口,让这个伪装的地址和端口通过非安全网卡与外部网络连接,这样对外就隐藏了真实的内部网络地址。在外部网络通过非安全网卡访问内部网络时,它并不知道内部网络的连接情况,而只是通过一个开放的 IP地址和端口来请求访问。 NAT据预先定义好的映射规则来判断这个访问是否安全:当符合规则时,防火墙认为访问是安全的,可以接受访问请求,也可以将连接请求映射到不同的内部计算机中;当不符合规则时,被认为该访问是不安全的,不能被接受,外部的连接请求即被屏蔽。网络地址转换的过程对于用户来说是透明的,不需要用户进行设置,用户只要进行常规操作即可。
3,使用 NAT的优缺点
NAT使内部网络的计算机就不可能直接访问外部网络:通过包过滤分析,当所有传入的包如果没有专门指定配置到 NAT
,就将之丢弃。同时使所有内部的 IP地址对外部是隐蔽的。
因此,网络之外没有谁可以通过指定 IP地址的方式直接对网络内的任何一台特定的计算机发起攻击。 NAT还可以使多个内部主机共享数量有限的 IP地址,还可以启用基本的包过滤安全机制。
NAT虽然可以保障内部网络的安全,但也是一些局限。例如
,内网用户可以利用某些木马程序通过 NAT做外部连接。
3.3 代理技术
应用于网络安全的代理( Proxy) 技术,来自代理服务器
( Proxy Server) 技术。代理服务器是用户计算机与
Internet之间的中间代理机制,它采用客户机 /服务器工作模式。代理服务器位于客户与 Internet上的服务器之间。
请求由客户端向服务器发起,但是这个请求要首先被送的代理服务器;代理服务器分析请求,确定其是合法的以后,
首先查看自己的缓存中有无要请求的数据,有就直接传送给客户端,否则再以代理服务器作为客户端向远程的服务器发出请求;远程服务器的响应也要由代理服务器转交给客户端,同时代理服务器还将响应数据在自己的缓存中保留一份拷贝,以被客户端下次请求时使用。 图 3.5为代理服务的结构及其数据控制和传输过程示意图。
图 3.5 代理服务的结构及其数据控制和传输过程
应用于网络安全的代理技术,也是要建立一个数据包的中转机制,并在数据的中转过程中,加入一些安全机制。
被 保护 网络内部客户服务器客户代理访问控制代 理服务器代理服务请求 请求转发转发应答 应答
代理技术可以在不同的网络层次上进行。主要的实现层次在应用层和运输层,分别称为应用级代理和电路级代理。它们的工作原理有所不同。
3.3.1 应用级代理
1,概述应用级代理没有通用的安全机制和安全规则描述,它们通用性差,对不同的应用具有很强的针对性和专用性。它们不但转发流量而且对应用层协议做出结实。 图 3.6为其示意图。显然,如果不为特定的应用程序安装代理程序代码,该服务是不会被支持的,不能建立任何连接。
这种方式可以拒绝任何没有明确配置的连接,从而提供了额外的安全性和控制性。
FTP代理 TELNET代理 HTTP代理 POP代理 SMTP代理 DNS代理
out
in in
out
in
out out
in in
out
in
out
…
外部客户内部服务器客户 — 代理连接代理 — 服务器连接外部内部图 3.6 应用级代理工作原理
2,应用级代理的工作特点图 3.7为应用级代理的基本工作过程。
内部接口外部接口客户 公共服务时间请求页
URL检查请求页返回页返回页内容过滤图 3.7 应用级代理的基本工作过程下面介绍应用级代理的一些功能。
( 1) 阻断路由与 URL
代理是通过侦听网络内部客户的服务请求,然后把这些请求发向外部网络。在这一过程中,代理要重新产生服务级请求。例如,一个 Web
客户向外部发出一个请求时,这个请求会被代理服务器“拦截”,再由代理服务器向目标服务器发出一个请求。服务协议(如 HTTP) 才可以通过代理服务器,而 TCP/IP和其他低级协议不能通过,必须由代理服务器重新产生。因此外部主机与内部机器之间并不存在直接连接,
从而可以防止传输层因源路由、分段和不同的服务拒绝造成的攻击,
确保没有建立代理服务的协议不会被发送的外部网络。
( 2) 隐藏客户应用级代理既可以隐藏内部 IP地址,也可以给单个用户授权,即使攻击者盗用了一个合法的 IP地址,也通不过严格的身份认证。因此应用级代理比数据包过滤具有更高的安全性。但是这种认证使得应用网关不透明,用户每次连接都要受到认证,这给用户带来许多不便。这种代理技术需要为每个应用写专门的程序。
( 3)安全监控代理服务是一种服务程序,它位于客户机与服务器之间,完全阻挡了二者间的数据交流。从客户机来看,代理服务器相当于一台真正的服务器;而从服务器来看,代理服务器又是一台真正的客户机。当客户机需要使用服务器上的数据时,首先将数据请求发给代理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器将数据传输给客户机。由于外部系统与内部服务器之间没有直接的数据通道,外部的恶意侵害也就很难伤害到企业内部网络系统。
3.3.2 电路级代理
1,电路级代理概述电路级代理即通常意义的代理服务器,它适用于多个协议,但不能解释应用协议,需要通过其他方式来获得信息,只对数据包进行转发。电路级代理也称电路级网关,其工作原理如 图 3.8所示。
传输层网络层数据链路 /物理层电路级网关
TCP端口 TCP端口图 3.8 电路级网关工作原理电路级网关依赖于 TCP连接,并且只用来在两个通信端点之间转接,进行简单的字节复制式的数据包转接。数据包处理是要在应用层进行。
电路级网关对外像一个代理,对内又像一个过滤器。这种特点使它可以为各种不同的协议提供服务。简单的电路级网关仅传输 TCP的数据段,
增强的电路级网关还具有认证作用。
2,SOCKS代理技术
SOCKS协议(套接字协议)是一个电路级网关协议。一个
SOCKS代理主要由两部分组成:
( 1) SOCKS客户程序,经过修改的 Internet客户程序,改造的目的是使运行客户程序的主机从与 Internet通信改为与运行 SOCKS代理的主机通信。
( 2) SOCKS服务程序,既可以 Internet通信又可以和内部网络通信的程序。
SOCKS代理的工作过程
SOCKS代理的工作过程如下:
对用户来说,受保护网与外部网的信息交换是透明的,感觉不到代理的存在
,那是因为网络用户不需要登录到代理上。但是客户端的应用软件必须支持
,Socketsified API”,受保护网络用户访问公共网所使用的 IP地址也都是代理服务器的 IP地址。
1)当一个经过 SOCKS化的客户程序要连接到 Internet时,
SOCKS就会截获这个这个连接,将之连接到运行 SOCKS服务器的主机上。
2)连接建立后,SOCKS客户程序发送如下信息:
版本号
连接请求命令
客户端端口号
发起连接的用户名
3)经过确认后,SOCKS服务器才与外部的服务器建立连接。
3.4 网络防火墙
1,防火墙的概念在建筑群中,防火墙 (Fire Wall)用来防止火灾蔓延。在计算机网络中,防火墙是设置在 可信任的内部网络 和 不可信任的外界 之间的一道屏障,来保护计算机网络的资源和用户的声誉,使一个网络不受来自另一个网络的攻击。
2,防火墙的基本功能在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和 Internet之间的任何活动,
保证了内部网络的安全。作为一个中心“遏制点”,它可以将局域网的安全管理集中起来,屏蔽非法请求,防止跨权限访问并产生安全报警。
具体地说,防火墙有以下一些功能:
防火墙的一些功能
( 1)作为网络安全的屏障防火墙由一系列的软件和硬件设备组合而成,它保护网络中有明确闭合边界的一个网块。所有进出该网块的信息,都必须经过防火墙,将发现的可疑访问拒之门外。当然,防火墙也可以防止未经允许的访问进入外部网络。因此,防火墙的屏障作用是双向的,即进行内外网络之间的隔离,包括地址数据包过滤、代理和地址转换。
( 2)强化网络安全策略防火墙能将所有安全软件(如口令、加密、身份认证、审计等)配置在防火墙上,形成以防火墙为中心的安全方案。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。例如在网络访问时,一次一密口令系统和其它的身份认证系统完全可以不必分散在各个主机上,而集中在防火墙一身上。
( 3)对网络存取和访问进行监控审计审计是一种重要的安全措施,用以监控通信行为和完善安全策略,检查安全漏洞和错误配置,并对入侵者起到一定的威慑作用。报警机制是在通信违反相关策略以后,以多种方式如声音、邮件、电话、手机短信息及时报告给管理人员。
防火墙的审计和报警机制在防火墙体系中是很重要的,只有有了审计和报警
,管理人员才可能知道网络是否受到了攻击。另外,防火墙的该功能也有很大的发展空间,如日志的过滤、抽取、简化等等。日志还可以进行统计、分析、(按照特征)存储(在数据库中),稍加扩展便又是一个网络分析与查询模块。
由于日志数据量比较大,主要通过两种方式解决,一种是将日志挂接在内网的一台专门存放日志的日志服务器上;一种是将日志直接存放在防火墙本身的存储器上。 目前这两种方案国内(包括国外)都有使用。
如果所有的访问都经过防火墙,防火墙就能记录下这些访问并作出日志记录
,同时也能提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行适当的报警,并提供网络是否受到监测和攻击的详细信息。
收集一个网络的使用和误用情况也非常重要。这样可以对网络进行需求分析和威胁分析,清楚防火墙是否能够抵挡攻击者的探测和攻击,并且清楚防火墙的控制是否充足。
( 4)远程管理管理界面一般完成对防火墙的配置、管理和监控。
管理界面设计直接关系到防火墙的易用性和安全性。目前防火墙主要有两种远程管理界面,web界面 和 GUI界面 。对于硬件防火墙,一般还有串口配置模块和或控制台控制界面。
管理主机和防火墙之间的通信一般经过加密。 国内比较普遍采用自定义协议、一次性口令进行管理主机与防火墙之间通信(适用 GUI界面)。
GUI界面可以设计的比较美观和方便,并且可以自定义协议,也为多数厂商使用。一般使用语言 VB,VC,有部分厂家使用 Java开发,并把此作为一个卖点(所谓跨平台)。 Web界面也有厂商使用,然而由于防火墙因此要增加一个 CGI解释部分,减少了防火墙的可靠性( GUI界面只需要一个简单的后台进程就可以),故应用不是太广泛。
( 5)防止攻击性故障蔓延和内部信息的泄露防火墙也能够将隔开网络中一个网块(也称网段)与另一个网块隔开
,从而限制了局部重点或敏感网络安全问题对全局网络造成的影响。
此外,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至因此而暴漏了内部网络的某些安全漏洞。使用防火墙就可以隐蔽那些透漏内部细节如 Finger,DNS等服务。
Finger显示了主机的所有用户的注册名、真名,最后登录时间和使用
shell类型等。但是 Finger显示的信息非常容易被攻击者所获悉。攻击者可以知道一个系统使用的频繁程度,这个系统是否有用户正在连线上网,这个系统是否在被攻击时引起注意等等。防火墙可以同样阻塞有关内部网络中的 DNS信息,这样一台主机的域名和 IP地址就不会被外界所了解。
( 6) MAC与 IP地址的绑定
MAC与 IP地址绑定起来,主要用于防止受控(不可访问外网)的内部用户通过更换 IP地址访问外网。这其实是一个可有可无的功能。不过因为它实现起来太简单了,内部只需要两个命令就可以实现,所以绝大多数防火墙都提供了该功能。
( 7)流量控制(带宽管理)和统计分析、流量计费流量控制可以分为基于 IP地址的控制和基于用户的控制。基于 IP地址的控制是对通过防火墙各个网络接口的流量进行控制,基于用户的控制是通过用户登录来控制每个用户的流量,从而防止某些应用或用户占用过多的资源。并且通过流量控制可以保证重要用户和重要接口的连接。
( 8)其他特殊功能流量统计是建立在流量控制基础之上的。一般防火墙通过对基于 IP、
服务、时间、协议等等进行统计,并可以与管理界面实现挂接,实时或者以统计报表的形式输出结果。流量计费从而也是非常容易实现的。
3.4.2 网络防火墙构建与基本结构举例
1,屏蔽路由器 ( Screening Router) 和屏蔽主机 ( Screening Host)
防火墙最基本、也是最简单技术是数据包过滤。而过滤规则可以安装在路由器上,也可以安装在主机上。具有数据包过滤功能的路由器称为屏蔽路由器。具有数据包过滤功能的主机称为屏蔽主机。 图 3.9为包过滤防火墙的两种基本结构。
防火墙外部网屏蔽路由器 内部网图 3.9 路由过滤式防火墙路由器是内部网络与 Internet连接的必要设备,是一种“天然”的防火墙
,它除具有路由功能之外,还安装了分组 /包过滤(数据包过滤或应用网关
)软件,可以决定对到来的数据包是否要进行转发。
这种防火墙实现方式相当简捷,效率较高,在应用环境比较简单的情况下,能够以较小的代价在一定程度上保证系统的安全。但由于过滤路由器是在网关之上的包过滤,因此它允许被保护网络的多台主机与 Internet的多台主机直接通信。这样,其危险性便分布在被保护网络内的全部主机以及允许访问的各种服务器上,随着服务的增加,网络的危险性也增加。其次,也是特别重要的一点是,这种网络由于仅靠单一的部件来保护系统,一旦部件被攻破,就再也没有任何设防了,并且当防火墙被攻破时几乎可以不留下任何痕迹,甚至难于发现已发生的攻击。它只能根据数据包的来源、目标和端口等网络信息进行判断,无法识别基于应用层的恶意侵入,如恶意的 Java
小程序以及电子邮件中附带的病毒。有经验的黑客很容易伪造 IP地址,骗过包过滤型防火墙,一旦突破防火墙,即可对主机上的软件和配置漏洞进行攻击。进一步说,由于数据包的源地址、目标地址以及 IP的端口号都在数据包的头部,很有可能被窃听或假冒;并且数据包缺乏用户日志( log) 和审计信息( audit),不具备登录和报告性能,不能进行审核管理,因而过滤规则的完整性难以验证,所以安全性较差。
2,双宿主网关( Dual Homed Gateway)
如 图 3.10所示,双宿主主机是一台有两块 NIC的计算机,每一块 NIC各有一个 IP地址。所以它可以是 NAT和代理两种安全机制。如果 Internet上的一台计算机想与被保护网( Intranet) 上的一个工作站通信,必须先行注册,与它能看到的 IP地址联系;代理服务器软件通过另一块 NIC启动到
Intranet的连接。
外部网双穴主机 内部网图 3.10 双宿主机网关防火墙双宿主网关使用代理服务器简化了用户的访问过程,它将被保护网络与外界完全隔离,由域名系统的信息不会通过被保护系统传到外部,所以系统的名字和 IP地址对 Internet是隐蔽的,做到对用户全透明。由于该防火墙仍是由单机组成,没有安全冗余机制,一旦该“单失效点”出问题
,网络将无安全可言。
3,堡垒主机( Bastion Host)
堡垒主机有如下特性:
( 1)堡垒主机的概念
· 它是专门暴露在外部网络上的一台计算机,是被保护的内部网络在外网上的代表,并作为进入内部网的一个检查点。
· 它面对大量恶意攻击的风险,并且它的安全对于建立一个安全周边具有重要作用,因此必须强化对它的保护,使风险降至最小。
· 它通常提供公共服务,如邮件服务,WWW服务,FTP服务,WWW
服务,DNS服务等。
· 堡垒主机与内部网络是隔离的。它不知道内部网络上的其他主机的任何系统细节,如内部主机的身份认证服务和正在运行的程序的细节
。这样,对堡垒主机的攻击不会殃及内部网络。
所以,堡垒主机是一个被强化的、被暴露在被保护网络外部的、可以预防进攻的计算机。
( 2) 单连点堡垒主机过滤式防火墙单连点堡垒主机过滤式防火墙有 图 3.11所示的结构。它实现了网络层安全(包过滤)和应用层安全(代理),具有比单纯包过滤更高的安全等级。
外部网过滤路由器内部网堡垒主机信息服务器 专用网主机图 3.11 单连点堡垒主机过滤式防火墙在该系统中,堡垒主机被配置在过滤路由器的后方,并且过滤规则的配置使得外部主机只能访问堡垒主机,发往内部网的其他业务流则全部被阻塞。对于内部主机来说,由于内部主机和堡垒主机同在一个内部网络上,所以机构的安全策略可以决定内部系统允许直接访问外部网,还是要求使用配置在堡垒主机上的代理服务。当配置路由器的过滤规则,使其仅仅接收来自堡垒主机的内部业务流时,内部用户就不得不使用代理服务。
主机过滤防火墙具有双重保护,从外网来的访问只能访问到堡垒主机,而不允许访问被保护网络的其他资源,有较高的安全可靠性。但是它要求考虑到堡垒主机和路由器两个方面的安全性。
( 3) 双连点堡垒主机过滤式防火墙双连点堡垒主机过滤式防火墙有 图 3.12所示的结构。它比连点堡垒主机过滤式防火墙有更高的安全等级。由于堡垒主机具有两个网络接口,除了外部用户可以直接访问信息服务器外,外部用户发往内部网络的业务流和内部系统对外部网络的访问都不得不经过堡垒主机,以提高附加的安全性。
外部网屏蔽路由器内部网堡垒主机信息服务器 内部主机图 3.12 双连点堡垒主机过滤式防火墙在这种系统中,由于堡垒主机成为外部网络访问内部网络的唯一入口,
所以对内部网络的可能安全威胁都集中到了堡垒主机上。因而对堡垒主机的保护强度,关系到整个内部网的安全。
4,屏蔽子网( Screened Subnet) 防火墙被保护网络和 Internet之间设置一个独立的子网作为防火墙,就是子网过滤防火墙。具体的配置方法是在过滤主机的配置上再加上一个路由器,
形成具有外部路由过滤器、内部路由过滤器、应用网关等三道防线的过滤子网,如 图 3.13所示。
外部网堡垒主机信息服务器 内部网内部路由器外部路由器
DMZ
图 3.13 子网过滤防火墙配置在子网过滤防火墙中,外部过滤路由器用于防范通常的外部攻击(如源地址欺骗和源路由攻击),并管理外部网到过滤子网的访问。外部系统只能访问到堡垒主机,通过堡垒主机向内部网传送数据包。内部过滤路由器管理过滤子网与内部网络之间的访问,内部系统只能访问到堡垒主机,通过堡垒主机向外部网发送数据包。简单地说,任何跨越子网的直接访问都是被严格禁止的。从而在两个路有器之间定义了一个“非军事区”( Demilitarized Zone,DMZ)。 这种配置的防火墙具有最高的安全性,但是它要求的设备和软件模块较多,价格较贵且相当复杂。
3.4.3 网络防火墙的局限
1,防火墙可能留有漏洞防火墙应当是不可渗透或绕过的。实际上,防火墙往往会留有漏洞。
如 图 3.14所示,如果内部网络中有一个未加限制的拨出,内部网络用户就可以(用向 ISP购买等方式)通过 SLIP( Serial Line Internet
Protocol,串行链路网际协议)或 PPP( Pointer-to-Pointer protocol,点到点协议)与 ISP直接连接,从而饶过防火墙。
Internet
防火墙专用网安全漏洞
ISP
图 3.14 防火墙的漏洞防火墙可能留有的漏洞由于防火墙依赖于口令,所以防火墙不能防范黑客对口令的攻击。前不久,两个在校学生编了一个简单的程序,通过对波音公司的口令字的排列组合,试出了开启内部网的钥匙,从网中搞到了一张授权的波音公司的口令表,将口令一一出卖。所以美国马德里兰州的一家计算机安全咨询机构负责人诺尔 ·马切特说:“防火墙不过是一道较矮的篱笆墙”。黑客像耗子一样,能从这道篱笆墙上的窟窿中出入。这些窟窿常常是人们无意中留下来的,甚至包括一些对安全性有清醒认识的公司。例如,由于 Web服务器通常处于防火墙体系之外,而有些公司随意扩展浏览器的功能,使之含有 Applet编写工具。黑客们便可以利用这些工具钻空子,接管 Web服务器,接着便可以从 Web服务器出发溜过防火墙,大摇大摆地“回到”内部网中,好像他们是内部用户,刚刚出来办完事又返回去一样。
2,防火墙不能防止内部出卖性攻击或内部误操作显然,当内部人员将敏感数据或文件拷贝在优盘等移动存储设备上提供给外部攻击者时,防火墙是无能为力的。此外,
防火墙也不能防范黑客防火墙黑客有可能伪装成管理人员或新职工,以骗取没有防范心理的用户的口令或假用他们的临时访问权限实施的攻击。
3,防火墙不能防止数据驱动式的攻击有些数据表面上看起来无害,可是当它们被邮寄或拷贝到内部网的主机中后,就可能会发起攻击,或为其他入侵准备好条件。这种攻击就称为数据驱动式攻击。防火墙无法御防这类攻击。
3.5 网络的物理隔离技术
3.5.1 物理隔离的概念
1,问题的提出
20世纪末期,“政府上网”热潮把我国的信息化带进了一个新的高度。政府上网不仅表明 Internet已经进入了一个非常重要的领域,而且为信息系统安全技术提出了新的课题。由于政府中有许多敏感的数据以及大量机密数据,也有最为国民关心的信息。目前虽然开发了各种防火墙、病毒防治系统以及入侵检测、
安全预警、漏洞扫描等安全技术,但却并没有完全阻止了入侵,内部网络被攻破的事件屡有发生,据统计有近半数的防火墙被攻破过。为此,国家保密局
2000年 1月 1日起实施的《计算机信息系统国际联网保密管理规定》第二章第六条要求:“涉及国家机密的计算机信息系统,不得直接或间接地与国际互联网或其他公共信息网络相连接,必须实行物理隔离。”
学术界一般认为,最早提出物理隔离技术的,是以色列和美国的军方,主要用以解决涉密网络与公共网络连接时的安全。我国也有庞大的政府涉密网络和军事涉密网络,但是我国的涉密网络与公共网络,特别是与 Internet是无任何关联的独立网络,不存在与 Internet的信息交换,也用不着使用物理隔离网闸解决信息安全问题。所以,在电子政务、电子商务之前,物理隔离网闸在我国因无市场需求,产品和技术发展较慢。
随着我国信息化建设步伐的加快,电子政务的急速展开,物理隔离的问题才突出地提到议事日程上来,成为我国信息安全产业发展的一个新的增长点。
2,关于物理隔离的定义和理解到目前为止,并没有完整的关于物理隔离技术的定义和标准。从不同时期的用词也可以看出,物理隔离技术一直在演变和发展。
较早的用词为 Physical Disconnection。 Disconnection有使断开,切断,不连接的意思,直译为物理断开。这是在还没有解决涉密网与 Internet连接后出现的很多安全问题的技术手段之前说法,在无可奈何的情况下,只有先断开再说。
后来使用了词汇 Physical Separation。 Separation有分开,分离,间隔和距离的意思
,直译为物理分开。但是光分开不是办法,理智的策略应当是为该连即连,不该连则不连。为此要把该连的部分与不该连的部分分开。于是有了 Physical Isolation。
Isolation有孤立,隔离,封闭,绝缘的意思,直译为物理封闭。事实上,没有与
Internet相连的系统不多,因此,希望能将一部分高安全性的网络隔离封闭起来。
于是开始使用 Physical Gap。 Gap有豁口,裂口,缺口和差异的意思,直译为物理隔离,意为通过制造物理的豁口,来达到隔离的目的。由于 Physical这个词显得非常僵硬,于是有人用 Air Gap来代替 Physical Gap。 Air Gap意为空气豁口,很明显在物理上是隔开的。但有人不同意,理由是空气豁口就“物理隔离”了吗?电磁辐射
,无线网络,卫星等都是空气豁口,却没有物理隔离,甚至连逻辑上都没有隔离。
于是,E-Gap,Netgap,I-Gap等都出来了。现在,一般称 Gap Technology,意为物理隔离,成为 Internet上一个专用名词。
物理隔离的内涵这也是一个随认识和技术进步不断发展的概念。
最初的物理隔离是建立两套网络系统和计算机设备:一套用来用于内部办公,一套用于与 Internet连接。这样的两套互不连接的系统,不仅成本高,
而且极为不便。这一矛盾,促进了物理隔离设备的开发,也迫切需要一套技术标准和方案。
2002年《国家信息化领导小组关于我国电子政务建设的指导意见》( 13号文件)提出了“十五”期间,我国电子政务建设的主要任务之一是:“建设和整合统一的电子政务网络。为适应业务发展和安全保密的要求,有效遏制重复建设,要加快建设和整合统一的网络平台。电子政务网络由政务内网和政务外网构成,两网之间物理隔离,政务外网与 Internet之间逻辑隔离。政务内网主要是副省级以上政务部门的办公网,与副省级以下政务部门的办公网物理隔离。政务外网是政府的业务专网,主要运行政务部门面向社会的专业性服务业务和不需在内网上运行的业务。要统一标准,利用统一平台,促进各个业务系统的互联互通、资源共享。要用一年左右的时间,基本形成统一的电子政务内外网络平台,在运行中逐步完善。”
政务网
在公网和外网之间实行逻辑隔离;
简单地说,如 图 3.15所示,政务网应当跨越公网、外网和内部网。其安全要求是:
公网 t
内部网外网逻辑隔离 物理隔离图 3.15 电子政务的三网
在内网和外网之间实行物理隔离。
对物理隔离的理解对物理隔离的理解表现为以下几个方面:
阻断网络的直接连接,即没有两个网络同时连在隔离设备上;
阻断网络的 Internet逻辑连接,即 TCP/IP的协议必需被剥离,将原始数据通过 P2P的非 TCP/IP连接协议透过隔离设备传递;
隔离设备的传输机制具有不可编程的特性,因此不具有感染的特性;
任何数据都是通过两级移动代理的方式来完成,两级移动代理之间是物理隔离的;
隔离设备具有审查的功能;
隔离设备传输的原始数据,不具有攻击或对网络安全有害的特性。就像 txt文本不会有病毒一样,也不会执行命令等。
强大的管理和控制功能。
隔离的内容从隔离的内容看,隔离分为网络隔离和数据隔离:
数据隔离主要是指存储设备的隔离 —— 一个存储设备不能被几个网络共享。
网络隔离就是把被保护的网络从公开的、无边界的、自由的环境中独立出来。
只有实现了两种隔离,才是真正意义上的物理隔离。
3,逻辑隔离部件与物理隔离部件物理隔离与逻辑隔离有很大的不同。物理隔离的哲学是不安全就不连网,要绝对保证安全;逻辑隔离的哲学是在保证网络正常使用的情况下,尽可能安全。在技术上,实现逻辑隔离的方式有很多,但主要是防火墙。
中华人民共和国公安部 2001年 12月 24日发布( 2002年 5月 1日实施)的,端设备部件安全技术要求,( GA370-2001) 指出:
( 1)物理隔离部件的安全功能应保证被隔离的计算机资源不能被访问(至少应包括硬盘、软盘和光盘),计算机数据不能被重用(至少应包括内存)。
( 2)逻辑隔离部件的安全功能应保证被隔离的计算机资源不能被访问,只能进行隔离器内外的原始应用数据交换。
( 3)单向隔离部件的安全功能应保证被隔离的计算机资源不能被访问(至少应包括硬盘 /硬盘分区、软盘和光盘),计算机数据不能被重用(至少应包括内存)。
( 4)逻辑隔离部件应保证其存在泄露网络资源的风险不得多于开发商的评估文档中所提及的内容。
( 5)逻辑隔离部件的安全功能应保证在进行数据交换时数据的完整性。
( 6)逻辑隔离部件的安全功能应保证隔离措施的可控性,隔离的安全策略应由用户进行控制,开发者必须提供可控方法。
( 7)单向隔离部件使数据流无法从专网流向外网,数据流能在指定存储区域从公网流向专网;对专网而言,能使用外网的某些指定的要导入的数据。
隔离部件连接示意图图 3.16为使用物理隔离部件和单向隔离部件进行连接的示意图。
外网 t
专网存储设备公网存储设备计算机专网物理隔离部件 t
外网 t
交换存储设备公网存储设备计算机专网单向隔离部件 t
专网存储设备
( a) 用物理隔离部件连接 ( b) 用单向隔离部件连接图 3.16 物理隔离部件和单向隔离部件的连接示意图
4,物理隔离的技术路线目前物理隔离的技术路线有三种:
1) 网络开关( Network Switcher) 是比较容易理解的一种。
在一个系统里安装两套虚拟系统和一个数据系统,数据被写入到一个虚拟系统,然后交换到数据系统,再交换到另一个虚拟系统。网络隔离就是把被保护的网络从公开的、无边界的、自由的环境中独立出来。
2)实时交换( Real-time Switch),相当于在两个系统之间,共用一个交换设备,交换设备连接到网络 A,得到数据,
然后交换到网络 B。
3)单向连接( One Way Link),早期指数据向一个方向移动,一般指从高安全行的网络向安全性低的网络移动。
3.5.2 网络物理隔离基本技术目前物理隔离技术主要在如下三个网络位置上实施:
与此对应,实现网络物理隔离的技术主要有,网络安全隔离卡技术、安全集线器技术和单主板隔离计算机技术。
1)客户端物理隔离:采用隔离卡使一台计算机既连接内网又连接外网,在两个网上分时地工作,在保证内外网络隔离的同时,资源节省、
工作方便。
2)集线器物理隔离:在集线器处的物理隔离常常要与客户端的物理隔离相结合,它可以使客户端使用一条网线由远端切换器连接双网,
实现一台工作站连接两个网络的目的。
3)服务器端物理隔离:它采用复杂的软硬件技术,实现在服务器端的数据过滤和传输,使内外网之间同一时刻没有连线,能快速、分时地传递数据。
1,网络安全隔离卡技术网络安全隔离卡是一个硬件插卡,可以在物理上将计算机划分成两个独立的部分,
每一部分都有自己的的“虚拟”硬盘;
内部网络连接外部网络安全区公共区
S
P
网络安全隔离卡图 3.17 网络安全隔离卡的工作方式网络安全隔离卡设置在 PC最低层的物理部件上,卡的一边通过 IDE总线连接主板,
另一边连接 IDE硬盘。 PC机的硬盘被分割成两个物理区:
· 安全区,只与内部网络连接;
· 公共区,只与外部网络连接。
如 图 3.17所示,网络安全隔离卡就像一个分接开关,在 IDE硬件层上,由固件控制磁盘通道,任何时刻计算机只能与一个数据分区以及相应的网络连通。于是算机也因此被分为安全模式和公共模式,并且某一时刻只可以在一个模式下工作。两个模式转换时,所有的临时数据都会被彻底删除。
两个状态各有自己独立的操作系统,并分别导入,保证两个硬盘不会同时被激活。
两个分区不可以直接交换数据,但是可以通过专门设置的中间功能区进行,或通过设置的安全通道使数据由公共区向安全区转移(不可逆向)。
内部网络连接外部网络安全区公共区
S
P
网络安全隔离卡图 3.17 网络安全隔离卡的工作方式
· 在安全状态时,主机只能使用硬盘的安全区与内部网连接,此时外部网是断开的,
硬盘的公共区也是封闭的;
· 在公共状态时,主机只能使用硬盘的公共区与外网连接,此时与内网是断开的,且硬盘的安全区是封闭的。
安全状态转换到公共环境式的操作在安全区及内网连接状态下可以禁用软驱、光驱等移动存储设备,防止内部数据泄密。要转换到公共环境时,须进行如下操作:
按正常方式退出操作系统;
这些操作是由网络安全隔离卡自动完成的。为了便于用户从
Internet上下载数据,特设的硬盘数据交换区,通过读写控制只允许数据从外网分区向内网分区单向流动。
关闭计算机;
将安全硬盘转换为公共硬盘;
将 S/P开关转换到公共网络。
2,隔离集线器技术如 图 3.18所示,网络安全集线器是一种多路开关切换设备。它与网络安全隔离卡配合使用,并通过对网络安全隔离卡上发出的特殊信号的检测
,识别出所连接的计算机,自动将其网线切换到相应的网络的 HUB上,
从而实现多台独立的安全计算机与内、外两个网络的安全连接与自动切换。
内网 HUB
外网 HUB
隔离集线器网络安全隔 离 卡安全区公共区控制信号图 3.18 网络安全集线器的工作原理
3,单主板隔离计算机技术单主板隔离计算机技术的核心是 双硬盘技术,它将内外网转换功能做入
BIOS中,并将插槽也分为内网和外网。使用方便,也安全,价格介于双主机与隔离卡之间。
这种安全计算机是在较低层的 BIOS上开发的。 BIOS提供信息发送和输出设备的控制,并在 PC主板上形成两个各自独立的由网卡和硬盘构成的网络接入和信息存储环境,并只能在相应的网络环境下才能工作,不可能在一种环境下使用另一种环境下才能使用的设备,包括:
· 对软驱、光驱提供功能限制,在系统引导时不允许驱动器中有移动存储介质。双网计算机提供软驱关闭 /禁用控制。
· 提供双端口设备(打印机接口 /并行接口、串行接口,USB接口,MIDI
接口等)限制。对于 BIOS则由防写跳线防止病毒、非法刷新、破坏等。
3.5.3 网络物理隔离系统方案举例
1,单内网解决方案单网解决方案适合小型单网结构的局域网。对于小规模的政府部门中(如只有
5~15台计算机组成的网络)来说,由于功能比较单一,没有必要划分为几个网络
,同时也只有少数工作站节点机需要通过 Modem等设备接入 Internet。 这样,可以在接入 Internet的工作节点计算机上安装物理隔离部件,让其能够在与内部网络隔离的状态下拨号上网,并确保内部网络的安全。其结构如 图 3.18 所示。
图 3.18 单内网物理隔离方案内网 HUB
外网 HUB
隔离集线器网络安全隔 离 卡安全区公共区控制信号如果没有检测到来自网络安全隔离卡的信号,两个网络都会被切断。这样减少了安全区的工作站被错误地上未分类网络的风险。
这种网络安全隔离集线器与数据安全保护器的设置,允许用户顺利地进行额外的网络工作,避免了向桌面敷设电缆的争论。所有的附属设施被连接在通信机箱与后面的中枢上。此外,数据安全隔离集线器操作是全透明的,无须维修,且对以太网 /快速以太网的标准通信没有任何影响。
2,远程解决方案远程解决方案适合让远程计算机在安全环境下连接到内部安全网络中,
例如一个政府部门的信息中心分布在各处的分支机构中,当查询数据或分支机构向信息中心汇总数据时,需要有非常安全的措施保障网络不受非法侵犯。其结构如 图 3.19所示。
图 3.19 物理隔离的远程解决方案
3,双网解决方案双网解决方案适合中大型机构的局域网布局。这时,可以将一个政府机构的网络分为内部涉密网和外部公共网;其中公共网通过集中出口连接到 Internet( 视需要也可以安装防火墙、入侵检测及防病毒等措施),部分计算机需要能够接入两个网络,但同时又要保证内外网的完全隔离。另外,还有一些机构由于内部功能的划分,本身就有几个分离的网络。采用 图 3.20所示的双网结构,将更好地把这些网络整合在一起,变为一个全范围公共网加上几个内部安全子网的多网互动的有效网格格局。
图 3.20 物理隔离的双网解决方案
3.6 计算机系统的电磁防护
3.6.1 电磁威胁
1,电磁干扰
电磁防护是指对于电磁威胁的计算机防护。电磁威胁从两个方面造成,
电磁干扰和电磁泄露。
电磁干扰( Electromagnetic Interference,EMI) 是指无用的电磁信号对于有用的电磁信号造成的扰乱。一般说来,电磁干扰可以通过两种渠道传输:
· 辐射:电磁干扰信号以电磁波的形式,通过电路偶合,进入其他设备中。
· 传导:电磁干扰信号通过导线等传入其他设备中。
无论通过哪种渠道,非正常进入其他设备中的干扰信号都可能影响这些设备的正常工作。
2,电磁泄漏电磁泄露是指电子设备中的杂散能量向外扩展,并在扩展过程中夹带了设备所处理的数据信号。在一定的条件下,在一定的距离内,重新复原这些信息已经不是难事。
1985年,在法国召开的一次国际计算机安全会议上,年轻的荷兰人范 ·艾克当着各国代表的面,用价值仅仅几百美元的器件对普通电视机进行改造,在楼下的汽车内,接收并显示出了 8层楼上计算机屏幕上显示的图像。国外也有实验表明,银行计算机上显示的密码,竟在马路上就轻易地被截获了。
实际上,计算机的数字信号就是一些高频脉冲信号。这些高频电磁信号会产生与一台小型电台差不多的电磁波辐射。
3.6.2 电磁防护从干扰和泄露两个角度看,电磁防护的基本措施有:
1,屏蔽用电磁屏蔽技术,既可防止电磁波外泄,又可防止外来电磁波的干扰。
2,隔离将需要重点防护的设备从系统中分离出来,加以特别保护。
3,使用低辐射计算机设备计算机辐射主要由 4部分产生:
显示器辐射通信线路辐射主机辐射输出设备辐射低辐射计算机在元器件、集成电路、连线器和 CRT等方面采取防辐射措施。
电磁防护的基本措施(续)
4,使用干扰器干扰器可以根据电子对抗原理,产生电磁噪声,增大辐射信息被截获后破解还原的难度。
5,滤波在电源或信号线上加装合适的滤波器,阻断传导泄露的通道。
6,接地接地可以使杂散能量向大地泄露。
习 题
1,有一个内部网( 192.168.20.0)只与某一台外部主机( 172.1652.55)交换数据。写出位于它们之间的数据包过滤规则。
2,在组建 Intranet时,防火墙是必须的吗?为什么?
3,试述一个防火墙产品应具备哪些基本功能?
4,下面是选择防火墙时应考虑的一些因素,请按你的理解,将它们按重要性排序。
被保护网络受威胁的程度;
受到入侵,网络的损失程度;
网络管理员的经验;
被保护网络的已有安全措施;
网络需求的发展;
防火墙自身管理的难易度;
防火墙自身的安全性。
5,比较包过滤、网络地址转换和代理技术的特点以及适用的环境。
6,列举更多的防火墙系统结构。最好有自己的创意。
习 题(续)
7,查找资料,叙述防火墙测试的内容和方法。
8,查找资料,叙述防火墙选型的基本原则和具体标准。
9,简述攻击防火墙的主要手段。
10,查找资料,简述目前国内外防火墙技术发展的现状。
11,你对防火墙的未来有何设想?
12,收集资料,对当前常用的防火墙产品进行分析比较。
13,详细描述最常用的 3种防火墙产品的用法以及升级方法。
14,浏览最热门的 3个防火墙技术网站,综述目前关于防火墙讨论的热点问题。
15,简述国内外物理隔离技术的现状和发展趋势。
16,简述目前物理隔离产品的特点,并进行优缺点分析。
17,找 3个典型的物理隔离系统进行分析、评价。
18,浏览网站,列举国内有关物理隔离设备的厂家及其他们的产品特点。