防泄密安全产品自身的安全性问题

 

防泄密安全产品自身的安全性问题

The security issues of the data loss protection system

 

 

内容摘要:防泄密产品蓬勃发展的同时,人们普遍忽视了一个很重要的问题,那就是防泄密产品自身的安全性。防泄密产品的特点,决定了这类产品自身安全的重要性。本文将探讨防泄密产品的安全性所包含的各个方面,以及必须采取的保护措施,如策略的强制执行,基于角色访问控制,强制访问控制,日志数据加密,密码管理和防止功能失效等。

 

关键词: 防泄密 信息安全

 

Abstract: while the data loss protection systems are developing rapidly, a very important issue, the security of the system itself, is almost neglected although the security is extremely important because of the system’s particularity. This paper will discuss all aspects of the security and the solutions to these issues, including the policy compliance, role-based access control, mandatory access control (MAC), log data encryption, key management and system failure prevention and etc.

 

Key words: Data loss protection system, information security

 

1 问题的提出

近年来,防泄密类产品如雨后春笋般不断涌现。据不完全统计,从事防泄密产品和技术研究的厂家有几百家之多。这些产品从不同的角度出发,控制了信息的存储环境、泄密途径、存储介质,以及电子文件的运动轨迹[2]。但这些产品本身的安全性问题却很少被人关注,如:

系统功能失效。窃密者使产品功能失效,拆除该安全软件,绕过安全产品的监控,从而实施窃密;也有可能由于系统自身故障,导致系统功能不能正常发挥,致使窃密者有机可乘。

系统日志保护。系统日志内含有大量的秘密信息,例如谁在什么时间对什么样的数据进行了什么样的操作,窃密者完全有可能从中分析出机密信息;更有甚者,有些日志是对被操作的敏感文件的备份和用户屏幕的截图,这些日志包含了敏感信息,不需分析就可直接获得秘密。

报警数据保护。一般情况下,报警数据也是需要保护的,例如报警数据作为证据要防止篡改,保持数据的一致性和合法性。

数据传输安全。如果数据不加密就在网络中传输,若被别有用心的人截取,也将直接导致泄密。

密钥安全管理。这是信息安全最核心的问题,也许是目前最大的问题。即使对用户身份进行了鉴别、对数据和系统自身实施了安全防范措施,但是,如果密钥保管不好,窃密者就可以拿者密钥去解密,获得敏感信息。

前不久,网上盛传的某网络内容过滤软件的安全事件给我们敲响了警钟,也为防泄密安全软件的自身安全提供了反面教材。上述事件的原因大致有两个方面,一是密码的管理不善。它通过MD5方法对密码加密之后,储存在一个dll文件中,该文件并没有受到任何保护,用普通的文字处理器就可以修改其中的内容,这样一来,只要将密码的MD5值修改成一个已知的字符串(例如112233)的MD5值,就可以将系统的密码变回到112233。不仅如此,人们还可以将那个dll文件替换掉,如果新的dll文件中包含了已知的密码,那么人们就可以轻松充当系统的管理员了。二是系统功能失效。它的四个进程没有得到充分保护。虽然以两个为一组交叉保护,当其中一个进程被强行中止,另一个进程将会重新启动运行它,但是,这可以被许多并不复杂的工具轻而易举地摧毁掉。功能失效还体现在对操作系统和其它应用软件的支持和兼容上,如对Windows版本支持不全面,对浏览器的支持不全面等等都能致使系统功能失效。

总而言之,安全产品的自身安全问题已成为安全软件产品的一个重要问题,当然防泄密安全产品也不例外。下面根据防泄密安全产品的特点,探讨防泄密安全产品的自身安全防范措施。

 

