网闸隔离技术原理

一、隔离电子开关

1.1    隔离网闸的设计模型                      

介绍隔离网闸技术,我们想首先介绍网闸的设计原型,通过该原型可以使我们更清晰地了解设计网闸产品的初衷,以及网闸天生就具有的其它安全产品无法取代的新安全特性。

 隔离网闸最基本的设计理念来自于一个被称为Sneaker-Net的模型,该模型期望解决这样一个矛盾:如何在最大程度上保护我们私有网络安全的同时又可与外界(如Internet)进行安全的交换数据交换。Sneaker-Net模型实际上给我们提供了一个很好的解决方案,该解决方案实际上已经在中国电子政务的许多敏感网络上被大量采用。该模型的结构如图所示:

 

在Sneaker-NET技术中,有一个人来操作,另外包括两个网络:不可信网络和可信网络,这两个网络物理隔断,在大多数Sneaker-NET方案中,也有一个独立的计算机,或者一个与两个网络分离的DMZ区域,用于内容检查。

采用Sneaker-NET技术后,网络信息流如下:

1.  该人在不可信网络上的计算机上手工方式拷贝文件到磁盘或磁带。

2.  该人将磁盘或磁带拿到一个独立的计算机上进行内容检测。检测包括(不仅仅这些):病毒扫描、检验该文件格式是否和预先定义的文件格式相符等。

3.  如果内容检测为不安全或非法,它们将被丢弃;如果内容是安全和合法的,此人在可信网络上的计算机上手工方式将该磁盘或磁带的文件拷贝到计算机上。

4.  信息从可信网络传输到不可信网络将也用相似的流程。

 在Sneaker-NET模型中,没有人可以从不可信的网络访问和操作控制可信网络上的计算机,所有允许到可信网络的数据都在一个安全的环境中经过详细的审查,这是从不安全环境到安全环境传输信息的一个最安全的方法。

 1.2    该模型带来的新安全特性

 同传统的防火墙等访问控制技术相比,Sneaker-Net独特的模型结构天然具有了一些其它安全技术难以达到的安全特性,主要包括以下几个方面:

1) 对网络层/OS层已知和未知攻击的全面防护能力。由于在该模型中内外网间实际上物理断开,所有访问被转化成应用层数据形式通过独立的存储介质在内外网移动,因此,移动的数据中并不包含相对低层的网络层/OS层控制信息,换句话说,隐藏在网络层/OS层的攻击行为根本没有进入受保护内网网络的可能,无论该攻击方式是已知的还是未知的。而目前其它安全技术基本上还是基于特征匹配的方式过滤这些攻击行为,遗漏和处理不当都在所难免,并且对未知攻击毫无办法,对受保护网络造成严重安全隐患。

 2) 不再依赖操作系统的安全性。目前所有安全技术的实现都必须依赖操作系统做为平台提供低层服务支持,操作系统的安全性实际上就影响到整个安全产品的安全性,目前主流的OS主要是微软和Uinx/Linux两大类,所有这些操作系统都具有一定数量的Bugs,这些漏洞也随之成为整个安全产品的漏洞。而Sneaker-Net模型很好地解决了这个问题,其内网处理服务器上的操作系统完全不对外暴露,暴露在外的仅仅是负责外网处理的服务器,即使该服务器因操作系统Bugs被攻击,实际上也无法进一步影响内网处理服务器,因为内外网是物理断开的。实际上,与防火墙等其它安全产品不同,黑客无法利用现有操作系统Bugs获得对Sneaker-Net结构的控制权。

 3) 强化安全决策过程的安全性。安全决策是最重要和基础的安全防御手段之一,安全决策包括认证、访问控制列表(ACL)、内容过滤以及格式检查等一系列方式。安全决策功能一旦失效,恶意访问将无阻碍地进入受保护网络(例如访问控制列表被更改,已禁止端口被开放等)。目前的网络安全产品对决策模块的防护能力相对较弱,而Sneaker-Net模型则将所有安全决策过程置于中立的与内外网没有连接的隔离区内完成,且关键的策略库置于与被检查数据物理断开的受保护端(LAN)服务器上,因此,策略库和决策过程都十分安全,未经严格检查的数据将始终被隔离在受保护网络(LAN)以外,确保决策过程的安全。

 4) 数据静态化。在Sneaker-Net模型中,所有进入模型内的数据在人的传递过程中都是静态的,其内容不被任何程序执行,仅仅是对静态内容实施检查和决策,因此,这些数据本身携带的任何恶意代码都无法执行,也就无法危及系统的安全,整个系统安全可靠。

 1.3    模型的实现

 GAP隔离网闸技术就是基于这样的一个机理实现的一种安全信息交换技术。在Sneaker-NET中,人的作用是在两个网络之间进行低速的手工交换数据,而在采用GAP技术的设备中,用一个快速电子开关来实现这一功能;用在Sneaker-NET中做数据交换的磁介质,在GAP技术中则用存储设备来代替。在某一时刻,电子开关只能连接到其中的一个网络,其它的硬件和软件实施则类似于Sneaker-NET的装置。

 从前述的Sneaker-Net模型中我们不难发现,模型之所以具有上述有价值的安全特性,关键在于隔离机制的实现,因此,网闸如何真实模拟人的运动机制是实现Snaeker-Net模型的关键,也是体现网闸安全优势的关键。

