打造具有独立防护系统的安全计算机
2014-09-27
随着计算机和网络技术的迅猛发展和广泛普及,各企事业单位及政府机构的日常运营越来越依赖于信息系统。来自互联网的各种病毒、木马和攻击对这些单位的信息安全构成了重大威胁。
在形形色色的信息泄密案例中,有些是由于联网的计算机被攻击后,保存在其中的信息通过互联网直接泄露出去,如CSDN信息泄露事件;有些是被内部人员通过相关工具从内网的计算机收集后再泄露出去,如斯诺登事件。加强计算机的防护能力,杜绝从外部或内部的攻击引起的信息泄露,成为信息安全防护的一个重点。
现有防护技术的缺陷
可以从计算机基础设施、杀毒和攻击防范软件、加密技术、可信计算等方面来分析现有防范技术的缺陷和不足。
操作系统存在大量漏洞,容易破解和绕开访问控制。现在的计算机,如果不在BIOS进行特殊设置,可使用启动光盘/U盘绕过Windows登录或者USBKey认证,直接进入系统,从而获取各种机密信息。而CPU等核心器件也不断暴露出漏洞,如利用Intel 某些型号CPU中SMM模式中缓存漏洞进行安全破坏;由于AMD某些型号CPU的微码没有正确处理锁定指令及写聚合内存类之间的事务,特制的应用可以利用此漏洞造成系统挂起,导致拒绝服务。
目前的杀毒和攻击防范软件,都是基于已知病毒漏洞的特征,建立特征库并与怀疑软件的特征进行比较,判断行为的合法性。从原理上说,它无法防范新出现的病毒或者针对特定机构的攻击,如长期缓慢并且无明显重复或者突发特征的APT攻击。
目前普遍使用的核心加密技术,如RSA/DES/AES等加密算法为RSA等国外公司所有。而在互联网上广泛使用的IPSec/VPN/HTTPS/PKI等加密认证技术均是基于RSA等公司的算法,任何一个漏洞都会造成很大影响。
目前的可信计算尚未形成完备的实用体系,仅覆盖从硬件到操作系统层。虽然TCG定义了可信网络联结(TNC),但是由于相关设备及厂家支持等问题,在网络和应用程序层面上无法有效的支持,无法防范网络和应用程序层面上的攻击。
前面列举的一些防范技术和产品,基本针对来自网络和外部的病毒、木马和攻击等信息安全威胁,而对于内部的攻击基本无能为力。终端审计软件虽然可以防止敏感信息通过计算机终端泄漏,但是无法防范授权用户的一些蓄意行为造成的信息泄露,如授权用户登录涉密计算机后允许非授权用户操作计算机,授权用户使用照相机和手机等设备拍摄涉密信息等。
计算机终端进行物理隔离的必要性
顶层的云应用和服务是基于一些典型产品的,包括以防火墙为代表的网络安全设备、以VPN为代表的安全接入产品、以CA/PKI为代表的安全认证技术、以SaaS/IaaS为代表的虚拟系统。这些产品是由一些基础技术构建的,如CPU/芯片、操作系统、加密技术、虚拟技术网络协议、数据库等,这些技术基本被美国公司所掌握,如Intel、MicroSoft、RSA、VMWare、Cisco、Oracle等,而这些公司被NSA通过美国国内法规强令留出监控接口,或者植入带有后门的算法。可想而知,任何使用该技术的设备一旦连接互联网,对NSA及掌握相关技术的机构或个人,毫无机密可言。
由此可见,在相关的基础架构没有根本改变、核心技术没有掌握在国内的情况下,只有采用物理隔离,使处理和保持机密数据的计算机不和互联网连接,才能保证信息免除泄漏的威胁。
基于上述原因,市场上出现了一些隔离产品,如以网闸为代表的网络隔离设备。计算机终端产品有基于隔离卡的双网机,它利用操作系统的休眠和睡眠功能,主机分别工作于内网或者外网,达到双网工作的目的。但从原理上,它有一些明显的安全隐患,如内、外网共享CPU和主板,有隐蔽信道;内、外网必须在同样CPU架构下工作;内、外网不能同时工作;网线易误插导致泄密等。因此,基于隔离卡的双网机不能用于较高保密要求的场合。
独立防护系统的必要性
在普通计算机上安装杀毒/防护软件的普通防护方式代价最小。但是来自操作人员和外部网络的攻击可以损坏硬件、BIOS操作系统,包括杀毒软件本身。基于现有病毒特征库的防护方式,对于日新月异的0day攻击,很难做到有效防护。
基于可信计算的防护方式,目前有国际上的TPM和我国自主的TCM两套体系。它们的原理基本一致,即通过从可信根开始的完整性度量,保证PC从加电起,其上运行的每一个硬件、操作系统以及应用软件都是可信的,使计算机不会受到病毒、木马的威胁。具体实现时,它在BIOS层增加了一个硬件模块,完成加密、Hash计算和产生随机数等基本安全相关算法。由于不依赖于主机操作系统及上层软件,它可以有效验证和保护从硬件自检到操作系统引导的过程。但是由于相关设备及软件支持等问题,在网络和应用程序层面上无法有效的支持,当操作系统引导结束后,来自操作人员和外部网络的攻击仍然可以损坏操作系统到上层软件,包括建立在操作系统之上的一些防护功能,如数据加密等,不能达到有效保护的作用。
鉴于上述两种防护方式的缺陷,我们建议采用一个独立的安全防护系统,运行于独立的硬件和操作系统之上,不受计算机主机本身运行状态影响,也不会被普通操作人员行为和外部网络病毒和攻击的影响,即使在主机受到侵害的情况下,仍然可以完成设定的防护功能。
超安全计算机架构
基于现有网络基础架构的缺陷,以及现有计算机终端防护方式的不足,我们设计了一种不同于目前计算机终端的超安全计算机架构。
该架构拥有独立的、彻底物理隔离的双主机,在一个机箱内嵌入了两套独立的主机,分别用于需要处理机密数据的内部网络,以及需要大量访问外部信息并和外界沟通的外部网络。两套主机间只共享键盘、鼠标和显示器,其他部件都是独立的,不存在任何隐蔽信道和共享存储器,确保双网的彻底隔离。网口使用防误插设计,主机1和主机2的网线不能通用,杜绝了误插造成的泄密。使用异形U口设计,内外网的USB存储器不能通用,杜绝了误插造成的泄密。
该架构拥有独立于主机的安全防护系统。机箱内嵌了一个独立于主机的安全防护系统,运行于单独的硬件和操作系统之上。
它独立完成下列防护功能:身份鉴别。只有通过指纹识别和人脸识别后,才可以给主机上电。这两种身份鉴别信息都是难以伪造的,达到甚至超过了GBT 22239-2008中8.1.3.1 身份鉴别(S4)的要求;且该认证是在主机上电之前进行的,这个阶段任何病毒或漏洞是不起作用的;安全审计。安全防护系统全程审计用户的操作,由于审计不运行在主机上,这个行为不会因为计算机用户的操作或者外部网络的攻击而中断。审计日志保存在防护系统中,普通用户和管理员都不可篡改;达到了GBT 22239-2008中7.1.3.3 安全审计(G3)的要求;物理安全防护。采取了多项措施确保计算机终端本身的物理安全。首先,防护系统具备机箱防破拆功能,当监控到试图非法开启机箱或者暴力破拆时,进行告警和相关的防护行动。其次,利用卫星和基站双站定位进行机箱位置管控,方便管理员进行集中管控。然后,使用无线数据实现主机状态掌控。最后,利用短信实时监控,进行异常状态告警,或者实施如数据自毁等防护指令;访问控制。安全防护系统设置了3种不同的用户身份:普通用户只能操作主机,不能改变防护系统的功能;管理员可以并配置安全防护功能;审计员则监督普通用户和管理员的操作。这样做到了用户管理,三权分立,达到了GBT 22239-2008中7.1.3.2 访问控制(S3)的要求。