2 防泄密类安全产品的特点

         防泄密类安全产品防内不防外。它不同于防火墙、入侵检测、防病毒等安全产品。防火墙、入侵检测、防病毒产品防止的是外部的恶意攻击,那些外部的人没有单位内部网络的合法身份,他们的攻击往往没有什么针对性。而防泄密类产品防止的是内部的人员有意或无意的泄密,这些内部人员拥有对单位内部网络、计算机资源的访问权限,他们窃取机密材料都是有针对性的。外部的攻击易受到关注,而内部的窃密较不易受到重视,也较难管理和防范。正所谓家贼难防、堡垒最容易从内部攻破[4]

         防泄密类安全产品保护的对象都是敏感信息。如果信息不足够敏感,防泄密类产品就没有发挥作用的余地。这些敏感信息只有拥有合法权限的人才能有资格看到,很多时候,即使是系统管理员甚至是系统安全员也无权看到某些敏感信息。这是保密管理的规定。所以,有权威专家称:“在防泄密类安全产品中,不允许存在特权用户”,就是这个道理。

         防泄密类安全产品具有独特的软件构架。防泄密类产品大致有两种实现方式,一是基于主机的防泄密产品,二是基于网络的防泄密产品。两种产品可以同时使用,互相配合取长补短,共同发挥作用。所谓基于主机就是在每个用户的计算机上安装一个小的代理程序,另设置一个服务器,服务器负责管理、下发策略(给每个用户计算机)、存储代理程序发回的各种日志[4]。基于网络的防止泄密类产品,通常在网络的出口处部署一个网关设备,象一个“看门狗”,监视敏感数据的流动,发现敏感数据即阻止其流出。基于网络的产品最大难度在于对敏感数据的识别,而基于主机的防泄密产品难点在于和客户端各种软件的兼容,因每台计算机都要安装代理程序,故其部署的工作量也很大。

         防泄密产品记录大量日志,日志本身是敏感的。这是防泄密类产品的又一特点。这些日志包含了谁在什么时候、在什么地方对什么数据进行了什么操作。如A用户打印了文件B,则B文件的影像和文件本身就可能根据安全策略记录在日志中,又例如某用户C拷贝了文件D,则文件D本身也被记录在日志中,日志内容、特别是被记录的文件是极其敏感的,需要加以适当保护,包括日志数据的存储和传输。

         综上所述,防泄密类产品主要有以下几个特点:

n  防内为主的强制性。和防外不一样,防外是大家一致的愿望,策略是自愿、自觉执行的。既是防内,就要求策略的强制性。例如文件加密不加密是由安全策略说了算,不取决于文件作者本人或文件操作者的意愿;防泄密产品的安装也是强制性的,且安装了之后不能被用户自己私自卸载。

n  保护对象的敏感性。这要求分层分级的访问控制,要求系统中不存在特权用户。没有一个人能看见全部敏感数据,即使是系统管理员或是系统安全员、审计员。

n  日志本身的机密性。这要求对日志本身要加以保护,无论是记录在数据库中的记录,还是存在于文件系统之中的文件;无论是数据在硬盘中的存储还是在传输途中。

         除此之外,防泄密产品的密码保护也是非常重要的。密码包括数据库口令,用户身份的信息等等。一旦密码系统被攻破,其它的防护措施就会功亏一篑。

 

3 防泄密安全产品的安全性防护策略

上述已分析了防泄密产品的特点。根据这样的分析,我们认为,防泄密系统在安全策略的强制性、基于角色的访问控制、强制访问控制和日志存储、传输和密码管理上,均须采取措施。

3.1   策略执行的强制性

所有防泄密终端上的安全策略均来自于服务器,服务器上的安全策略是由系统安全员设置的,体现的是组织的安全意图,不管大家愿意不愿意,这个意图都要贯彻执行。我们通常所说的“策略下发”或“策略统一管理”实质上就是指策略的强制实施;并且,客户端上的用户无权改变安全策略。例如,在透明加解密系统中,一个文件是否加密保护,不是用户本人(文件的创建者或文件的操作者)说了算,而是由组织的安全策略来决定,系统往往通过指定进程和后缀规定什么样的文件必须被加密,什么样的文件不加密[1];在移动存储介质管理系统中,不经过授权的移动存储介质不允许在内部使用,而经过授权的移动存储介质只能在内部、不能在外部使用,体现的也是防泄密系统安全策略的强制性执行。