最佳的实现方式是通过半导体电子开关来实现。半导体电子开关以纯物理方式实现了电路的导通与断开,与加/解密等逻辑断开方式不同,它具有固化的不可编程特性,不会因溢出等逻辑问题导致系统的崩溃,在最低层即物理层面上保证了网络断开功能的实现,具有最高的安全可靠性。

 由于半导体电子器件具有开关功能,通过两组开关器件即可准确模拟出Sneaker-Net模型中人的工作机制,如图所示:

 

图中箭头标志代表了半导体电子开关,它可以在公众外网服务器与受保护网服务器间摆动,同一时刻开关仅能与一边服务器连通,该动作模拟人在断开的内外网服务器间的移动。与电子开关直接相连的是一个暂存数据的交换池,该结构模拟了人手中的存储介质。

 半导体电子开关结构在最基本的物理层次上真实模拟了Sneaker-Net模型,它不仅继承了Sneaker-Net模型所有的安全特性,同时又解决了原模型中数据传输速度与延时的问题,使得该模型可在不影响用户网络应用的前提下实现期望的安全功能。可以说,电子开关的实现是区分网闸与其它安全产品的重要指标。

 二、协议分拆/重组

 2.1 协议分拆与重组技术

隔离网闸对于接收到的任何外部会话连接,首先通过外部网络接口将会话终止,然后利用协议解析模块将TCP/UDP数据格式打破,并采用内部专有的封装协议将分解得到的数据打包后通过隔离开关传输到内网可信端。在可信端数据经过一系列安全检查之后,协议解析模块对数据重组,并在内部网络接口重构到内部服务器的会话。

 对于从内部到外部的TCP连接,隔离网闸也具有对等的处理方式。

经过如上的处理,隔离网闸事实上已经将原来直接连通内外网络的TCP连接,从逻辑上分解为外网到网闸不可信端的TCP连接、不可信端到可信端的专有封装协议连接、可信端到内网的TCP连接的组合。因此,在添加伟思信安隔离网闸之后,可以阻断内外网络之间的TCP对话,其结构如图所示:

 

 

值得提出的是,隔离网闸不但在逻辑上终止了TCP对话,还从物理上断开了内外网络之间的连接,使得内外网络之间在任何时候都不存在直接的物理层和链路层连接通路。

 2.1 该技术的安全特点

   该技术主要解决了两个方面的安全问题:

