君哥有话说

企业安全建设中,应用安全、内网安全、数据安全,关注点和投入度分别从高到低,防护难度从低到高。一系列国内外安全大事件表明,数据安全将从企业安全建设的后台走到幕前,少数金融企业已经预见到这一趋势并成立了专门的数据安全团队,从管理、技术、资源等多方面进行了较多建设实践。本公众号将发表某大型金融企业数据安全负责人一翔老师有关数据安全建设实践的系列文章,敬请关注。

数据安全这个话题,覆盖面非常广,包括市面上数据备份、电子文档安全、数据泄露防护、数据库安全、磁盘加密的厂商都会把自己划到数据安全厂商这一类,而随着新技术的发展,大数据安全、UEBA、CASB等解决方案也会更多被企业关注。

前不久,Facebook爆出史上最大数据泄露事件,随着这个事件的持续发酵,甚至牵扯到了美国总统特朗普的通俄门调查,可想而知影响有多大。

企业要搞数据安全建设工作,很多乙方上来就会提企业数据安全治理、分级分类等工作,往往这些工作涉及到企业内部各机构的沟通协调、内部梳理,再加上很多企业想做数据安全建设工作的更多是技术部门,最终导致难以落地。当然,不排除有做的好的企业。下面我们简单谈一下数据安全治理相关的概念,然后按终端、网络、存储介质及新出现的大数据安全、UEBA、CASB进行介绍。

1.数据安全治理

数据安全治理,最为重要的是实现数据安全策略和流程的制订,在企业或行业内经常被作为《XX数据安全管理规范》进行发布,所有的工作流程和技术支撑都是围绕此规范来制订、落实。一般会包括组织架构及职责分工、数据分类与分级管理、数据生命周期(采集、使用、传播、存储、归档、销毁)安全要求、数据安全风险事件管理、数据安全管理考核与监督、数据安全管理培训等内容。

数据安全治理工作,需要遵循国家级的安全政策和行业内的安全政策,包括:网络安全法、等级保护政策及特定行业政策如PCI-DSS、SOX等,企业在制订内部政策时需要重点参考。

数据治理主要依据数据的来源、内容和用途进行分类;以数据的价值、内容敏感程度、影响和分发范围进行敏感级别划分。这就要求企业需要对现有数据资产善进行梳理,包括数据的使用部门和角色、数据的存储和分布、现有的数据访问原则和控制策略等。数据资产梳理中,明确数据如何被存储、数据被哪些对象使用、数据被如何使用。对于数据的存储和系统的使用,需要通过自动化的工具进行;对于部门、人员角色梳理,更多在管理规范文件中体现;对于数据资产使用角色的梳理,关键要明确不同受众的分工、权利和职责。清楚敏感数据分布,才能知道需要对什么样的库实现何种管控策略;对该库运维人员实现怎样的管控措施;对该库的数据导出实现怎样的模糊化策略;对该库数据的存储实现何种加密要求。明确数据被什么业务系统访问,才能准确地制订业务系统工作人员对敏感数据访问的权限策略和管控措施。

数据治理,分级分类工作做的好,确实有利于后面技术管控方案的部署实施以及精准有效发现问题。不能落地不代表我们不去朝这个方面努力,至少要知道企业里比较核心的东西是什么,在哪里,怎么流转,然后针对性的布控。

2.终端数据安全

跟数据打交道最多的场景是终端电脑,所以很多企业的数据安全建设工作,都会围绕它进行,市面上的解决方案有加密、权限控制、终端DLP、虚拟桌面等几大类别,中间还会涉及到一些外设管控、水印等,我们逐一阐述。

2.1 加密类

加密类解决方案,可以分为磁盘加密、文档加密两类技术。

2.1.1 磁盘加密

磁盘加密技术目前主要有两种类型:一种是磁盘分区加密技术,另一种是全磁盘加密技术(FDE,Full Disk Encryption)。