策略统一管理也许相对容易实现,但防止客户端用户改变自己的安全策略是相对困难的,因为恶意用户可以通过以下措施破坏策略的强制性:

l  拆除客户端软件,使机器和用户逃避防泄密系统的监控;

l  删除或修改存储于本地的安全策略;

l  取得服务器的访问权限,以修改自己的安全策略。

要针对以上各种可能的攻击行为,采取措施保护安全策略免受攻击,才能保证策略的强制性。以上列举的三个问题,分别在后续文字里给予说明,涉及到密码管理、客户端程序保护等重要问题。

 

3.2   基于角色的访问控制措施

前面已经提到,防泄密系统保护的是敏感数据,不允许存在这样一种用户,他们可以看见所有的敏感数据,即超级用户。

这一点和其它系统很不一样,也是防泄密系统的一大特点。在其它系统中(如操作系统)允许存在一个超级用户(Super User),他的权限比任何人都多,他可以监视甚至控制一般用户的行为,必要时还可以看见他人的操作内容。

为防止权限过分集中导致的泄密可能,在防泄密类系统中须设置相应的角色,实现分权分级管理[4]

所谓分权,通常在系统中设置系统操作员(Operator)、管理员(Administrator)、安全员(Security Officer)、审计员(Auditor),各司其职以避免权限的过分集中,系统中的每个用户都属于四种角色中的一个。操作员负责系统的日常运行和维护、设置系统参数等;管理员负责用户管理,如增加和删除用户帐户;安全员负责安全策略的制定,如什么样的文件需要加密,系统日志多长时间备份一次等;审计员负责日志的审计、用户行为的分析和泄密责任的追踪。为避免审计员在审计工作中利用接触敏感信息的机会故意泄密,往往还需要在系统中加入约束措施,如只有多个审计员在场才能打开敏感文件。

所谓分级,通常是指某种角色的用户只能在一定的范围内拥有权限,在这个范围之外,他没有相应的权限。在某组织内部,如研发组和测试组是两个平行的组织,则系统允许将研发组的管理员设置成不能对测试组的用户进行管理,反之亦然。

分权与分级,有效了消除了权限的过度集中,保障了敏感信息的安全。这对于防泄密系统是至关重要的。

 

3.3   强制访问控制措施[3]

为了说明在防泄密系统中应用强制访问控制技术,下面先说明什么是强制访问控制,然后说明它为什么适合于防泄密产品,最后说明强制访问控制技术如何应用到防泄密产品中。

什么是强制访问控制?和强制访问控制(MAC)相对的是自主访问控制(DAC)。MAC是一种多级安全系统的访问控制技术,它的主要特点是系统对访问主体和受控对象实行强制访问控制,系统事先给访问主体和受控对象分配不同的安全级别属性,在实施访问控制时,系统先对访问主体和受控对象的安全级别属性进行比较,再决定访问主体能否访问该受控对象。

什么是多级安全信息系统?将敏感信息与通常资源分开隔离的系统,我们称之为多级安全信息系统。防泄密系统是典型的多级安全信息系统,因为防泄密系统中将敏感信息与非敏感信息分开处理。防泄密要将信息资源按照安全属性分级考虑,安全类别有两种类型:

l  有层次的安全级别。分为TSSCRSU五级:绝密级别(Top Secret),秘密级别(Secret),机密级别(Confidential),限制级别(Restricted)和无级别级(Unclassified)。

l  无层次的安全级别。不对主体和客体按照安全类别分类,只是给出客体接受访问时可以使用的规则和管理者。

从上面的介绍不难看出,防泄密产品是多级安全信息系统,在防泄密系统中引入强制访问控制技术是必然的,是防泄密系统的本身的特点所决定的。

最典型的强制访问控制模型是BLP[Bell and LaPadula1976],它最初应用于军事系统,其出发点是维护系统的保密性,防止信息泄露。BLP要求,对给定安全级别的主体,仅被允许对同一安全级别和较低安全级别上的客体进行“读”;对给定安全级别上的主体,仅被允许向相同安全级别或较高安全级别上的客体进行“写”。