1) 解决了基于网络层和传输层的已知和未知攻击的防御难题。TCP/IP协议是早期用于军事通讯目的的协议,其重点是考虑通讯网络健壮性和数据传输的完整性,但在网络安全方面的考虑较少,没有建立有效机制来鉴别报文控制信息的真实性和准确性。因此,基于TCP/IP协议漏洞的攻击也不断危害着我们网络的安全,且新的变种也不断在出现。如SYN、FIN泛洪攻击就是比较严重的DOS攻击方式。目前主要的防范方法是建立特征库,这种方式并不能有效地杜绝攻击行为的发生尤其是对新出现的攻击行为。而TCP/IP协议的分拆/重组使得来自不可信网络的TCP/IP报头无法穿越网闸对受保护的可信网络构成影响,包括已知和未知的攻击行为。

 2) 解决了系统自身安全性的问题。TCP/IP协议栈已知的协议格式和安全漏洞使得黑客有机会对任何支持该协议的堡垒主机如防火墙、防病毒网关等发动攻击,诸如莫里斯病毒这样的回话劫持攻击以及利用ICMP协议实现的系统服务嗅探攻击等。这些攻击随时有可能获得系统的控制权。解决的最好方式就是将接受到的数据剥离报头部分在内部不采用任何网络协议,而是利用GAP反射专用电路实现数据的读写控制,这样就使得黑客无法利用任何方式攻击网闸,保证了系统自身的安全性。

 三、访问控制与日志

 3.1 访问控制的重要性

        隔离网闸的硬件体系结构提供了一种优秀的安全结构体系,这种特殊设计的隔离结构使得链路层断开,网络层和操作系统层的攻击被自动阻止,但仅有这些是不够的,来自应用层的攻击还没有得到解决。

     在网闸的设计模型中安全检查是核心部分之一,只有在详细而丰富的安全检查环境下,才能充分发挥网闸特殊硬件结构的作用,解决来自应用层的安全问题。网闸的隔离硬件结构好比是一扇坚固的门,访问控制与检查则定义了这个门对外所开放的程度。从中我们可以看出,安全检查对于安全网关的重要性。应用层的攻击威胁来自多个方面,因此要求隔离网闸必须具有细粒度的访问控制能力,常见的应用层风险包括:

n         应用系统Bugs导致的溢出攻击,如红色代码病毒。

n         应用协议漏洞引发的风险。

n         明文的cookie导致的回话劫持

n         软件设计错误导致的脚本漏洞,如SQL注射

n         恶意控件引发的攻击行为

n         访问权限配置错误导致的非法文件上传/下载

n         较弱的用户身份鉴别导致的伪造身份登录

    单一的访问控制手段显然无法应付如此复杂的安全环境,IP、子网、时间、端口等传统的访问控制方式是最基本的要求,它们给攻击者留下了太多的攻击途径。比如基于端口的访问控制策略就将该服务下不必要的协议命令暴露给了攻击者,显然,这样的控制和检查能力太粗放了,使攻击者有机可乘。

 3.2 网闸应具备的访问控制能力

     网闸应具备的访问控制能力主要是为防御应用层攻击设计的,针对上述应用层攻击的类型,网闸应具备以下的访问控制能力。 

   1) 基本的访问控制能力。网闸应支持包括常见的IP、子网、时间、端口、内容搜索、文件格式检查在内的基本访问控制对象。这些对象是构成一个总体访问控制和检查框架的基础。

   2) 强身份认证能力。身份认证是整个访问控制的基础。严格的身份认证将大幅提高网络的抗攻击能力,基于数字证书的SSL、Radius认证、微软Active Directory认证以及RSA Secure ID都是具有极高安全性的身份认证方式。另外,针对cookie中毒问题,网闸也需要强化对cookie的认证保护。 

  3) 应用层协议分析功能。应用层协议分析可过滤基于协议漏洞发起的攻击并过滤应用层协议的命令,更精确地控制用户的访问,减少因无用命令开放暴露出的命令滥用风险。同时,通过对HTTP等协议的分析,我们还可以过滤恶意控件或脚本等对象。

   4) 应用参数过滤功能。SQL注射、Tampering等许多攻击行为都是利用URL等应用接口传送参数实现的。攻击者常通过URL利用用户ASP等动态页面的设计错误以及WEB服务器的设计错误控制系统或窃取用户数据。通过应用参数的检查,我们可以避免这类利用溢出或其它参数检查漏洞造成的攻击。这些攻击是目前黑客主要的攻击手段之一。

 3.3 日志的重要性 

