1 引言
Internet的迅猛发展使信息共享的程度进一步提高,因而信息安全的问题也日益突出,这时唯一的解决方法只能是主动解决信息安全和网络安全问题。目前国内外采用最多的、最普遍的网络安全措施是使用防火墙类软件,但是防火墙类软件本身存在两大先天缺陷:其一是防火墙隔离的网络还是基于TCP/IP协议来进行信息交换的,而TCP/IP 协议存在漏洞,它无法防止协议本身的漏洞;其二是防火墙的运行离不开操作系统,操作系统和防火墙软件都存在漏洞,因而不能阻止由这些漏洞而引起的网络安全问题[1]。因此,开发相应的应用系统是必要的。本文在对已有的防火墙技术及物理隔离技术进行分析的基础上,提出了带缓冲区的双通道实时开关技术,通过该技术所设计出的网络隔离器能满足实时数据的传输,同时本文提出了一种物理隔离环境下数据安全转发的技术构思,该方案使得网络隔离器有很好的安全性能。
2 物理隔离技术原理
2.1 简介
物理隔离是指内部网络不得直接或间接地连接外部网络即互联网[2]。物理隔离技术通过中断内部网络与外部网络的连接,不支持TCP/IP 协议,不依赖于操作系统,解决了目前网络安全存在的根本性问题,即由于操作系统漏洞和TCP/IP 协议漏洞所带来的安全问题,有效地防止了恶意代码、病毒以及网络入侵的发生,满足了网络安全的机密性、完整性、可用性、可控性和可审查性要求。
2.2 物理隔离技术
目前,国内外普遍采用的物理隔离技术有: 单硬盘物理隔离卡和双主板物理隔离技术。
2.2.1 单硬盘物理隔离卡
这种技术是将计算机的单个硬盘从物理层上分割为公共和安全两个分区,每个分区各自安装一套操作系统。在操作中,用户工作在安全状态和公共状态两个互相排斥的操作系统环境下,从而实现内外网的安全隔离。这种技术的缺点是不能传输实时数据。
2.2.2 双主板物理隔离技术
两块主板之间通过非网络方式的一个双端口RAM进行数据的传输,双端口RAM 分为两个区,第一个区是内网客户端向外网服务器单向传输数据的通道。第二个区是外网客户端向内网服务器单向传输数据时的通道。在平时内外网是断开的,双端口RAM处于断开状态。当有数据要传输时,内外网才通过双端口RAM 进行数据传输[3]。
3 网络隔离器技术原理
目前网络隔离器的实时开关实现方式主要有基于SCSI 的开关技术和基于总线的开关技术两种。
基于总线的实时开关技术的网络隔离器采用双端口静态存储器(Dual Port SRAM)配合基于独立的ARM的控制电路,双端口各自通过开关与独立的计算机主机连接,如图1所示。ARM作为独立的控制电路保证双端口静态存储器的每一端口上存在一个开关,且两个开关不能同时闭合即K1×K2=0。
基于SCSI 开关技术的网络隔离器和图1相似,只是数据通道换为SCSI 硬盘接口,而存储介质使用的是SCSI 硬盘,控制单元使用专门设计的硬件电路板实现。
该系统的数据交换原理如下:以数据由外部网到内部网的传递为例,首先外部主机将由外部网接收到的数据进行TCP/IP 协议和应用协议的剥离,将其还原为原始数据,同时对数据进行完整性和安全性的审查;审查通过后,将安全的数据传递给交换设备,然后内部主机接收到这批数据,在对它们进行TCP/IP协议和应用协议的封装后,把它们发送到内部网。反之亦然。
以内网接收电子邮件为例,当外网需要有数据到达内网的时候,外部的服务器立即发起对隔离设备的非TCP/IP 协议的数据连接,隔离设备将所有的协议剥离,将原始的数据写入存储介质。根据不同的应用,可能有必要对数据进行完整性和安全性检查,如防病毒和恶意代码等。
一旦数据完全写入隔离设备的存储介质,隔离设备立即中断与外网的连接。转而发起对内网的非TCP/IP 协议的数据连接。隔离设备将存储介质内的数据推向内网。内网收到数据后,立即进行TCP/IP 的封装和应用协议的封装,并交给应用系统。
这个时候内网电子邮件系统就收到了外网的电子邮件系统通过隔离设备转发的电子邮件。在控制台收到完整的交换信号之后,隔离设备立即切断隔离设备于内网的直接连接。
如果这时,内网有电子邮件要发出,隔离设备收到内网建立连接的请求之后,建立与内网之间的非TCP/IP 协议的数据连接。隔离设备剥离所有的TCP/IP 协议和应用协议,得到原始的数据,将数据写入隔离设备的存储介质。必要的话,对其进行防病毒处理和防恶意代码检查。然后中断与内网的直接连接。控制台收到信息处理完毕后,立即中断隔离设备与外网的连接,恢复到完全隔离状态。
每一次数据交换,隔离设备经历了数据的接受,存储和转发三个过程。由于这些规则都是在内存和内核里完成的,因此速度上有保证,可以达到100%的总线处理能力[4]。
4 隔离硬件的设计
网络隔离器中实现数据交换的过程是通过对隔离硬件上的存储芯片的读写来完成的。存储芯片作为内外网的数据交换存储区,其访问设计方案决定了网络隔离器的数据交换速度。为了满足数据交换速度的要求,采用了带缓冲区的双通道实时开关技术。
双端口静态存储器划分为两个存储区域A、B。
外部主机通过K1只能向A中写入数据或从B中读出数据,而内部主机通过K2 只能从A 中读出数据或向B 中写入数据,K1 和K2 的约束为K1a×K2c=0 且K1b×K2d=0。如此一来就将双向数据通道变为了两个单向的数据通道。这样的设计使得在原有设计中内外部处理单元一方对隔离硬件进行读写操作,而另一方就无法访问隔离硬件的情况有所改善,它允许双方同时进入读读或写写的状态。但是在这种结构中,存在着这样的读写冲突问题,例如当外部主机通过K1 向A 写入数据时,内部主机无法从A 中读出数据,或者当内部主机从A 中读出数据时,外部主机 不能向A 写入数据,对B 的操作也存在类似的情况。因此提出了带缓冲区的双通道实时开关技术。
图2为带缓冲区的双通道实时开关技术原理图
将A、B 存储区域划分为N 个相等的小块存储区ai、bi(1≤i≤N),K1 和K2 的约束为K1ai×K2ai=0且K1bi×K2bi=0。
这样的改进使得当内外部主机中的一方对ai 或bi 进行访问时,另一方仍可以对aj或bj(i≠j)进行访问,减少了发生读写冲突的几率,提高了数据通道的效率,从而实现了提高内部网络和外部网络间数据的交换速度的目的。
5 物理隔离环境下数据安全转发方案的设计
物理隔离环境下数据安全转发方案的设计目标是要在内外网隔离的前提下实现安全、动态、实时的数据交换。
数据存储转发的构架由外网处理单元、数据转发区、内网处理单元、物理隔离模块、通断控制电路等功能部分组成。其中:
(1) 外网处理单元负责对外网数据的确定、采集工作,由内网用户需求而定,例如指定访问目标的网站等。
(2) 数据转发区负责内外网数据的暂存、转发工作。在数据交换的过程中,内网处理单元把数据导出到内网转发区或者外网处理单元把数据导入到外网转发区,而内网转发区与外网转发区是否有数据交换由隔离硬件根据用户的转发权限决定。用户没有数据转发的权限时,外网转发区与内网转发区是完全隔断的。
(3) 内网处理单元按照预先设定的安全策略对数据进行扫描分析、筛选过滤、病毒检测等处理。来自于外网数据或发往外网的数据,如果违反既定安全规则就被阻止进出。
(4) 物理隔离硬件实现在物理传导上使内外网络隔断,在物理上隔断内部网与外部网。物理隔离硬件被设置在最低的物理层上,内外网的数据转发由物理隔离硬件操纵通断控制电路来执行,在同一时段内,物理隔离硬件只能接受来自内网处理单元或者外网处理单元转发数据的请求,不能同时接收来自内网处理单元和外网处理单元转发数据的请求,使内网转发区和外网转发区双向进行数据转发操作。而且它的失效只会影响内外网数据交换的性能,而不会影响内网的安全性。
(5) 通断控制电路负责控制内网转发区与外网转发区的线路连接,同时控制对数据转发区中的数据进行转发或清除。通常,只有授予数据转发权限的用户和角色,在通过物理隔离硬件检查后认定数据转发权限与对象列表中的权限相符的情况下,通断控制电路才会连通内外转发区,并按其数据流向实施数据的转发工作。
6 结束语
本文对双通道实时开关技术进行了改进,提出了带缓冲区的双通道实时开关技术,通过该技术连接内网和外网,将内外网的双向数据传输转换为两个单向数据传输,这极大的提高了内外网的数据传输速度;并且提出了物理隔离环境下数据传输的安全方案。因而从硬件和软件上保证了内外网的安全隔离,提高了黑客等不法分子对网络攻击、泄密的防御水平,消除了大部分网络安全隐患,对维护工业控制系统信息安全及系统安全运行起到了重要作用。
本文作者创新点:介绍了基于ARM的网络隔离器的设计,该网络隔离器的隔离硬件采用带缓冲区的双通道实时开关技术,极大地提高了内外网数据传输速度, 从硬件和软件上保证了内外网的安全隔离, 对维护系统信息安全及系统安全运行起到了重要作用。
参考文献:
[1] 中网公司 中网物理隔离产品白皮书 北京中网公司
[2] 何鹏举 王万诚等 网络隔离器的设计与实现 控制工程 2002,9
[3] 胡林峰,须文波 基于ARM的网络隔离器的设计 微计算机信息 2006,1
[4] 万平国 网络隔离与网闸 机械工业出版社. 2004, 4