BLP具体应用到透明加解密系统中,对受保护的文件(即受透明加密处理的文件),当文件(客体)处于打开和编辑状态时,非加密进程(主体)是不能明文读取该文件的,对其内容进行拷贝或剪切、然后将其粘贴到其它非保护的电子文件中的操作也是被禁止的。另外,当受保护的电子文件被另存为(Save As)其它格式的文件,如MS Word文件另存为TXT文件时,该TXT文件也是被强制加密的,其目的是防止低级别的主体访问受保护的(高级别的)TXT文件。

BLP具体应用到移动存储介质管理系统中,较高密级的主机不能向较低密级的移动存储介质上写入数据,但较高密级的主机可以读取较低密级介质中的数据;较高密级的电子文件也不能存放在较低密级的移动存储介质中,因为较高密级的主体(文件操作者)不能向较低密级的客体(介质)里写入数据。

 

3.4   日志报警数据的存储和传输保护

日志和报警数据是责任追踪的一个重要证据,为了保证其完整性和真实性,必须对系统获取的各种日志和报警数据进行特殊处理,避免证据被伪造和篡改。一般来讲,防泄密系统既要利用数字摘要和数字签名技术进行证据保全,又要对日志数据和文件进行加密存储,以防止数据泄漏,还要在数据传输过程中,采用加密措施(如SSL通信协议)防止数据在传输中途被截获。

在安全级别较高的防泄密系统中,必须使用国家密码管理部门许可的数据加密算法和密码。

 

3.5   密码管理措施

密码管理是所有应用系统都要关注的问题,通常对密码管理的要求体现在加密密钥的保护、身份认证口令保护和数据库口令保护等方面,在这里不再赘述。

需要指出的是密码的存储。例如,在自动建立数据库连接时,系统会自动获取数据库口令,这时候数据库口令一定要加密存储。类似于上述某网络内容过滤软件对密码的保护是严重的错误。

在安全级别较强的防泄密系统中,身份信息的保护按照国家有关部门的规定需要采用硬件保护。

 

3.6   客户端代理程序的保护措施

保证程序的一致性或完整性,是防泄密类软件保护客户端代理程序的主要措施。除了保证进程的正常运行之外,还需要采用完整性检查,一旦发现客户端程序被破坏,立即采取措施阻断其连入网络,或自动关机。

另外,紧急策略是防止客户端代理程序被破坏的辅助措施。所谓紧急策略是机器离线状态下的一种策略,一旦机器不能和服务器通信,紧急策略立即生效,即使在客户端代理程序遭到局部损坏的情况下也要生效。

网络巡逻员是又一个辅助措施。网络巡逻员定时巡视各联网机器的状态,一旦发现客户端没安装代理程序,或代理程序被破坏,系统立即阻止该机器联网,或实行隔离,或及时报警等。

 

4 结论

防泄密产品正处在蓬勃发展的时机,虽然目前多数产品在功能上下了很大工夫,逐渐呈现出产品同质化的倾向,但是产品自身的安全性问题缺乏相应的关注,特别是客户,目前尚未将眼光聚焦在安全性方面,或关注得还不够全面。这篇文章的目的是探讨防泄密产品的安全性所包含的各个方面和采取的措施。

当然,安全性是相对的。究竟什么样的安全防护才是足够的,这要看具体的系统要求,特别是受保护的对象的安全级别。

 

参考文献

1、  陈尚义:“透明加解密技术及其应用”,《信息安全与通讯保密》,2007

2、   陈尚义:“电子文件保密技术的现状和发展趋势”,《信息安全技术与应用》,2008

3、   郭玮,茅兵,谢立:“强制访问控制MAC的设计和实现”,《计算机应用与软件》,2005.8

4、   中软,《中软统一终端安全管理系统技术白皮书》,中国软件与技术服务股份有限公司,2006

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值