与路由器等产品相比网络安全产品更关注日志。日志反映了网络活动的总体状态,通过日志系统,我们可以观察一段时间范围内的网络活动,并根据这些活动分析网络是否处于正常状态,有无非法访问或攻击行为发生。日志是网络安全分析的重要手段,IDS系统分析攻击的基础资料就是来源于大量的网络和系统日志。没有完备的日志系统,发现和分析攻击行为将变得十分困难。

 就网闸而言完整的日志功能具有更重要的安全意义。隔离网闸独特的网络隔离特性决定了用户受保护的内网在与外网的信息交互过程中,内网无法获得任何外网源地址、访问协议等构成日志的基础信息,这些信息都被网闸屏蔽了,此时内网IDS等系统都无法获得完整的来自外网访问者的记录。因此,网闸必须具有完整强大的日志系统,才能与内网中包括IDS在内的安全系统向结合,准确分析攻击行为并反跟踪攻击者。

 3.4 网闸日志系统应具备的功能

    网闸的日志系统应具备以下功能:

1) 完整的日志记录功能。这是基本的日志功能,它应详细记录访问者的来源、时间、协议以及决策状态。

 2) 日志报警功能。网闸应对拒绝的访问和异常访问这类日志提供报警功能,包括管理界面报警显示和邮件报警方式。报警功能能及时提醒管理员注意网络异常活动,主动将风险消除在发起阶段。

 3) 日志的备份与集成功能。这些日志应能更安全地通过备份功能保存在异地,并通过与日志系统的集成为管理员提供具有更高可分析性的日志结果。

 四、策略自定义(策略库后置、数据静态化)

 4.1 访问决策过程的安全性考虑 

   前文已经提到过,安全决策是组成隔离网闸安全防御体系的重要环节之一。如何确保网闸内部安全决策过程的安全性是需要重点考虑的问题。决策过程的安全保护如果比较脆弱,攻击者就较容易绕过访问决策机制,使所有访问控制失效,这是及其危险的。相对于防火墙等安全产品来说,隔离网闸独特的隔离结构以及再次基础之上延伸的保护机制将更强大地保护决策过程的安全。

     保护决策过程安全实际上应包含以下要素: 

1) 安全策略的自定义:所有安全策略应在管理控制台的控制下由管理员制定,根据不同的安全环境和访问要求进行设定,使整个决策系统以最优化和隐秘的方式工作。这种由管理员私有控制策略定义的方式将增加系统的抗嗅探能力。而那些需要厂家技术人员协助预定义策略的方式增加了除管理员以外的其它人获知安全配置敏感信息的可能,包括关键主机的地址、端口、用户名/口令等信息。 

2) 除管理控制台外策略库的不可更改性:规则库是整个访问控制的核心,规则库控制权一旦被黑客获得,整个访问控制系统也就失效了。除了管理控制台通过安全方式登录控制台以外,应保证策略库即使是在系统崩溃情况下,也不能修改。 

3) 策略执行的绝对性:没有经过策略决策的数据没有任何途径通过隔离网闸。 

4.2 策略自定义

    优秀的策略自定义方法是将所有可定义的访问控制属性以选项的方式完全交由管理员选择,并通过通过一条或数条规则表现在访问控制列表中。控制界面拥有易于理解的操作环境,管理员可根据需要随时调整访问控制策略。 

4.3 策略库后置和数据静态化 

    隔离网闸独有的隔离开关体系使策略库的不可更改性以及策略执行执行的绝对性有了基本的保证。这需要额外两项技术的支持,即策略库后置和数据静态化。策略库后置是指整个网闸系统将策略库部署在受保护网络(可信端)端的处理服务器上,该服务器与高风险的外网之间是物理隔离的,因此,策略库与外网也是物理隔离的。数据静态化指的是进入网闸系统的数据在被网闸解构后才送入隔离区,被解构的数据已经打乱了数据和命令原有的格式,不再具有执行能力已经无法对隔离系统构成威胁。

    所有进入隔离区的数据将被专有硬件电路无条件静态化,进入网闸检查区的任何数据只能被动地等待安全检查。整个检查过程是在网闸处于内外网断开的安全状态下完成的,不受网络攻击的影响。因此,检查过程是绝对的,不受其它因素干扰。规则库后置以后,通常状态下隔离区实现了规则库与外网的隔离,不受外网影响。当有数据摆渡到内网时,由于该数据已经被静态化,不具有可执行能力,因此也无法对规则库构成影响,规则库十分安全具有极强的不可更改性。