上邦数据防泄漏的数据分类和敏感内容识别引擎
数据分类规则库
数据分类是指,将散落在终端各处以及实时产生的数据进行归类,属性涵盖:数据类别、名称、敏感级别等。对于数据防泄漏产品来讲,最核心的一个功能就是对存在数据泄漏风险的行为进行阻断、告警。这里面的一个关键是,如何识别存在数据泄漏风险的行为?我们不妨想象一下职场中常见的一些行为:
1、将一些公司内部文档拷贝到了私人U盘或网盘;
2、在互联网平台上(微博、知乎等)发布了一些不合规的内容、言论;
3、发送出去的电子邮件正文包含了一些敏感的内容;
4、通过微信等即时通讯软件,发送了涉密的内容以及文档;
5、通过打印机,打印了一份涉密文档;
……
对于数据防泄漏产品来说,识别、捕获以上行为所用到的技术手段不尽相同。但是这里面却有一个共同点:即对捕获到的数据进行风险分析,对数据进行分析、归类的方法可以是基于机器学习技术的某些模型进行自动归类,也可以是依靠人工录入的规则引擎进行分类。下面将介绍上邦数据防泄漏的数据分类功能。
上面我们谈到了数据分类的基本属性:数据类别、名称、敏感级别、描述等。这些都非常好理解。此外,分类的对象也是一个重要的概念。我们将数据分为了两个类别,一种是散落在终端各处(本地磁盘、网络存储、可移动磁盘等)的非结构化数据,即文件。另一种是存在于内存中,没有落地的数据,我们泛称为数据,比如:微博、知乎待发布的内容、正在编辑待发送的电子邮件、输入打印机任务队列的数据流、剪切板等。因此我们支持对每个数据分类规则设定生效范围,可以应用到文件规则或是数据规则。对于应用到文件类型的规则,我们还可以进一步根据文件的属性进行筛选,比如:文件大小、文件的文件系统属性、所在位置、文件类型等。我们的决策逻辑会优先分析规则的基础属性,当匹配成功后,才会最终去分析里面的数据规则。
敏感内容识别引擎
数据分类规则设计完成后,另一个重点是敏感内容识别引擎的设计。我们接着回到上文提到的几个数据泄密的场景,在这些场景中,如果想要避免数据泄漏,要解决的核心问题是:快速、精准地识别相关文档是否包含敏感内容。精准很好理解,即文档能根据数据分类规则,精准地被分类。这里面我们要谈一下“快速”这个问题。
谈这个话题前,我们先了解一些前置知识,相信大家都不陌生。我们使用Windows时经常会发现一个现象,某个软件“卡住”了,然后窗口内容变成了毛玻璃效果,同时窗口标题出现了未响应字样。站在Windows窗口机制的角度来描述这个现象是,由于窗口的消息循环处理某个事件耗时过长,然后窗口管理器(DWM)会创建一个新的窗口,类名是Ghost,覆盖在原窗口上。聊这个是因为,有时我们对于一些文件的外发行为进行管控和审计,代码是运行在窗口消息循环的上下文,如果这个分析耗时过长,则容易造成窗口卡住的效果,进而带来了糟糕的用户体验。在引入敏感内容识别后,此类问题往往更容易发生。所以,我们过去的一个工作重点是,如何快速进行敏感内容识别。
在这个版本中,我们引入了一项叫“智能缓存”的技术。顾名思义,我们会根据用户的使用习惯,智能地预加载某些文档到内存中,如果一旦需要在窗口消息循环的上下文中对文档进行敏感内容检测,这时并不会从硬盘中读取数据,然后分析(这个过程可能很慢,取决于磁盘类型和文件大小等),而是从预加载的缓存中进行分析。整个流程可以极大地加速文件的分析。
敏感内容扫描策略
最后,基于我们上述技术核心,我们在这个版本中加入了一个敏感内容扫描策略。通过敏感内容扫描策略,你可以扫描指定终端上的文档,分析是否包含指定的敏感数据类别。