磁盘分区加密技术是采用加密技术对磁盘上某一个扇区(或者分区)进行加解密。磁盘分区加密技术目前已经有广泛应用,虚拟磁盘加密技术(VDE,Vertual Disk Encryption)就是磁盘分区加密技术的代表之一,其他的还包括移动存储设备加密技术。很多企业有提供类似“安全U盘”的设备,京东上搜索“加密U盘“即可找到不少。

全磁盘加密技术(FDE,Full Disk Encryption),顾名思义,是对整个磁盘上的数据进行加解密,包括系统所在分区也是加密的。 国内也有厂商提供磁盘加密的技术解决方案,下面是某厂商的动态加解密过程原理图:

随着操作系统功能的不断增强,都自带了磁盘加密功能,比如Windows的BitLocker,Linux的LUKS,MAC的FileVault等等,而个人用户还可以使用免费的TrueCrypt, 同时支持Windows Vista,7/XP, Mac OS X, Linux 等操作系统。TrueCrypt不需要生成任何文件即可在硬盘上建立虚拟磁盘,用户可以按照盘符进行访问,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt 提供多种加密算法,包括:AES-256, Blowfish (448-bit key), CAST5, Serpent, Triple DES, and Twofish,其他特性还有支持FAT32和NTFS分区、隐藏卷标、热键启动等。除了免费,最关键是的操作也非常方便,如下图:

各种各样的磁盘加密方案,都是基于防止设备丢失等带来的被动泄密,而无法防止员工的主动泄密,所以一般企业会配合使用在笔记本电脑、移动存储等场合。

2.1.2 文件加密

这里的文件加密不是指给给文档设置一个保密密码或者给文件压缩设置压缩密码,而是企业里常用的透明加解密方案。所谓透明,是指对使用者来说是未知的。当使用者在打开或编辑指定文件时,系统将自动对未加密的文件进行加密,对已加密的文件自动解密。文件在硬盘上是密文,在内存中是明文。一旦离开使用环境,由于应用程序无法得到自动解密的服务而无法打开,从而起到保护文件内容的效果。

透明加解密产品从实现的技术来说,分为两种:

  • 应用层加密

  • 驱动层加密

应用层加密,通过调用应用系统的windows API函数来对文件进行读写的加密控制,即平常我们所说的Hook技术。通过Hook技术,当监控到可信进程打开加密文件的时候将其进行解密,当监控到可信进程写入文件到磁盘的时候进行加密。

驱动层则工作在更底层,通过拦截操作系统文件过滤驱动的读写动作对文件进行加解密控制,由于工作在受windows保护 的内核层,运行速度更快,加解密操作更稳定。

应用层加密,关心的是应用软件的行为(读写),由于各种软件读写数据的行为差异,软件环境的变更会带来巨大的开发成本与测试成本,增加二次开发的费用。而驱动层技术涉及windows底层,开发难度相对更高一些,记得当年某同学研究微软新的文件过滤驱动Minifilter就花了整整半年时间。驱动层加密的难点不在于与文件系统的交互,而在于和其他系统内核模块的交互,特别是缓存系统。系统会把刚用过的文件内容缓存起来,于是同一份文件内容会同时出现在两处地方:缓存、文件系统。于是加解密过程需要同时处理这两处,同步、兼容等一系列过程,实现起来可难受了。如果处理不好与其它驱动的冲突,搞不好就蓝屏或文件损坏,另外如何确认一个进程是合法的需要解密也比应用层处理起来更麻烦一些。

业界关于到底是驱动层好还是应用层好的争论从来没有停止过,笔者多年前在某文档安全厂商工作,对市面上几乎所有的加密产品做过测试特别是安全性测试,也实施过很多大型项目。应用层加密,有的产品会通过临时文件的方式来处理,一旦对临时文件的保护处理不到位就容易被人拿到明文。

并不一定驱动层就更安全,因为应用程序会有各种各样的功能比如通过网络发送、通过管道传输、进程内部的复制粘贴拖拽、插入对象、甚至直接输出exe文件,还要防止截屏软件截图等等,这些你在驱动层是很难控制甚至无法控制的,所以很多家的方案都会采用驱动+应用控制来实现,比如在应用层加解密结合在驱动层做防护或者在驱动层加解密结合在应用层控制。

