1 引 言
数据安全大体上可以分为传输安全和存储安全两个方面。传输安全针对数据传输过程,包括信息错误发送、信息非法拦截、信息泄漏、信息干扰、信息缺失等。存储安全包括存储环境安全、存储介质安全、存储管理安全、病毒处理等方面[1]。目前针对网络传输安全的研究比较多,而存储安全也不能被忽视,很多信息安全事故都是出现在数据存储这一环节上。
目前,技术人员正在不断研究数据存储领域的各项技术,以提高系统的整体安全性。其中有从硬件实现的自安全的存储设备,有从软件理论实现的数据分割算法,还有基于SAN的存储及其组密钥管理方案,此外容侵能力也是安全存储必不可少的一项。
安全的背后实际上就是一套完整的安全规划。尽管任何人都不可能使数据实现百分之百的安全,但只要我们采用可靠的安全方法、规程和技术,再配合以工业标准(如正在制定中的IEEE1619标准体系[2])就可以达到目前条件下最好的安全水平。本文将从数据存储的各个层次介绍实现其安全性的各项技术。
2 加密存储标准
现在有许多的安全通信标准,包括IPsec、SSH以及邮件加密标准等等,确保了信息在传输过程中的保密性。但是如果我们不能很好的保护静态的存储数据,同样会遭受安全威胁。无论存储数据是被盗、丢失还是被删除,都会造成同样严重的后果:安全保密的信息将不再安全保密。
至今为止,还没有针对静态存储数据而提出的安全标准。为了弥补这一缺陷,IEEE安全数据存储协会提出了 P1619这个安全标准体系,这是一个共享媒体的加密存储标准体系。其目的是为了制定对存储介质上的数据进行加密的通用标准,确保用户能够安全传输关键数据,促使标准的产品化。作为共享存储媒体的标准体系,P1619定义了在数据被发送到存储设备之前,对其加密的算法和方法。
传统的数据存储系统中使用了一系列的安全措施,当一些存储介质不再使用的时候,必须对其上存储的数据进行销毁,如果这一步进行的不彻底,那么攻击者同样可以获取保密信息。为了有效的保护磁盘上的数据,必须对其进行加密,而IEEE正试图通过努力来制定这一安全加密标准。
目前,已经提交的草案共有三份:EME-AES[3]、LRW-AES[4]和Key Backup Format[5]
² EME-32-AES是对宽数据块进行加密的一种方法,其提出的目的是为了对存储的数据提供扇区层次的加密,典型的存储扇区大小为512字节。它是AES 加密算法的一个子程序,使用AES的密钥对长度为512字节的存储块进行加密,其加密密钥长度可以是16位、24位或者32位的。
² LRW-AES和EME-32-AES不同,它是针对窄存储块而设计的加密方法,可以有效地防止复制粘贴以及字典攻击。
² 密钥备份格式化草案中描述密钥资料以及数据在存储和恢复时所用到的各种参数的备份形式。这个草案是针对宽存储块加密而拟定的,使用这种标准格式使得各厂家生产的存储设备具有很好的兼容性和数据的通用性。P1619确定了密钥的备份结构,该结构中包含了对加密数据实施解密所需的全部信息。结构的具体形式是用 XML定义的。使用XML对密钥的备份作统一的结构描述,使其具有很强的通用性。通过XML加密(XML_ENC)和密钥管理规范(XML_KMS)来增强了备份的安全性和保密性。
此外,由于安全存储设备还没有一个公认的工业标准,因此SISWG正在研究如何对安全存储设备自身进行认证,使其符合P1619标准。由于密码学具有很强的抽象性,因此,针对P1619提交的草案都必须经过严格的理论证明才能被认可,从而确保了该标准体系的严格性和权威性。
3 自安全的存储设备
随着信息化的不断发展,在各种应用环境下对数据资料的临时或永久存储变得越来越重要了。存储系统的规模越来越大,提供的服务也越来越多样化。但随之而来的是系统越来越复杂,也不容易维护。而且恶意病毒、木马程序、入侵等一系列因素使得系统的安全性越来越难得到保证。为此,我们将系统的安全保障划分到一个个子模块中分别进行处理。自安全的存储设备[6]从最低层硬件实施了对数据的保护。
自安全存储系统具有一种新的安全特性,即存储磁盘甚至可以不信任本机的操作系统,怀疑所有对数据的读写请求。在自安全的存储磁盘内部有一个嵌入式的子系统,通过内置的操作的指令对存储的数据进行管理。正是由于自安全存储设备的专一性,使得其实现起来相对比较简单,而且不同的存储介质可以使用不同的安全策略。其优点还包括,只需占用很少的资源来实现入侵检测、错误诊断以及数据恢复等。可以更灵活的事实安全性和完整性的检查。自安全的存储设备不仅可以对存储在其上的数据实施保护,还可以进行数据访问控制。即使操作系统被入侵,自安全的存储磁盘还可以通过访问控制对数据进行保护。自安全的存储设备使系统从软件和硬件两个方面分别实施安全保护,增强了整体的安全性能,也起到了一定的容侵容错作用。
如何将不用的信息彻底删除也是自安全存储设备必须考虑的一个问题。在大多数计算机上删除一个文件的时候,该文件并没有被真正的删除。删除掉的唯一的东西就是磁盘索引文件的入口,磁盘索引文件用来告诉机器数据存在磁盘上的什么位置。现在市面上有许多利用磁盘恢复技术的文件恢复软件,可以在文件被删除后将其恢复。
另外,还有别的一些不安全的因素也十分令人担忧,例如使用虚拟内存的计算机的内存的信息即使你没有刻意保存,也会自动地写到磁盘上,而且也永远不知道正在读取的敏感文件时在什么时候写到磁盘上的。这就是信息窃取者有机可乘。为了删除某个文件,以使软件不能读恢复的文件,必须对磁盘上的文件所有位进行物理写覆盖。所谓写覆盖就是将不涉及安全的数据写到以前曾存放敏感数据的存储位置。为了彻底的清除存储介质上的敏感信息,DOD要求先用一种格式进行写覆盖,然后用该格式的补码,最后用另一种格式再覆盖一次。写覆盖的次数根据存储介质而定,有时也依赖信息的敏感程度。无论怎样,只要没有用不涉及安全的数据进行写覆盖操作,敏感信息就不会被彻底清除。
4 基于软件的安全存储
目前一些数据存储系统采用集中式管理,数据仅仅存储在少数的一些服务器上,这样不仅存在单点失效问题,而且这些服务器成为攻击和入侵的主要目标,这就使得数据存储的安全性得不到保障。采用非中心式存储系统通常采用数据分割和冗余技术在系统各结点分开存储信息。这样可以增强系统的可扩展性,避免单点失效问题,并且可以容忍较少的结点错误。
为了实现分布式存储,我们必须对数据进行分割,最常见的一些数据分割算法都是基于门限方案来实现的[7]。Short Secret Sharing 就是这样一个将门限方案和加密技术结合起来的一个典型方案。在这个方案中,用随机密钥对原始数据信息进行加密,然后用秘密共享方案来存储这个随机密钥,加密后的原始数据则进行散列存储。然而,这个方案的扩展性并不令人满意,当组规模不断扩大时,组员之间必须通过越来越多的信息轮回来达成一致协议,使得资源开销和服务时延增大,效率变得越来越低。
数据分割中还有一种常用的方案就是信息分割算法IDA(Information Dispersal Algorithm)[8]。其具体做法是,将信息 分成 个大小为 信息块,任意m个信息块能够重现完整信息 。图1所示就是一个信息分割算法的示意结构。
图 1 数据分割示意图
Ramp方案也是基于门限机制的一种数据分割算法。(t,k,n,s) 为一个Ramp数据分割方案,满足 并且:
² 至少 个影子才能恢复秘密
² 少于或等于 个影子不能获得秘密 的任何信息
² 大于 而小于 个影子可以共同获取秘密 的部分信息
此外还有一些别的数据分割方案,为了更好的将这些算法应用于各种场合,我们一般从机密性、完整性、可用性以及存储空间和服务时延等方面来综合考虑:
² 机密性:分割后的数据不能偷漏原始数据的任何信息。
² 完整性:分割后的各存储模块能准确地还原初始的数据。
² 可用性:分割后的数据应该便于还原,尽量减少还原的开销。
² 容忍性:即使某些数据片损坏,系统仍能够将原始数据恢复。
² 存储空间:分割后存储各数据片所需的空间。
² 服务时延:用户从开始请求数据服务到最终获得数据的时间,为了降低服务时延,数据分割方案应该尽量减少数据的重现时间。
一般来说,系统的数据存储情况可能比较复杂,我们要根据实际情况,综合平衡各方面的需求,最终来确定采用哪种数据分割存储方案,或者将几种方案结合起来综合运用,才能更好的满足系统的需求。
5 SAN及其组密钥管理
存储区域网SAN(Storage Area Network)[9]通常是指由多台互连主机通过光纤连接实现共享的存储设施。这些主机可以直接连接到SAN上,也可以通过光纤集线器或交换机连接。SAN是由存储磁盘或SAN磁带库等组成的一种高速子网,通常可以提供更多的存储空间供整个LAN和WAN网络共享,而且不会影响到网络服务或生产效率。
对于任何分布式系统来说,我们都要确保其存储数据的安全性,最主要的就是完整性和保密性。为了在非集中式的环境下,在一组SAN实体之间安全的共享数据,一般采用组密钥管理相对容易的公钥加密体制。为了降低密钥管理开销,通常建立一个双层密钥管理体系结构:用对称加密对大块的数据快速加密,然后用所有授权SAN实体的公钥加密对称加密密钥。
为了确保存储数据的安全,必须对SAN的组密钥进行有效的管理[10]。通常的密钥管理协议必须具备以下属性:
² 共享组密钥由所有组员共同产生:K=g(N1,N2...N3)
其中,g() 为单线函数, 各组员自行产生的秘密影子。
² 所有的影子均秘密保存,在没有获取至少一个影子的情况下不能推算出共享密钥的任何信息。
在整个密钥管理系统中主要有三个组件:EDUs、Key Lockbox和Master Key Component,如图2所示
图2 SAN密钥管理组件结构
SAN网络中每个参与实体用自己的密钥分别对每个加密存储单元EDU加密,然后将EDU-Keys存储在Key Lockbox中,最后用主密钥对Key Lockbox进行加密,而主密钥由所有实体共同协商产生。
与通信中的组密钥管理不同,在SAN中我们利用共享存储来对组密钥进行管理。将DH密钥交换协议与密钥树结合起来,可以很好的实施SAN的组密钥管理。利用分布式的组密钥协商,根据组成员的变化动态变换组密钥,周期性的对组密钥进行更新。图3所示的就是密钥树的例子,位于树根的节点就是所有组员共享的密钥,叶子节点 对应于每个组员自己的影子。每个节点通过自己的影子以及兄弟节点的屏蔽密钥可以算出父结点的密钥,这样每个叶子节点就可以得出从他自己到根结点路径上的所有密钥。
图3 SAN密钥树示意图
当用户加入和离开的时候,所有组员通过选举产生一个执行者来对密钥树进行调整更新,并将更新的结果写入到共享存储文件中,调整后的授权用户可以从共享存储文件中读取数据,通过计算得出组共享密钥。
6 容侵技术
对于构建一个安全数据存储系统来说,传统的方法是采用防御机制抵御外来入侵以达到安全目标。为了确保系统的安全性,在应用之前必须防御机制不断测试,找出缺点并加以改进。虽然这样可以有效地抵御大多数已知的攻击,但对于变幻莫测的未知攻击,单纯的防御机制就显得力不从心了。特别是在分布式系统中,需要交互的节点可能多至成千上万,我们很难保证每一个节点都防守得固若金汤。如何在部分节点失陷的情况下使系统正常运行?于是我们不得不提到容侵(Intrusion Tolerance)[11][12]这个概念。
图4 三级防护示意图
图4形象地说明了入侵防护、入侵检测和入侵容忍三级防护体系间的关系。容侵作为系统的最后一道防线,即使系统中的某些部件遭受攻击者的破坏,整个系统仍能提供安全的、可信赖的服务。此外,还能对入侵造成的损失进行还原或修复,对某些已成功的入侵能形成相应的免疫能力。
容侵系统的目标包括保证服务器上的数据的真实性、完整性,保证服务器上数据的秘密性,保证服务的可用性和保护系统的安全运行四个层次。这四个层次逐层递进,每一层都比前一层提供了更强的保护。总的来说,容侵系统将力图使应用系统在受到攻击的情况下,仍能提供所要求的服务,必要的时候提供降级服务,并保护服务器上的数据的秘密性和完整性。我们可以将传统的防御机制与容侵机制结合起来,增加系统的防御深度,做到失而不陷,在受到攻击时增加系统的可用性和完整性。
对于安全数据存储系统[13]来说,数据的有效性和机密性是两个最主要的目标和要求。一些系统为了增强系统数据的有效性,只是对数据进行了简单的冗余备份和加密,然而这种方法面临存储效率低、加解密运算量大的根本问题,特别是面临泄漏单个结点即泄漏全部的安全隐患,严重影响系统的安全性和可用性。采用秘密共享是一种很不错的选择。基本方法是:使用门限秘密共享机制将数据分解成多个影子,然后将不同的影子存储在系统不同结点,只有获得足够数量的影子时才能将数据恢复,任何小于个服务结点均不能恢复共享信息。门限方案很好的确保信息的紧密性和有效性。
在安全数据存储系统中采用门限方案比采用冗余备份和数据加密拥有更多的好处[14]:
² 由于门限方案将保密信息分解成许多影子,并且只有达到门限数量的影子才可以恢复保密信息,我们可以根据需要来改变门限值的大小。门限值小,恢复保密信息所需的影子数目就少;门限值大,恢复时所需的影子数目就多,这样就给系统带来了很大的灵活性。
² 每个结点维护影子所占的存储空间也比数据的复制所占的空间少。
² 一些门限方案提供的加解密速度要比公钥体制快。
² 门限方案之需要各节点存储影子,而无需使用密钥,并且单个影子不存在泄密问题,安全性比较高。
对于入侵行为和数据存储系统的强健程度进行分析,利用容错理论,研究新的容侵方法和容侵机制,提出基于代数结构和门限秘密共享方案的网络数据存储模型,是我们下一步的研究目标。通过不断的探索和研究,建立容侵数据存储系统的基本理论,并解决容侵的关键技术,为建立实际容侵存储系统奠定基础。
7 小结
随着社会信息化的不断发展,数据资料的重要性日益突出,而如何安全保密的存储这些数据资料是不可避免的一个大问题。数据存储的安全性越来越受到人们的重视,通过对数据安全存储技术的研究,我们发现其发展趋势有如下几点:
² 存储网格技术的应用在不断扩大,存储网格既可应用于SAN环境,又可应用于NAS环境,提供了对存储数据进行快速统一查看、管理的能力,可实现数据库和企业之间更紧密的应用整合,并提供更高的数据保护能力。
² 对容侵技术的需求不断增大。要确保网络系统的安全,除了要继续研究入侵检测之外,还应研究网络的容侵,两者相辅相成,从不同的侧面共同确保网络安全。在我国,入侵检测已经有较多的研究,但容侵研究在国内进行得较少,国外也是刚刚起步,因此开展网络容侵理论与技术的研究具有非常重要的意义。
² WORM技术在磁带存储中的新应用。WORM技术最大的特点,正是在于对数据存储法规遵从的应对。WORM技术的全称就是Write Once Read Many,也就是说通过WORM技术存储在介质中的数据,将不会因各种意外而丢失或被修改,这就保证了企业对一些重要的业务数据长期存储的需求。
技术总是在不断的向前发展,但是我们在选择和搭建数据存储系统的时候,必须对它的每一个组成部分进行仔细审查,将业务需求、成本预算、数据分析、协议选择和体系结构、管理工具、容错容侵技术以及数据保护方法等结合起来综合考虑,这样才有可能使系统达到最优化。
|