第16卷第5期 智能系统学报 Vol.16 No.5 2021年9月 CAAI Transactions on Intelligent Systems Sep.2021 D0:10.11992/tis.202104028 网络出版地址:https:/kns.cnki.net/kcms/detail/23.1538.TP.20210722.1124.002.html 非结构化文档敏感数据识别与异常行为分析 喻波,王志海,孙亚东,谢福进,安鹏 (北京明朝万达科技股份有限公司,北京100876)】 摘要:在海量数据中快速、准确地对数据进行分类分级,快速识别用户异常行为是目前数据安全领域的重要 研究内容。在数据分类分级研究领域,自然语言处理技术提升了分类分级的准确率,但是中文语体混杂、无监 督学习准确率低、有监督学习样本标注工作量大等问题亟待取得关键突破。本文提出多元中文语言模型和基 于无监督算法构建样本,突破数据分类分级领域面临的关键问题。在用户异常行为分析研究领域,由于样本依 赖度过高,导致异常行为识别准确率较低,本文提出利用离群点检测方法构建异常行为样本库,解决样本依赖 过高问题。为验证方法可行性,进一步构建实验系统开展实验分析,通过实验验证所提出方法可以显著提高数 据分类分级和异常行为分析的准确率。 关键词:数据安全;人工智能;分类分级;语言模型:用户异常行为分析;样本;自然语言处理;监督学习 中图分类号:TP18,TP319:TP309文献标志码:A文章编号:1673-4785(2021)05-0932-08 中文引用格式:喻波,王志海,孙亚东,等.非结构化文档敏感数据识别与异常行为分析J.智能系统学报,2021,16(5): 932-939. 英文引用格式:YUBo,WANG Zhihai,.SUN Yadong,et al Unstructured document sensitive data identification and abnormal be- havior analysisJ CAAI transactions on intelligent systems,2021,16(5):932-939. Unstructured document sensitive data identification and abnormal behavior analysis YU Bo,WANG Zhihai,SUN Yadong,XIE Fujin,AN Peng (Beijing Wondersoft Technology Co.,Ltd,Beijing 100876,China) Abstract:It is an important research content in the field of data security to classify data quickly and accurately in mass data,and to quickly identify user abnormal behavior.In the field of data classification research,natural language pro- cessing technology improves the accuracy of classification,but the problems of mixed Chinese language,low accuracy of unsupervised learning,and large workload of supervised learning sample labeling need to be Chinese made urgently. In the field of user anomaly analysis,due to high sample dependence,which leads to low accuracy of abnormal behavi- or recognition,this paper proposes to use outlier detection to build an abnormal behavior sample library to solve the problem of excessive sample dependence.In order to verify feasibility of the method,the experimental system is further constructed to carry out experimental analysis,and the proposed method can significantly improve the accuracy of data classification and abnormal behavior analysis. Keywords:data security;artificial intelligence;classification;language model;user's behavior analysis; sample;nlp;supervised learning 伴随大数据时代来临,数据同土地、劳动力 统的数据安全防护措施难以适应新时代架构复 一样列入生产要素之一,为加快培育数据要素市杂、场景多样、数据海量、交互频繁的“大物移云 场,数据安全防护是基础保障山。由于业务场景 智”环境。在数据安全领域,可以把管控场景划分 复杂多变、数据量持续增长,基于数据流的信息 为强管控、中管控、弱管控3种场景。针对强管 化架构演进对数据安全防护提出了更高要求。传 控场景,在数据传输、数据存储等环节采取全量 数据加密手段,可以解决强管控场景的安全诉 收稿日期:2021-04-16.网络出版日期:2021-07-23. 基金项目:国家电子发展基金项目(工信部财2014]425号) 求。但是在更为普遍的中管控场景,敏感数据与 通信作者:喻波.E-mail:yubo@wondersoft.cn. 非敏感数据混合使用,如果采用强管控,必然对
DOI: 10.11992/tis.202104028 网络出版地址: https://kns.cnki.net/kcms/detail/23.1538.TP.20210722.1124.002.html 非结构化文档敏感数据识别与异常行为分析 喻波,王志海,孙亚东,谢福进,安鹏 (北京明朝万达科技股份有限公司,北京 100876) 摘 要:在海量数据中快速、准确地对数据进行分类分级,快速识别用户异常行为是目前数据安全领域的重要 研究内容。在数据分类分级研究领域,自然语言处理技术提升了分类分级的准确率,但是中文语体混杂、无监 督学习准确率低、有监督学习样本标注工作量大等问题亟待取得关键突破。本文提出多元中文语言模型和基 于无监督算法构建样本,突破数据分类分级领域面临的关键问题。在用户异常行为分析研究领域,由于样本依 赖度过高,导致异常行为识别准确率较低,本文提出利用离群点检测方法构建异常行为样本库,解决样本依赖 过高问题。为验证方法可行性,进一步构建实验系统开展实验分析,通过实验验证所提出方法可以显著提高数 据分类分级和异常行为分析的准确率。 关键词:数据安全;人工智能;分类分级;语言模型;用户异常行为分析;样本;自然语言处理;监督学习 中图分类号:TP18; TP319; TP309 文献标志码:A 文章编号:1673−4785(2021)05−0932−08 中文引用格式:喻波, 王志海, 孙亚东, 等. 非结构化文档敏感数据识别与异常行为分析 [J]. 智能系统学报, 2021, 16(5): 932–939. 英文引用格式:YU Bo, WANG Zhihai, SUN Yadong, et al. Unstructured document sensitive data identification and abnormal behavior analysis[J]. CAAI transactions on intelligent systems, 2021, 16(5): 932–939. Unstructured document sensitive data identification and abnormal behavior analysis YU Bo,WANG Zhihai,SUN Yadong,XIE Fujin,AN Peng (Beijing Wondersoft Technology Co., Ltd, Beijing 100876, China) Abstract: It is an important research content in the field of data security to classify data quickly and accurately in mass data, and to quickly identify user abnormal behavior. In the field of data classification research, natural language processing technology improves the accuracy of classification, but the problems of mixed Chinese language, low accuracy of unsupervised learning, and large workload of supervised learning sample labeling need to be Chinese made urgently. In the field of user anomaly analysis, due to high sample dependence, which leads to low accuracy of abnormal behavior recognition, this paper proposes to use outlier detection to build an abnormal behavior sample library to solve the problem of excessive sample dependence. In order to verify feasibility of the method, the experimental system is further constructed to carry out experimental analysis, and the proposed method can significantly improve the accuracy of data classification and abnormal behavior analysis. Keywords: data security; artificial intelligence; classification; language model; user’s behavior analysis; sample; nlp; supervised learning 伴随大数据时代来临,数据同土地、劳动力 一样列入生产要素之一,为加快培育数据要素市 场,数据安全防护是基础保障[1]。由于业务场景 复杂多变、数据量持续增长,基于数据流的信息 化架构演进对数据安全防护提出了更高要求。传 统的数据安全防护措施难以适应新时代架构复 杂、场景多样、数据海量、交互频繁的“大物移云 智”环境。在数据安全领域,可以把管控场景划分 为强管控、中管控、弱管控 3 种场景。针对强管 控场景,在数据传输、数据存储等环节采取全量 数据加密手段,可以解决强管控场景的安全诉 求。但是在更为普遍的中管控场景,敏感数据与 非敏感数据混合使用,如果采用强管控,必然对 收稿日期:2021−04−16. 网络出版日期:2021−07−23. 基金项目:国家电子发展基金项目 (工信部财 [2014]425 号). 通信作者:喻波. E-mail:yubo@wondersoft.cn. 第 16 卷第 5 期 智 能 系 统 学 报 Vol.16 No.5 2021 年 9 月 CAAI Transactions on Intelligent Systems Sep. 2021
第5期 喻波,等:非结构化文档敏感数据识别与异常行为分析 ·933· 操作效率造成影响,但如果弱管控,又会造成敏 同类型文档语境下,其文档表达含义与分类截然 感数据泄露。因此中管控场景,识别敏感数据与 不同。而且,由于文档分类定级误判,会产生敏 异常行为是目前数据安全领域研究的重要问题。 感文档的非授权明文外发风险,进而导致数据泄 露。由于分类误判对非敏感级文档进行加密、阻 1研究背景 断处理,影响正常业务开展6 近年来企业内部人员窃取数据事件频发,如 2.1面临的技术问题 银行内部人员窃取、贩卖上万条用户信息,根据 通过自然语言处理技术检测识别文档敏感内 Gartner的调查结果,内部人员窃取敏感数据、盗 容,已经演化为文档智能分类分级的技术趋势,在 用账号等行为已经成为企业数据泄露的最主要原 落地实施过程中,也面临如下突出的技术问题。 因。由于内部人员具备企业数据资产的合法访问 在文档语义特征表达层面,各领域文档形式 权限,且了解企业敏感数据的存放位置,因此内 多样、内容丰富、中文语体混杂的情况普遍存在, 部人员在合法外衣的保护下,自由地游走在企业 例如公安电子笔录形式多样,官方语体和方言语 内网,进行长期而隐蔽的数据窃取行为。 体交相混杂,且上下文语义高度相关。而目前的 导致上述现象的根本原因是企业经营活动复 语言模型建立在朴素贝叶斯独立性假设的基础 杂、业务系统多、数据规模大,无法穷举人员、终 上,现实情况明显无法满足独立性假设要求,从 端、应用、数据之间多对多的使用与访问规则,从 而导致文档分类分级的准确率较低?。 而为内部恶意人员留下了巨大的非法活动空间。 在文档内容识别层面,敏感文档的分类检测 这种情况下,安全部门只能把管控重点放在已知 技术分为有监督和无监督两种模式,无监督文档 的、规则明确的安全威胁上,导致内部人员长期、 分类技术不需要样本但准确率很低,有监督文档 隐蔽数据窃取行为发现难,数据泄露事件依然层 准确率相对较高,但存在样本标注工作量大、人 出不穷B 工标注质量无法保证的问题,直接导致产品研发 因此,研究文档分类分级技术,识别需要重点 周期长、成本高、效果差的问题四。 保护的敏感数据:研究用户异常行为分析技术, 针对文档分类分级在实际应用中面临的技术 识别用户异常操作,是解决内网数据泄露的重要 问题,本文提出如下的解决思路:构建N元中文 课题。 语言模型,解决当前语言模型面临的独立性假设 不成立问题。构建自动无监督样本库,解决当前 2基于N元语言模型的文档智能分 样本标注工作量大,质量难保证问题。 类分级技术 2.2技术方案 根据数据安全治理理论,数据安全防护的基 2.2.1语言模型基本原理 础是识别数据资产、分级分类数据资产,只有明 语言模型的发展经历了专家语法规则模型、 确了数据保护对象及安全等级,才能对数据实施 统计语言模型和神经网络语言模型。专家语法规 按需防护,避免一刀切式的静态防御,促进数据 则模型在初始阶段利用模式匹配技术,以自然语 的安全流通与共享。 言的语法规则为切入点,模式匹配归纳总结,提 在数据资产的识别过程中,按载体形态差异 供自然语言建模能力,但随着语法规则规模急剧 其识别方式也存在不同,数据按载体形态主要划 扩大,专家语法规则已不可持续。 分为结构化数据与非结构化数据两类。针对结构 统计语言模型认为文档由单词序列构成,通 化数据,数据集中承载在数据库中,可以通过元 过建模,分析文档中单词的概率分布。统计语言 数据的精确定义,较为直接地进行数据资产识别 模型基于朴素贝叶斯的独立性假设,即将句子 并实施分级分类管控,但针对广泛分布在终端、 S看成一组相互独立的单词序列(ww2w).那么 网络、云存储中的非结构化敏感数据(如商务合 对于任意一个单词w:(i≤m)在句子S中出现的条 同、会议纪要、监管报告、技术资料等敏感文档), 件概率为P(www2w-i),那么整个句子的概率 鉴于文档是由字、词及上下文语义构成的,单纯 模型P(S)=P(wwm2wn),根据贝叶斯公式和全概 的依赖关键词、正则表达式等传统规则手段对文 率公式可推导出概率模型: 档分类进行识别,缺乏词与词之间的上下文语义 P(S)=P(w1w2…wn) 级分析,导致文档分类分级的高误报率与高漏报 P(w)P(w2w)…P(ww1w2…w-1) (1) 率。如商务合同与涉诉文档,虽然都会存在甲 方、乙方、联系电话、联系方式等关键词,但在不 式(1)必须在基于朴素贝叶斯独立性假设条
操作效率造成影响,但如果弱管控,又会造成敏 感数据泄露。因此中管控场景,识别敏感数据与 异常行为是目前数据安全领域研究的重要问题。 1 研究背景 近年来企业内部人员窃取数据事件频发,如 银行内部人员窃取、贩卖上万条用户信息,根据 Gartner 的调查结果[2] ,内部人员窃取敏感数据、盗 用账号等行为已经成为企业数据泄露的最主要原 因。由于内部人员具备企业数据资产的合法访问 权限,且了解企业敏感数据的存放位置,因此内 部人员在合法外衣的保护下,自由地游走在企业 内网,进行长期而隐蔽的数据窃取行为。 导致上述现象的根本原因是企业经营活动复 杂、业务系统多、数据规模大,无法穷举人员、终 端、应用、数据之间多对多的使用与访问规则,从 而为内部恶意人员留下了巨大的非法活动空间。 这种情况下,安全部门只能把管控重点放在已知 的、规则明确的安全威胁上,导致内部人员长期、 隐蔽数据窃取行为发现难,数据泄露事件依然层 出不穷[3-5]。 因此,研究文档分类分级技术,识别需要重点 保护的敏感数据;研究用户异常行为分析技术, 识别用户异常操作,是解决内网数据泄露的重要 课题。 2 基于 N 元语言模型的文档智能分 类分级技术 根据数据安全治理理论,数据安全防护的基 础是识别数据资产、分级分类数据资产,只有明 确了数据保护对象及安全等级,才能对数据实施 按需防护,避免一刀切式的静态防御,促进数据 的安全流通与共享。 在数据资产的识别过程中,按载体形态差异 其识别方式也存在不同,数据按载体形态主要划 分为结构化数据与非结构化数据两类。针对结构 化数据,数据集中承载在数据库中,可以通过元 数据的精确定义,较为直接地进行数据资产识别 并实施分级分类管控,但针对广泛分布在终端、 网络、云存储中的非结构化敏感数据 (如商务合 同、会议纪要、监管报告、技术资料等敏感文档), 鉴于文档是由字、词及上下文语义构成的,单纯 的依赖关键词、正则表达式等传统规则手段对文 档分类进行识别,缺乏词与词之间的上下文语义 级分析,导致文档分类分级的高误报率与高漏报 率。如商务合同与涉诉文档,虽然都会存在甲 方、乙方、联系电话、联系方式等关键词,但在不 同类型文档语境下,其文档表达含义与分类截然 不同。而且,由于文档分类定级误判,会产生敏 感文档的非授权明文外发风险,进而导致数据泄 露。由于分类误判对非敏感级文档进行加密、阻 断处理,影响正常业务开展[6-8]。 2.1 面临的技术问题 通过自然语言处理技术检测识别文档敏感内 容,已经演化为文档智能分类分级的技术趋势,在 落地实施过程中,也面临如下突出的技术问题[9]。 在文档语义特征表达层面,各领域文档形式 多样、内容丰富、中文语体混杂的情况普遍存在, 例如公安电子笔录形式多样,官方语体和方言语 体交相混杂,且上下文语义高度相关。而目前的 语言模型建立在朴素贝叶斯独立性假设的基础 上,现实情况明显无法满足独立性假设要求,从 而导致文档分类分级的准确率较低[9-10]。 在文档内容识别层面,敏感文档的分类检测 技术分为有监督和无监督两种模式,无监督文档 分类技术不需要样本但准确率很低,有监督文档 准确率相对较高,但存在样本标注工作量大、人 工标注质量无法保证的问题,直接导致产品研发 周期长、成本高、效果差的问题[11]。 针对文档分类分级在实际应用中面临的技术 问题,本文提出如下的解决思路:构建 N 元中文 语言模型,解决当前语言模型面临的独立性假设 不成立问题。构建自动无监督样本库,解决当前 样本标注工作量大,质量难保证问题。 2.2 技术方案 2.2.1 语言模型基本原理 语言模型的发展经历了专家语法规则模型、 统计语言模型和神经网络语言模型。专家语法规 则模型在初始阶段利用模式匹配技术,以自然语 言的语法规则为切入点,模式匹配归纳总结,提 供自然语言建模能力,但随着语法规则规模急剧 扩大,专家语法规则已不可持续[12]。 (w1w2 ···wn) wi(i ⩽ n) P(wi |w1w2 ···wi−1) (S ) = P(w1w2 ···wn) 统计语言模型认为文档由单词序列构成,通 过建模,分析文档中单词的概率分布。统计语言 模型基于朴素贝叶斯的独立性假设,即将句子 S 看成一组相互独立的单词序列 ,那么 对于任意一个单词 在句子 S 中出现的条 件概率为 ,那么整个句子的概率 模型 P ,根据贝叶斯公式和全概 率公式可推导出概率模型: P(S ) = P(w1w2 ···wn) = ∏n i=1 P(w1)P(w2|w1)···P(wi |w1w2 ···wi−1) (1) 式 (1) 必须在基于朴素贝叶斯独立性假设条 第 5 期 喻波,等:非结构化文档敏感数据识别与异常行为分析 ·933·
·934· 智能系统学报 第16卷 件的情况下才成立,但是在实际应用中朴素贝叶 1)K的取值问题。在业务层面,企业往往也 斯独立性假设往往不成立。 无法提供文档类别数;在技术层面,K均值聚类算 神经网络语言模型为了应对独立性假设不成 法的K取值本身也是一个关键问题。 立的问题,采用因果思路,在语料库庞大到能覆 2)准确率低问题。K均值聚类算法,虽然是 盖所有可能语义表述的情况下,通过训练的方法 效果最好的无监督算法,但是准确率也只能到 获得条件概率P(ww?w-i)。但是收集这样一 70%,与构建样本库的要求还相去甚远。 个庞大的语料库本身就是一个问题,在特别的应 2.2.4基于无监督算法的样本库构建过程 用领域,例如各地方言与官方语体混杂语料的收 针对上述问题,基于无监督算法的样本库构 集明显不可行。 建过程如下: 2.2.2N元中文语言模型构建过程 1)从生产环境网络出口收集大量文档,作为 因此在统计语言模型的基础上提出N元中文 样本集Q: 语言模型,其核心思想是将语言模型划分为N个 2)采用N元中文语言模型对样本Q中的文 相互独立的子模型,分段训练,利用线性插值公 档进行特征提取; 式分步整合。其实施过程: 3)采用数据分析工具Pandas对样本集Q中 1)将语料库按领域和语体划分为N个语料库 的文档特征进行特征对齐: 子集; 4)采用非线性降维的算法(uniform manifold 2)针对各个语料子集训练特定语言模型; approximation and projection for dimension reduc- 3)使用线性插值公式,获得整个语言模型: tion,UMAP)降维文档特征,降低文档特征复杂 F(wlw时')=∑,PM,(r时) 性,提高聚类准确率; 5)确定K均值聚类算法的K值,具体原理和 式中0≤d≤l。A的期望最大值(expectation max- 方法为:假设真实类别数为N,所有样本到其所属 imum,EM)的迭代计算方法为 类族中心的距离的平方和为D,随着K值增加, 1)对于N个语言模型,使用随机数初始化; 样本划分的类族越来越精细,每个类族的内聚程 2)根据整个语言模型公式计算新的语言模型 度会越来越高,那么平方和D会越来越小;当 概率; K值小于N时,增加K值时会大幅增加每个族的 3)第r次迭代,第j个语言模型在第i≤m) 聚合程度,故平方和D下降梯度会很大,当K值 类上入的计算公式为 大于等于N时,继续增加K值,类族内部的聚合 写P(wh) 效果不再明显,所以平方和D下降梯度会急剧变 小,平方和D下降梯度拐点即为真实聚类数K: ∑写Pwh 式中h为历史。 D--MF 4)不断迭代,重复步骤2)、3),直至收敛。 式中:i为类族编号;C,为第i个类族;P为C中 通过上述方法,将中文语言模型的困惑度值 的某一个文档数据;M,为C,的类族中心点向 从320降低到150以下,为自然语言处理后续任 量;D为所有样本到其所属类族中心的距离的平 务奠定基础。 方和; 2.2.3无监督算法构建样本库基本原理 6)按照5)确定的K值,对样本集Q进行聚 常用的无监督聚类包括K均值聚类、均值漂 类,得到聚类结果,由于K均值聚类算法准确率 移聚类、基于密度的聚类方法、高斯混合模型的 离样本库准确率要求太远,优化K均值聚类算法 最大期望聚类和层次聚类等。经实验验证效果最 提升准确率的投入大而回报小,所以不可取。因 好的方法是K均值聚类。K均值聚类首先随机选 此采用将无监督转换为有监督,分批迭代,投票 择K个中心点,其次计算每个样本到K个中心点 筛选样本的办法来解决此问题: 的欧氏距离,然后将每个样本划分到离它最近的 7)从K均值聚类结果中挑出一部分离类族中 中心点所属类族,最后更新每个类族的中心点,重 心距离小于预设阀值M的文档作为样本集Y,可 复迭代直到所有的样本不再被重新分类为止。 以调节M的取值,确保挑中样本集Y的准确性; 此过程不需要人工标注样本,无须人工干预就可 8)将样本集Y分为训练集和验证集; 以自动区分样本及类别,但是K均值聚类面临两 9)分别采用支持向量机、TextCNN、邻近算法 个问题: 建模,并使用样本集Y训练模型;
件的情况下才成立,但是在实际应用中朴素贝叶 斯独立性假设往往不成立。 P(wi |w1w2 ···wi−1) 神经网络语言模型为了应对独立性假设不成 立的问题,采用因果思路,在语料库庞大到能覆 盖所有可能语义表述的情况下,通过训练的方法 获得条件概率 。但是收集这样一 个庞大的语料库本身就是一个问题,在特别的应 用领域,例如各地方言与官方语体混杂语料的收 集明显不可行[13]。 2.2.2 N 元中文语言模型构建过程 因此在统计语言模型的基础上提出 N 元中文 语言模型,其核心思想是将语言模型划分为 N 个 相互独立的子模型,分段训练,利用线性插值公 式分步整合。其实施过程: 1) 将语料库按领域和语体划分为 N 个语料库 子集; 2) 针对各个语料子集训练特定语言模型; 3) 使用线性插值公式,获得整个语言模型: Pb ( wi |w i−1 1 ) = ∑n j=1 λjPMb j ( wi |w i−1 1 ) 式中 0 ⩽ λ ⩽ 1。λ 的期望最大值 (expectation maximum, EM) 的迭代计算方法为 1) 对于 N 个语言模型,使用随机数初始化 λ ; 2) 根据整个语言模型公式计算新的语言模型 概率; i(i ⩽ n) λ 3) 第 r 次迭代,第 j 个语言模型在第 类上 的计算公式为 λ r i j = λ r−1 i j Pi j(w|h) ∑n i=1 λ r−1 i j Pi j(w|h) 式中 h 为历史。 4) 不断迭代,重复步骤 2)、3),直至收敛。 通过上述方法,将中文语言模型的困惑度值 从 320 降低到 150 以下,为自然语言处理后续任 务奠定基础。 2.2.3 无监督算法构建样本库基本原理 常用的无监督聚类包括 K 均值聚类、均值漂 移聚类、基于密度的聚类方法、高斯混合模型的 最大期望聚类和层次聚类等。经实验验证效果最 好的方法是 K 均值聚类。K 均值聚类首先随机选 择 K 个中心点,其次计算每个样本到 K 个中心点 的欧氏距离,然后将每个样本划分到离它最近的 中心点所属类族,最后更新每个类族的中心点,重 复迭代直到所有的样本不再被重新分类为止[14]。 此过程不需要人工标注样本,无须人工干预就可 以自动区分样本及类别,但是 K 均值聚类面临两 个问题: 1) K 的取值问题。在业务层面,企业往往也 无法提供文档类别数;在技术层面,K 均值聚类算 法的 K 取值本身也是一个关键问题。 2) 准确率低问题。K 均值聚类算法,虽然是 效果最好的无监督算法,但是准确率也只能到 70%,与构建样本库的要求还相去甚远。 2.2.4 基于无监督算法的样本库构建过程 针对上述问题,基于无监督算法的样本库构 建过程如下: 1) 从生产环境网络出口收集大量文档,作为 样本集 Q; 2) 采用 N 元中文语言模型对样本 Q 中的文 档进行特征提取; 3) 采用数据分析工具 Pandas 对样本集 Q 中 的文档特征进行特征对齐; 4) 采用非线性降维的算法 (uniform manifold approximation and projection for dimension reduction,UMAP) 降维文档特征,降低文档特征复杂 性,提高聚类准确率; 5) 确定 K 均值聚类算法的 K 值,具体原理和 方法为:假设真实类别数为 N,所有样本到其所属 类族中心的距离的平方和为 D,随着 K 值增加, 样本划分的类族越来越精细,每个类族的内聚程 度会越来越高,那么平方和 D 会越来越小;当 K 值小于 N 时,增加 K 值时会大幅增加每个族的 聚合程度,故平方和 D 下降梯度会很大,当 K 值 大于等于 N 时,继续增加 K 值,类族内部的聚合 效果不再明显,所以平方和 D 下降梯度会急剧变 小,平方和 D 下降梯度拐点即为真实聚类数 K: D = ∑K i=1 ∑ P∈Ci |P− Mi | 2 式中:i 为类族编号;Ci 为第 i 个类族;P 为 Ci 中 的某一个文档数据; Mi 为 Ci 的类族中心点向 量;D 为所有样本到其所属类族中心的距离的平 方和; 6) 按照 5) 确定的 K 值,对样本集 Q 进行聚 类,得到聚类结果,由于 K 均值聚类算法准确率 离样本库准确率要求太远,优化 K 均值聚类算法 提升准确率的投入大而回报小,所以不可取。因 此采用将无监督转换为有监督,分批迭代,投票 筛选样本的办法来解决此问题; 7) 从 K 均值聚类结果中挑出一部分离类族中 心距离小于预设阀值 M 的文档作为样本集 Y,可 以调节 M 的取值,确保挑中样本集 Y 的准确性; 8) 将样本集 Y 分为训练集和验证集; 9) 分别采用支持向量机、TextCNN、邻近算法 建模,并使用样本集 Y 训练模型; ·934· 智 能 系 统 学 报 第 16 卷
第5期 喻波,等:非结构化文档敏感数据识别与异常行为分析 ·935· 10)从Q中取出一批样本,分别使用已训练的 行为,毫无办法。为了解决隐蔽数据泄露问题, 支持向量机、TextCNN、邻近算法模型进行预测: 采用基于人工智能的用户异常行为分析技术,从 11)使用少数服从多数的投票法,对预测结果 传统的特征规则和人工分析转向大数据和机器学 进行合并,挑出至少有2个模型预测结果均一样 习驱动的新型安全模式。 的样本,将这些样本合并到样本集Y中; 基于从正常行为中发现规律,从规律中挖掘 12)重复步骤10以11),直至样本数量达到要求。 异常的思路:首先,基于历史数据构建用户个体 行为、群体行为、场景行为三大行为基线,从个 3 基于无标记样本的实时用户异常 体、群体、场景3个角度诠释正常用户行为;然 行为分析技术 后,采用神经网络,建立用户异常行为模型,对用 户异常行为进行跟踪、预测与判定。模型具备实 随着企业T架构日益复杂,业务系统逐步增 时流处理、离线批量处理两项能力,实时流用于 多,大量内部隐藏、持久、缓慢的数据泄露行为成 实时分析日志,动态发现异常,并进行跟踪。离 为企业数据安全关注的重点。传统的单点式安全 线批量处理,用于对历史数据进行分析判定,在 防护措施,对于具备一定反侦查能力的数据泄露 历史数据中发现已发生的异常行为如图1所示。 多源日志采集 构建基线 模型预测 用户个体行为基线 终端日志 数据 异常 处置 预处 聚集类算法 群体行为基线 神经网络 评分 响应 主机日志 场景行为基线 人工决策、动态干预、权重反馈 图1模型构建过程 Fig.1 Build model process 在用户异常行为分析中,采用大数据和机器 3.3技术方案 学习构建异常检测模型,显著提高异常行为识别 3.3.1离群点检测构建异常行为样本库基本原理 能力,缩短策略升级严重滞后问题,异常行为检 由于异常行为与正常行为日志数据混杂存 测时间控制在24h以内,自动优化模型,实现自 储,异常数据呈现出以下特点: 适应动态风险识别的。 1)异常数据的特征与大多数数据的特征是不 3.1面临的技术问题 致的,例如同一个员工,大多数情况下都会使 目前采用机器学习技术帮助企业明确用户与 用自己的账号登录业务系统,员工每天的工作内 实体的行为基线,检测偏离基线的异常行为,防 容都基本相同,其行为也应基本相同。如果某天 止数据泄露。但在实际生产环境中,由于样本依 在自己办公电脑上使用其他账号登录,就可能是 赖度过高而导致异常行为识别准确率较低。 非正常行为。 现有的用户异常行为分析系统需要通过大量 2)异常数据在企业数据中的占比较小,例如 已标注样本数据,训练生成用户异常行为分析模型, 同一岗位的不同员工,大多数情况下工作内容基本 但是在实际应用中,用户往往不具备足够的已标 相同,其工作产生的行为日志特征也基本相同, 注样本数据,从而导致系统识别准确率偏低61刀。 如若某员工与其他同岗位员工行为不太一致,就 3.2解决思路 可能是非正常行为。 为解决目前用户异常行为分析过程中样本依 针对上述日志数据的特点,可以采用基于统 赖过高的问题,构建无样本依赖、实时识别异常 计的、距离的、密度的量化指标,刻画异常数据与 行为的分析系统。本文采用无监督异常点检测算 全集数据的疏离程度,即离群点检测方法。 法,以海量行为日志数据为基础,计算单一操作 33.2离群点检测构建异常行为样本库构建过程 行为异常,自动构建异常行为样本库,解决样本 依据企业日志数据的特点,企业用户异常行 依赖问题。 为样本库构建过程如下:
10) 从 Q 中取出一批样本,分别使用已训练的 支持向量机、TextCNN、邻近算法模型进行预测; 11) 使用少数服从多数的投票法,对预测结果 进行合并,挑出至少有 2 个模型预测结果均一样 的样本,将这些样本合并到样本集 Y 中; 12) 重复步骤 10)~11),直至样本数量达到要求。 3 基于无标记样本的实时用户异常 行为分析技术 随着企业 IT 架构日益复杂,业务系统逐步增 多,大量内部隐藏、持久、缓慢的数据泄露行为成 为企业数据安全关注的重点。传统的单点式安全 防护措施,对于具备一定反侦查能力的数据泄露 行为,毫无办法。为了解决隐蔽数据泄露问题, 采用基于人工智能的用户异常行为分析技术,从 传统的特征规则和人工分析转向大数据和机器学 习驱动的新型安全模式[14]。 基于从正常行为中发现规律,从规律中挖掘 异常的思路:首先,基于历史数据构建用户个体 行为、群体行为、场景行为三大行为基线,从个 体、群体、场景 3 个角度诠释正常用户行为;然 后,采用神经网络,建立用户异常行为模型,对用 户异常行为进行跟踪、预测与判定。模型具备实 时流处理、离线批量处理两项能力,实时流用于 实时分析日志,动态发现异常,并进行跟踪。离 线批量处理,用于对历史数据进行分析判定,在 历史数据中发现已发生的异常行为[15] 如图 1 所示。 多源日志采集 终端日志 主机日志 构建基线 用户个体行为基线 群体行为基线 场景行为基线 模型预测 神经网络 异常 评分 处置 响应 人工决策、动态干预、权重反馈 数据 预处 理 密度聚集类算法 图 1 模型构建过程 Fig. 1 Build model process 在用户异常行为分析中,采用大数据和机器 学习构建异常检测模型,显著提高异常行为识别 能力,缩短策略升级严重滞后问题,异常行为检 测时间控制在 24 h 以内,自动优化模型,实现自 适应动态风险识别[15]。 3.1 面临的技术问题 目前采用机器学习技术帮助企业明确用户与 实体的行为基线,检测偏离基线的异常行为,防 止数据泄露。但在实际生产环境中,由于样本依 赖度过高而导致异常行为识别准确率较低。 现有的用户异常行为分析系统需要通过大量 已标注样本数据,训练生成用户异常行为分析模型, 但是在实际应用中,用户往往不具备足够的已标 注样本数据,从而导致系统识别准确率偏低[16-17]。 3.2 解决思路 为解决目前用户异常行为分析过程中样本依 赖过高的问题,构建无样本依赖、实时识别异常 行为的分析系统。本文采用无监督异常点检测算 法,以海量行为日志数据为基础,计算单一操作 行为异常,自动构建异常行为样本库,解决样本 依赖问题。 3.3 技术方案 3.3.1 离群点检测构建异常行为样本库基本原理 由于异常行为与正常行为日志数据混杂存 储,异常数据呈现出以下特点: 1) 异常数据的特征与大多数数据的特征是不 一致的,例如同一个员工,大多数情况下都会使 用自己的账号登录业务系统,员工每天的工作内 容都基本相同,其行为也应基本相同。如果某天 在自己办公电脑上使用其他账号登录,就可能是 非正常行为。 2) 异常数据在企业数据中的占比较小,例如 同一岗位的不同员工,大多数情况下工作内容基本 相同,其工作产生的行为日志特征也基本相同, 如若某员工与其他同岗位员工行为不太一致,就 可能是非正常行为。 针对上述日志数据的特点,可以采用基于统 计的、距离的、密度的量化指标,刻画异常数据与 全集数据的疏离程度,即离群点检测方法[18]。 3.3.2 离群点检测构建异常行为样本库构建过程 依据企业日志数据的特点,企业用户异常行 为样本库构建过程如下: 第 5 期 喻波,等:非结构化文档敏感数据识别与异常行为分析 ·935·
·936· 智能系统学报 第16卷 1)在用户终端部署终端日志采集器,收集用 采集层通过Logstash的input、filter、output组 户操作行为数据,如系统登录、文档操作、软件使 件对数据进行匹配、解析、组装,通过HTTP Cli- 用、邮件外发、上网行为等日志数据: ent读取Zabbix服务端的数据,进行处理操作后 2)在数据库、应用服务器、交换机等位置部 将数据上报到数据存储层。 署设备日志采集器,采集防火墙、业务系统、数据 4.3数据存储层 库等系统与设备的用户操作日志: 存储层存储训练用户异常行为分析模型需要 3)定义用户异常行为场景: 的日志数据、训练分类分级模型需要的文档样本 4)依据异常行为场景,确定场景所需的用户 数据、用户异常行为告警数据、安全事件审计数据。 行为数据; 其中日志数据包括终端、网络设备、主机设备、数 5)依据场景所需的用户行为数据,从用户及 据库、应用系统日志数据。文档样本数据包括覆 操作类型的角度切分数据: 盖业务范围内各业务分类与各安全等级的文档。 6)对切分好的数据按照场景要求进行特征 数据存储层使用Spark Streaming从Kafka中 提取; 读取主动探针采集、被动接口采集汇总的日志数 T)使用邻近算法、离群点检测算法和Feature 据,使用Spring Boot同步数据、生成文件,通过 Bagging等算法,分析建模特征数据,分离出正常 Common-pool2创建数据库连接池,通过Abstract- 数据和异常数据: RoutingDataSource访问关系型数据库,使用Elast-. 8)按场景聚合正常数据,形成样本库。 icsearch和Mysql存储用户异常行为告警数据、安 全事件审计数据,使用Redis存储日志数据与文 4 实验系统 档样本数据,采用Mysql存储规则、用户权限等 4.1系统架构 系统管理数据。 构建数据分类分级与异常行为分析实验系 4.4 数据分析层 统,分析验证技术可行性与应用效果。 分析层包括基本规则与高级模型两种分析方 实验系统采用Spring Cloud微服务架构,使用 式,其中基本规则是采用关键字、正则表达式等 应用容器Docker进行部署,采用关系型与文件型 简单匹配模型识别文档类别、安全等级与异常行 混合存储模式,通过Nginx Web服务器实现负载 为。高级模型包括文档分类分级模型、用户异常 均衡。系统架构包括采集层、分析层、存储层、可 行为分析模型。 视化层。 数据分析层包括工作流框架、特征提取、算 4.2数据采集层 法模型、格式化输出等主要功能。工作流框架负 实验系统采用探针主动采集和接口被动采集 责构建业务流、调度数据处理任务,特征提取负 两种模型,管理员可以通过图形化界面选择采集 责选择各种数据的业务特征、特征提取和特征对 模型,定义探针主动采集频率、被动采集服务地 齐,根据业务场景和数据分布选择算法模型,对 址。主动采集探针部署在操作终端、交换机、应 接业务系统输出分析结果。 用服务器、数据库审计系统,主动采集日志。被 业务工作流采用SpiffWorkflow工作流框架, 动采集服务部署在服务瑞.通过标准接口,对接 实现动态配置业务流程、动态选择数据特征,动 操作终端、交换机、应用服务器、数据库审计等系 态配置算法模型、灵活调度业务场景。 统上报的日志数据。日志数据上报后,数据流转 特征选择和特征提取采用W-Gram语言模 引擎将日志数据推送至分布式消息系统Kafka数 型、词向量方法、线性差别分析、主成分分析、奇 据队列组件中准备进行数据清洗处理与持久化。 异值分解等技术对文档数据和行为数据进行特征 采集探针利用日志处理引擎Logstash的file 选择和特征提取。 beat组件,采用TCP、UDP协议将日志数据上报 算法模型采用插件化封装,根据数据分布特 到采集层,通过网络和应用监测系统Zabbix Agent 点选择算法模型。算法模型包括K均值聚类、密 将日志数据上报至Zabbix服务器。 度聚类方法、高斯混合模型,以及支持向量机、决 采集层汇集日志数据后,经过数据匹配、解 策树、邻近算法、长短时记忆网络、神经网络。 析以及组装操作,将数据推送到采集层中的Kafka 采用JSON、XML协议封装输出数据,满足上 队列中,通过数据分流操作以及动态模板匹配操 层业务系统对接要求。 作将数据推送到数据搜索引擎Elasticsearch中完 4.5数据可视化层 成日志数据的存储流程。 可视化层用于审计分析用户异常行为安全事
1) 在用户终端部署终端日志采集器,收集用 户操作行为数据,如系统登录、文档操作、软件使 用、邮件外发、上网行为等日志数据; 2) 在数据库、应用服务器、交换机等位置部 署设备日志采集器,采集防火墙、业务系统、数据 库等系统与设备的用户操作日志; 3) 定义用户异常行为场景; 4) 依据异常行为场景,确定场景所需的用户 行为数据; 5) 依据场景所需的用户行为数据,从用户及 操作类型的角度切分数据; 6) 对切分好的数据按照场景要求进行特征 提取; 7) 使用邻近算法、离群点检测算法和 Feature Bagging 等算法,分析建模特征数据,分离出正常 数据和异常数据; 8) 按场景聚合正常数据,形成样本库。 4 实验系统 4.1 系统架构 构建数据分类分级与异常行为分析实验系 统,分析验证技术可行性与应用效果。 实验系统采用 Spring Cloud 微服务架构,使用 应用容器 Docker 进行部署,采用关系型与文件型 混合存储模式,通过 Nginx Web 服务器实现负载 均衡。系统架构包括采集层、分析层、存储层、可 视化层。 4.2 数据采集层 实验系统采用探针主动采集和接口被动采集 两种模型,管理员可以通过图形化界面选择采集 模型,定义探针主动采集频率、被动采集服务地 址。主动采集探针部署在操作终端、交换机、应 用服务器、数据库审计系统,主动采集日志。被 动采集服务部署在服务端,通过标准接口,对接 操作终端、交换机、应用服务器、数据库审计等系 统上报的日志数据。日志数据上报后,数据流转 引擎将日志数据推送至分布式消息系统 Kafka 数 据队列组件中准备进行数据清洗处理与持久化。 采集探针利用日志处理引擎 Logstash 的 filebeat 组件,采用 TCP、UDP 协议将日志数据上报 到采集层,通过网络和应用监测系统 Zabbix Agent 将日志数据上报至 Zabbix 服务器。 采集层汇集日志数据后,经过数据匹配、解 析以及组装操作,将数据推送到采集层中的 Kafka 队列中,通过数据分流操作以及动态模板匹配操 作将数据推送到数据搜索引擎 Elasticsearch 中完 成日志数据的存储流程。 采集层通过 Logstash 的 input、filter、output 组 件对数据进行匹配、解析、组装,通过 HTTP Client 读取 Zabbix 服务端的数据,进行处理操作后 将数据上报到数据存储层。 4.3 数据存储层 存储层存储训练用户异常行为分析模型需要 的日志数据、训练分类分级模型需要的文档样本 数据、用户异常行为告警数据、安全事件审计数据。 其中日志数据包括终端、网络设备、主机设备、数 据库、应用系统日志数据。文档样本数据包括覆 盖业务范围内各业务分类与各安全等级的文档。 数据存储层使用 Spark Streaming 从 Kafka 中 读取主动探针采集、被动接口采集汇总的日志数 据,使用 Spring Boot 同步数据、生成文件,通过 Common-pool2 创建数据库连接池,通过 AbstractRoutingDataSource 访问关系型数据库,使用 Elasticsearch 和 Mysql 存储用户异常行为告警数据、安 全事件审计数据,使用 Redis 存储日志数据与文 档样本数据,采用 Mysql 存储规则、用户权限等 系统管理数据。 4.4 数据分析层 分析层包括基本规则与高级模型两种分析方 式,其中基本规则是采用关键字、正则表达式等 简单匹配模型识别文档类别、安全等级与异常行 为。高级模型包括文档分类分级模型、用户异常 行为分析模型。 数据分析层包括工作流框架、特征提取、算 法模型、格式化输出等主要功能。工作流框架负 责构建业务流、调度数据处理任务,特征提取负 责选择各种数据的业务特征、特征提取和特征对 齐,根据业务场景和数据分布选择算法模型,对 接业务系统输出分析结果。 业务工作流采用 SpiffWorkflow 工作流框架, 实现动态配置业务流程、动态选择数据特征,动 态配置算法模型、灵活调度业务场景。 特征选择和特征提取采用 N-Gram 语言模 型、词向量方法、线性差别分析、主成分分析、奇 异值分解等技术对文档数据和行为数据进行特征 选择和特征提取。 算法模型采用插件化封装,根据数据分布特 点选择算法模型。算法模型包括 K 均值聚类、密 度聚类方法、高斯混合模型,以及支持向量机、决 策树、邻近算法、长短时记忆网络、神经网络。 采用 JSON、XML 协议封装输出数据,满足上 层业务系统对接要求。 4.5 数据可视化层 可视化层用于审计分析用户异常行为安全事 ·936· 智 能 系 统 学 报 第 16 卷