结合笔者经验,企业选择透明加解密类产品,需要结合具体企业的场景来看:

  • 如果保护的只是小范围的office和pdf而且不会有太多交互,那基本上问题都不大;

  • 如果涉及到研发代码类编译场景,采用应用层加解密速度会是一个很大的问题;

  • 如果涉及到各种内部交互比如OA系统调用本地office,PDM系统调用本地AutoCad程序,那应用层会更加灵活一些;

    如果企业内部应用要实现服务端明文、终端密文,那还需要考虑如何防止合法终端进程走网络将数据传到非法服务端,一般的厂商会引入网关方案;

  • 如果推广范围较大,还需要考虑各种场景:文件解密流程、笔记本临时或长期离线、文档外发控制、不同部门的密钥管理、支持不同的操作系统或移动终端等等,需要自己评估。

另外,中国移动、中国工商银行等大型企业都用了华为DSM的方案,笔者所了解的几个企业基本都在考虑更换或者正在更换中,企业在选择方案的时候一定要多方评估,目标产品是不是该公司的核心业务,否则可能在不久的将来也会面临类似的问题。

2.2 权限控制类

除了透明加解密之外,企业用户往往需要做更细粒的控制,包括阅读、复制、编辑、打印等等,我们称之为权限控制类方案,这里面以微软RMS方案为代表。注意权限控制不代表不使用加密技术,相反,方案通过使用加解密、密钥管理类的技术,来保障被授权的的用户才能有权限使用该文档;而文档权限的控制,保障被授权的用户,权限能够更细粒度的区分,比如:阅读、复制、编辑、打印、二次授权、使用时长、打开次数、被打开的机器数量等。其中一些权限如阅读、编辑、打印等是通过控制文档编辑器来实现的,而二次授权是通过解密再加密授权实现。

由于欧美和亚洲在防主动泄密的理念,以及对用户安全意识的信任是不同的,导致产品功能稍有不同,但对于用户的使用体验甚至安全性上有非常大的影响。在欧美,文档权限的管理目的,更偏重于让有安全意识的用户更好的授权自己的文档,以及信任有安全意识的用户合理使用文档,如果他一旦利用漏洞进行主动泄密,更多则交给DLP来实现。但在亚洲,文档权限管理更多是想防主动泄密,希望将被授权用户管理的非常严格。

说下具体的场景:“阅读”这个权限非常好理解,就是被授权用户只能读,不能做任何其他操作。但以最为典型的文档“复制”权限为例,是允许用户只能将该文档里的内容复制到其他的加密文档,还是可以复制到邮件、Web类的OA应用呢?微软的RMS是允许,国内的很多软件是禁止,或者是有限字节拷贝。都有合理的理由。

RMS产品理念允许的原因,是因为的确有工作场景需要:

  • 一方面,加密的文档,只是文档中有些内容非常涉密,不等于所有内容都是高度涉密的。

  • 另一方面,文档内容的交互不仅仅只是文档和文档之间,常常有些工作场景需要摘录文档中一些统计类图标、内容发在邮件正文中作为报告的摘要信息提示;比如系统方案上OA应用评审,也希望摘录部分不太涉密的评审点,等等。因为随着信息化系统的高度发展,信息流转不仅仅是在文档和文档之间,也有文档和系统之间。但这样虽然方便了用户,却会造成安全风险,因为一旦可以将内容拷贝到邮件或者OA应用,那么加密就失效了。但欧美的理念是,员工都经过了安全的意识教育,被授权的用户也应知道这些信息该如何处置,哪些内容可以复制到非加密的应用中哪些不可以。如果他们主动或过失泄密,在技术上有DLP的监测或者其他审计,在管理上公司制度和法律的问责。

