【 摘 要 】 在高安全领域,XML文档中可能包含不同程度的敏感信息。为了确保高敏感信息的完整性、安全性和可用性,XML文档存放的信息需要受到强制访问控制策略的保护。文章采用BLP强制访问控制模型,在XML文档中扩展了安全标签信息,并给出了扩展后的文档模型需要满足的规则;讨论了模型的体系结构和实现机制,并通过实验对XML文档上的四种基本操作的安全性进行了验证。
【 关键词 】 可扩展标记语言;强制访问控制;BLP模型;安全标签;数据库
【 Abstract 】 In the field of high security, XML documents may contain sensitive information of varying degrees, in order to ensure the completion of highly sensitive information, security and availability of information stored in an XML document needs to be protection of mandatory access control policy. This paper adopts BLP mandatory access control model, extends the security label information in the XML document, and gives the rules that the extended document model s need to satisfy. Discusses the architecture of the model and the implementation mechanism, and verified by the safety experiment of 4 basic operations on XML documents.
【 Keywords 】 extensible markup language (xml); mandatory access control (mac); blp model; security label; database
1 引言
目前,XML技术的应用范围越来越广泛,随着XML文档中信息内容量的增长和敏感程度的加强,XML安全也变得更加重要了,出现了很多XML安全方面的标准,例如XML签名、XACML等。在高安全领域,XML文档中可能包含不同程度的敏感信息,为了确保高敏感信息的完成性、安全性和可用性,XML文档存放的信息需要受到强制访问控制策略的保护。XML文档所面临的安全威胁类型主要有非法访问、非法篡改、假冒伪造、拒绝服务、抵赖。为了保证XML文档中的信息不受到非授权的查看和修改,必须控制用户对XML文档的访问。XML文档的结构是层次型的,它的基本成员是元素,通过元素的组织将许多相关的信息组合成一个文件。虽然一个XML文档包含的信息都是相互关联的,但是这些信息的敏感程度可能不相同,这时我们必须为文档中的不同元素设置不同的安全属性,因此需要细粒度的访问控制模型来控制用户对XML文档中信息的访,这个模型不仅能控制用户访问整个XML文档,同时能精确到文档中的元素甚至是元素的属性。
到目前为止,XML 文档安全性的研究主要集中在自主访问控制、基于角色访问控制和基于视图访问控制技术。但是基于角色的访问控制模型在多安全级别环境中不能很好地对信息进行访问控制,而且自主访问控制模型也有内在的缺陷,不能抵御木马的攻击。此外,基于视图的访问控制模型在XML 文档结构发生变化时,所有存储的视图都需更新,降低了系统的性能,所以目前的这些对XML文档的安全性研究都存在或多或少的缺陷。BLP模型是一种基于规则的强制访问控制模型,能满足对数据保密性要求特别高的需求,但不能保证敏感数据的完整性。本文在BLP 模型的基础上对主体和客体的安全标签进行改进,扩展了XML文档模型使其包含标签信息,并给出了扩展后的文档模型需要满足的规则,然后通过讨论XML文档上的4种操作,描述了面向XML文档的强制访问控制模型的详细内容,使其能够支持系统完整性,给用户提供更大的灵活性和安全性。
2 基于BLP模型的XML访问控制模型
2.1 基于BLP模型的XML访问控制方案设计
强制访问控制(Mandatory Access Control, MAC)策略一般是根据主体和客体的安全属性来管理用户对信息的访问。主体是那些访问信息的主动实体,客体是存放信息的被动实体。强制访问控制主要包括BLP 模型、Dion 模型等,其中BLP 模型是高安全等级系统中最常用的强制访问控制模型。BLP 模型是一个很安全的模型,它能满足对数据保密性和安全性要求特别高的需求,BLP 模型采用“上级读,下级写”的读写规则来保证对敏感数据的机密性、完整性的保护。
基于BLP模型的XML访问控制的实现主要分为五大模块,如图1所示。其中,服务器验证模块是对用户的合法身份进行验证,用户信息经加密后存储在数据库中。Ulable.xml 存储用户的安全标签信息,客体的安全标签以及课题XML文档都存储在信息安全文件库中。MAC 模块是处理XML 文档访问请求的核心模快,处理用户提出的查询及相关操作,并返回操作结果给用户。信息安全文件库是对客体和主体的安全标签进行安全存储的地方。XML文档/模式库是对XML文档和模式文档进行安全存储的地方。
2.2 信息安全文件库的实现
2.2.1 主体标签信息
在BLP 模型中,管理员给主体分配四个密级,即读密级、写密级、删除密级、更新密级。为了防止低密级用户恶意篡改敏感信息,规定在用户的安全标签L=(Cr, Cw, G)中,Cr(读密级)必须不小于Cw(写密级),这里的Cw(写密级)包含广义的删除和更新密级。用户主体标签信息XML文件伪代码如下:
dengyongkai
4
4
4
4
sunchunman
3
3
3
3
2.2.2 客体标签信息
客体安全标签信息就是对XML文档中的各个元素进行标签定义,加上密级。在强制访问控制模型中,每个客体都会有自己的标签。所以,不仅整个XML文档拥有标签,而且文档中任何子元素或者属性都可以拥有标签。一个XML模式文件可以用来定义一批结构相同、内容相近的XML文档,很多情况下,这些文档的安全属性是相似的。XML文档的根元素是所有其他元素或者属性的直接或间接外层元素,因此它的标签被所有其他元素或属性的标签所支配。而作为元素和属性的载体,XML文档的标签也应该被其中所有元素和属性的标签所支配,所以可以把根元素的标签作为XML文档的标签。当每个元素和属性进行了标签划分后,再按照BLP的强制访问控制原则为每一个标签加上密级,在这里每个标签的文本就是其对应的密级。
同用户主体一样,管理员给客体也分配四个密级,即读密级、写密级、删除密级、更新密级,并规定在用户的安全标签L=(Cr, Cw, G)中,Cr(
读密级)必须不小于Cw(写密级),这里的Cw(写密级)包含广义的删除和更新密级。客体安全标签信息xml文档伪代码如下:
…
2
3
3 3
4
2
2
2 2
4
2.2.3 MAC核心处理模块
此模块主要的工作就是对各个XML文件进行解析,提取有用的信息,再按照BLP强制访问控制模型的实现原则对用户的查询进行处理,最后返回信息。
2.2.3.1 标签查询
当合法用户通过服务器验证模块进入系统后,系统会为他显示他能进行的操作,然后会询问用户要进行什么操作,有四个能选的操作:读、写、删除、更新。当用户选择他所需要进行的操作后,系统为其显示用户所选操作在当前系统的权限,这样合法用户就能知道自己在此系统的权限。然后,系统会继续要求用户输入用户想查询的XML里的信息,这里输入的是Xpath,即XML文档里某个元素变迁从根节点到当前节点的路径,用“ / ”隔开,然后处理模块会根据用户所选操作,密级权限,查询的节点信息进行查询处理,当合法时,则返回给用户所查询的信息,若果不合法则无法返回用户查询的信息。
2.2.3.2标签比较
通常对文档有读、写、删除、更新的四种操作,每一种操作都要进行标签的比较,如果符合BLP强制访问控制模型的实现原理则进行下面的操作,即如果用户的操作密级权限大于等于主体要查询的相关客体安全标签的密级权限,则允许继续解析XML文档,按照用户主体请求的查询返回信息,否则显示提示信息,退出系统。
3 系统测试
测试分别对XML文档进行读、写删除和更新操作操作时,系统会根据用户的操作密集权限返回相应的查询信息,分别如如图2(a) (b) (c) (d)所示。
4 结束语
随着XML越来越广泛的使用,人们对XML的安全也越来越关注了,并且提出了很多安全研究方案。基于BLP的强制访问控制模型的XML访问控制实现了对XML文档信息的安全访问,保证了敏感信息的安全性,完整性和有效性。
整个系统的文件都保存在信息安全文件库中,保存敏感信息的XML文档对用户是透明的,只能由管理员进行操作,从而保证了整个系统相关数据信息的安全性。
参考文献
[1] Damiani E, Vimercati SDC, Paraboschi S, Samarati P. Design and implementation of access control processor for XML documents. Computer Network, 2000,33(1-6):59~75.
[2] Bertino E, Castano S, Ferrari E, Mesiti M. Specifying and enforcing access control policies for XML document sources. orld Wide Web, 2000,3(3):139~151.
[3] Chandramouli R. Application of XML tools for enterprise-wide RBAC implementation tasks. In: SIGSAC ed. Proc. of the 5th ACM Workshop on Role-Based Access Control, Berlin: ACM Press, 2000. 11~18.
[4] 李斓, 何永忠, 冯登国. 面向XML文档的细粒度强制访问控制模型[J].软件学报, 2004, 15(10):1528-1537.
[5] 叶春晓, 尉法文. 基于BLP模型的XML访问控制研究[J].计算机工程,2011, 37(14):123-124. DOI:10.3969/j.issn.1000-3428.2011.14.040.
作者简介:
吴昊(1981-),男,汉族,江苏武进人,硕士,西安邮电大学,讲师;主要研究方向和关注领域:信息安全。