国内产品禁止的原因,想必大家都能理解,因为一旦可以复制,就有极大泄密的风险,对于蓄意泄密的用户这就是很好被利用的策略漏洞。那企业在这方面的努力就白废了。但这样又会极大影响用户体验。一般有两个缓解方法:

  • 一方面,梳理并培训业务的核心信息,让用户理应知道,哪些该加密和授权,哪些信息不需要,避免加密和授权的滥用。这样也就较少存在上述由于权限管理严格导致信息交互不通畅的问题。但其实非常难。

  • 另一方面,就是受限拷贝。即限制字节数拷贝到非加密应用如邮件、OA系统中等,辅助对于拷贝次数进行分析和自动化预警。策略越复杂,产品也越容易出bug。以及字节阈值的限定也是一个难题。

不纠结以上这些细节,RMS跟微软AD、office整合在一起是非常完美的,可惜很多企业还有大量非office类文档需要保护,如设计图纸,源代码等等。另外,此方案跟AD绑的比较紧,用户名密码这种身份认证不满足一些高安全要求企业场景,而加密密钥保存在计算机上容易被不法份子通过技术手段获取,所以很多国内企业早期也趁机推出了自己的权限控制类产品,包括控制打开时间,打开次数等。这类产品往往需要对原来的文件格式进行转换,采用厂商的定制工具打开,最后还是会调用原应用程序,只是在这个过程中控制一下权限等,但一旦打开后里面的各种应用功能如上面列的剪贴板、插入对象等也不太好控制,所以目前在市场上见的越来越少了。

近几年,随着国产化的逐步推进,WPS在政府军工企业用的越来越多,金山公司也提供了文档安全相关的功能,除了有文档加密功能外,还包括权限管理,包括有浏览、编辑、复制、打印、另存、截屏、授权七种权限可以控制,而拥有文档授权权限的用户和文档安全管理员可以将权限授予给其他用户、部门或用户组,用户和管理员的的操作日志在后台都能完整记录。除此外,还有文档外发、打印分发等功能。

比较特别的一个是WPS安全文档的加密机制,与传统电子文档安全软件不同,安全文档采用一文一密钥的机制,密钥本身会二次加密,二次加密密钥由服务器产生并保存,每次打开安全文档需要到服务器利用二次密钥解开文档密钥,才能打开安全文档,多重防护确保文档安全。

加解密方式特性:

  1. 客户端密钥Client每次保存都会重新产生以保证其安全性。

  2. 服务端密钥Server不传输到任何地方。

  3. 权限信息不写入安全文档中,而是保存在服务器。

  4. 客户端和服务器均使用标准AES进行加解密,支持接入第三方算法。

企业如果决定使用WPS的安全文档方案,请认真考虑以下几个问题:

  1. 1企业里WPS推广落地效果如何?毕竟WPS和office还是有差距的,有些excel里的高级功能在WPS里可能没有或者不完善;

  2. 密钥都存在后端服务器,文档解密都需要跟后端服务发生关系。如果服务端可用性架构设计不妥或者运维不当,都可能导致文件无法正常打开,需重点关注;

  3. 每个文档都不同的密钥,如果需要考虑到特殊情况下要全部解密怎么办?W PS安全文档还提供了金钥匙功能,可以理解为一个万能钥匙,前提是在加密的时候使用这个KEY,那这又引入了一个风险,这个KEY的保存、使用过程是否安全?

2.3 终端DLP类

市面上除了有加密和权限控制类的方案外,还有一些提供终端DLP功能,通常包括敏感文件识别、外发文件阻断、外设端口管控、日志审计分析等功能,其中最关键的是敏感文件识别,如果连文件内容都无法准确识别,那后面的阻断就成为无稽之谈。而外设端口管控、日志审计分析,在一些桌面管理类方案也都有涉及,就不过多阐述。

敏感文件识别,首先要对终端上的各类文档进行深入解析,通常Office、PDF、压缩包、文本类都是必需的,在测试的时候一定要对不同版本的office文档进行测试,因为不同版本产生的文件格式也不一样;office还提供一些诸如插入对象的功能,那word里插入一个xls能解析吗?压缩有rar、zip、7z等各种格式,不同格式又会有一些不同的压缩算法,RAR5支持吗?7zip里的LZMA、PPMd等支持吗?图片文件是否能OCR识别?最后,copy /b的绕过方法能否在DLP方案里有所体现,是个加分项。其次,在解析内容的基础上,匹配相应的策略来判断文档是否敏感,有简单的关键字、正则表达式,到文件指纹,数据库指纹,再到语义分析、机器学习等等,在条件上的与、或、非各种组合下,才判定是否敏感,敏感度是多少,相应的动作是否阻断等等。

外发文件阻断,通常需要考虑一些泄密的场景,包括:U盘拷贝、打印、压缩、拷贝到共享、拷贝到远程桌面、拷贝到虚拟机、光盘刻录、邮件客户端发送、QQ/RTX/微信等通讯软件聊天或传附件等等一系列场景,有的甚至需要对截屏、剪贴板做控制。至于是否采用阻断还是只监控审计的方案,得看企业需求和文化氛围,只监控审计的方案对最终用户无感知,体验会更好,也更容易在企业落地。

2.4 桌面虚拟化

数据一旦落到终端,很多方案都会存在失效的可能。随着云计算、大数据的发展,很多企业意识到将数据统一集中管理,不落到终端上来是一个不错的方法。在桌面虚拟化技术成熟之前,很多企业就已经在搞类似的方案了,基本上都围绕一个思路:数据不落地。比如针对数据仓库的数据防护,采用瘦终端+终端服务器跳转来实现,结合外围物理控制比如门禁、保安、不允许手机带入等等。

得益于服务器虚拟化技术的成熟和服务器计算能力的增强,使得服务器可以提供多台桌面操作系统的计算能力,将远程桌面的远程访问能力与虚拟操作系统相结合,就形成了桌面虚拟化技术。有些场景可能不需要用户有个完整的桌面,只需要特定的应用,于是出现了应用虚拟化。VMware的虚拟桌面方案示意图如下:

虚拟桌面方案对网络质量要求较高,不同厂家的远程协议会有各自的优化处理需要仔细对比体验,除此外,我们需要关注以下的一些关键点:

  1. 用户认证功能。一般方案都提供本地用户密码认证、AD认证,有的还支持双因素认证;

  2. USB存储功能。有些场合需要使用USB设备,所以一般都提供了USB重定向功能,如果USB的存储功能不限制,将会成为一个数据泄露的途径;

  3. 剪贴板功能限制。为了方便将本地的剪贴板内容拷贝到虚拟桌面,一般的方案都提供了剪贴板重定向功能,最好有方向上的控制;

  4. MAC地址绑定功能。虚拟桌面IP和MAC地址绑定,瘦终端的MAC地址跟用户账号绑定,或者跟虚拟计算机的名称绑定等等;

  5. 防PC截屏功能。数据都在服务端里,本地终端能看到但拿不到,难免会有同学想截个屏,然后到本地桌面粘贴,这时候防截屏功能就能发挥作用了;

  6. 虚拟桌面水印功能。截屏不行还可以拍照,所以水印功能也必不可少,有明文水印,有些厂商还提供隐藏水印功能;

  7. 如果在没有全员迁入到虚拟桌面的情况下,怎么保障虚拟桌面用户只能通过虚拟桌面而不能通过本地计算机访问核心信息系统,从而保障核心信息不落地?

  8. 虚拟桌面本质上相当于将物理终端从前台移到了后台,解决了物理终端设备边界的问题,对于从网络和应用上访问所形成的数据安全风险还需要结合其它安全方案来进行巩固。

3.网络数据安全

企业员工上网、邮件外发场景都会存在数据泄露的可能,有些企业对办公和业务网做了逻辑隔离但数据还是有交互的需求,这里面都需要考虑数据安全问题。 我把它分为三类:网络DLP类、上网代理类、邮件代理类。网络DLP类主要是基于旁路镜像分析流量是否有敏感内容传输,后两种主要是串在网络访问路径上,从而可以起来拦截的效果,下面分别阐述。

3.1 网络DLP类

此类方案中,笔者以Symantec DLP的Network Monitor为代表进行介绍,下面是Symantec DLP关于Network Monitor功能的示意图:

首先,管理员通过Enforce界面对各种策略、服务器、角色、用户进行统一管理, Network Monitor Server只是其中一种类型的服务器;其次,将流量通过在交换机上做span或者使用TAP交换网络送到Monitor服务器,在Enforce上进行相应的配置,如下图:

如果对标准版的协议不满意,还可以进行自定义调整,比如基本的IP过滤,还有针对不同协议的L7层过滤甚至还有一些内容处理上的深度,如下图是对STMP协议可配置的项:

最后,DLP Monitor程序从服务端拉取策略,对前面镜像的流量按照其标准或自定义过滤情况进行分析,一旦发现有匹配策略的附件或内容,即产生事件并上报到Enforce最终写入到数据库供管理员查阅。

此类方案由于不改变现有网络结构,部署起来有先天的优势,所以被广泛使用,企业在使用此方案里,需要注意:

  1. 流量缺失监控。引起缺失的可能是某次交换机变更,也可能是端口速率变化,也可能是流量过大服务端处理不过来等等原因,一定要有相应的手段发现;

  2. 针对加密流量如HTTPS、启用TLS加密的SMTP或者非标准端口协议如HTTP运行在非80端口,都无法监控或者需要单独调整;

  3. 无法进行拦截,只是事后审计。

说实话,从产品理念到技术架构,Symantec DLP都是非常优秀的,当国内产品普遍处在关键字、正则表达式年代的时候就已经提出了确切数据匹配EDM、索引文档匹配IDM、向量机学习VML等技术,还有新版引入的OCR、ICT等等技术,可惜近几年其在国内市场急剧萎缩,售后能力得不到保障,不建议再使用。网络DLP的未来趋势是与云访问安全代理(CASB)功能集成,将敏感数据的发现范围进一步扩大到云应用程序,这里以Office365为代表,需要企业重点关注。

3.2 上网代理类

为了解决前面无法拦截的问题,可以将设备串行部署在网络上,这样的部署模式还可以有一定程度上解决加密流量问题,比如采用中间人技术对HTTPS协议进行加解密。

上面的方案改变了网络结构,引入了可用性风险,所以还有一种方案可选择,特别是很多企业已经有上网代理的情况下,将上网的流量通过ICAP协议与DLP设备联动,是相对灵活的方案。这里还是以Symantec Network Prevent for Web方案示意图来说明:

Web代理服务器充当ICAP客户端,配置将请求转发至Prevent Server的ICAP REQMOD服务,或者将响应转发至Prevent Server的ICAP RESPMOD服务,而Prevent Server上监听ICAP服务端口,建议配置白名单进行限制。国内也有厂商支持串行部署、ICAP模式,不再多说。

3.3 邮件代理类

邮件外发场景相对上网更加单一,而且可以轻松的配置将邮件路由下一跳指到MTA,所以各家的方案部署模式都差不多,更多的是在这个基础上的一些扩展,比如垃圾邮件拦截、内容过滤、邮件审批、TLS通道加密、加密外发等,这里以Websense的邮件网关方案尤为突出,默认就带有Data Securtiy功能模块,不需要重新采购许可。

经笔者了解,各家方案基本都是基于postfix改造,将邮件内容剥离出来进行反病毒、反垃圾引擎、DLP引擎检测,并按照后台配置的策略进行相应的动作包括隔离、拦截、投递、加密等。

有一点必须要指出来,websense设备后台的管理员密码都掌握在厂家手里,美其名曰保护公司机密。在能接受这一点的条件下,Websense是一个非常不错的产品,只可惜避免不了和Symantec面临同样的问题,Websense被具有军方背景的雷神公司收购后改名forcepoint,其在中国的业务也日渐萎缩,售后也是基本废掉了,不建议再采购。

感谢以下朋友就这个话题与我的讨论:

中兴通讯  俞婷

广发证券  唐勤

连连支付  廖位明

网联  钱文斌

声明:本文来自君哥的体历,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。