浙江大学学报(工学版), 2019, 53(4): 777-784 doi: 10.3785/j.issn.1008-973X.2019.04.019

自动化技术

全特征信息均衡建模的内部威胁人物检测

刘宇,, 罗森林, 曲乐炜, 潘丽敏, 张笈

Full-featured information equalization modeling for insider threat detection

LIU Yu,, LUO Sen-lin, QU Le-wei, PAN Li-min, ZHANG Ji

通讯作者: 潘丽敏,女,高级实验师. orcid.org/0000-0002-8850-8380. E-mail: panlimin@bit.edu.cn

收稿日期: 2018-03-30  

Received: 2018-03-30  

作者简介 About authors

刘宇(1993—),男,硕士生,从事信息安全的研究.orcid.org/0000-0003-3726-6702.E-mail:yuliu0319@gmail.com , E-mail:yuliu0319@gmail.com

摘要

针对目前内部威胁人物检测准确率低及高维数据特征信息利用不全的问题,提出全特征信息均衡建模的内部威胁人物检测方法. 该方法对组织内部产生的多源数据进行特征提取和构建,通过对所有特征进行交叉分组,利用交叉分组后的特征进行孤立森林模型构建,提高模型构建过程中对数据特征信息利用的均衡性,利用生成的孤立森林模型进行内部威胁人物检测. 实验结果表明,该方法在CERT-IT(v4.2)内部威胁人物数据集上具有较高F1,且算法效率高,能够有效地用于内部威胁人物检测.

关键词: 内部威胁人物 ; 异常检测 ; 孤立森林算法 ; 交叉分组 ; 行为日志

Abstract

A method that used full-featured information equalization modeling for insider threat detection was proposed in view of the current problems of low accuracy of insider threat detection and incomplete utilization of high-dimensional data feature information. The features of the multi-source data generated within the organization were extracted and constructed. Then all the features were cross-grouped, and the cross-grouped features were used to construct the isolation forest model with improving the balance of the use of data feature information in the process of model building. The generated isolation forest model was used for insider threat detection. The experimental results show that the method has a higher F1 value on the CERT-IT (v4.2) insider threat figures data set, and the efficiency of the algorithm is high. The algorithm can be effectively used for insider threat detection.

Keywords: insider threat ; anomaly detection ; isolation forest algorithm ; cross-grouping ; behavior log

PDF (833KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

刘宇, 罗森林, 曲乐炜, 潘丽敏, 张笈. 全特征信息均衡建模的内部威胁人物检测. 浙江大学学报(工学版)[J], 2019, 53(4): 777-784 doi:10.3785/j.issn.1008-973X.2019.04.019

LIU Yu, LUO Sen-lin, QU Le-wei, PAN Li-min, ZHANG Ji. Full-featured information equalization modeling for insider threat detection. Journal of Zhejiang University(Engineering Science)[J], 2019, 53(4): 777-784 doi:10.3785/j.issn.1008-973X.2019.04.019

近年来,由于企业内部安全审计流程的不规范或重视程度不高导致的内部攻击案例开始在各大厂商的安全报告中崭露头角并逐年增加. 2015年,普华永道发布的全球信息安全状况调查报告[1]指出,2014年中国大陆和港澳台地区企业的信息安全事件数量高达4280万件,比2013年增长48%,给企业造成的财务损失同比增长34%,其中49%的安全事件来自内部威胁. 2016年Forcepoint公司的全球威胁报告[2]指出,个人隐私信息、身份验证凭据和企业知识产权是数据泄露中的主要目标,37%的数据泄露是由内部员工主动的数据窃取行为导致的.

以上安全现状表明,内部威胁已经是企业信息化环境下安全风险控制的新挑战. 卡耐基梅隆大学的计算机应急响应团队(CMU-CERT)根据其对内部威胁案例中内部攻击者行为特征和攻击模式等的研究,给出内部威胁人物的明确定义[3]如下:内部威胁人物是企业或组织员工(包括在职和离职)、承包商、商业伙伴以及第三方的服务提供方等,具有企业或组织的系统、网络、数据的访问权限,能够利用合法职权对企业或组织中信息或信息系统的机密性、完整性及可用性进行破坏或产生不利影响. 依据定义可知,内部威胁同外部威胁相比,具有高危性、隐蔽性、多元性的特点.

针对内部威胁人物的特点及其对企业或组织安全性的危害,目前的相关研究主要有基于主观要素的研究、基于客观要素的研究. 基于主观要素的研究包括心理学领域分析[4]和社会学领域分析[5]等;基于客观要素的研究包括基于用户命令检测[6]、基于行为日志检测[7]、基于I/O外设使用检测[8]等. 在实际研究中,心理特征及其他主观要素很难获取真实数据,同时基于心理学、社会学等的分析难以实现准确的判断和预测. 客观要素中基于用户命令的检测由于依靠的数据源单一以及模型简单导致检测率不高,基于I/O外设使用检测的模型实现较困难,所以现有研究主要基于员工行为日志进行分析. 本文基于员工行为日志信息,提出全特征信息均衡建模的内部威胁人物检测方法. 该方法通过对数据集所有特征进行交叉分组,更加充分地利用数据的特征信息,保证模型构建过程中对特征信息利用的均衡性,提高内部威胁人物的检测效果.

1. 相关工作

内部威胁人物检测本质上是基于异常的检测,即通过对日志数据中的异常或不一致的行为日志进行分析,从而检测出包含内部威胁行为的人物. 现有的内部威胁人物检测方法主要是从人物的行为日志中提取特征,利用机器学习的相关算法如K近邻(k-nearest neighbor,KNN)、支持向量机(support vector machine,SVM)、随机森林(random forest,RF)等进行模型训练和构建,最终对内部威胁人物进行检测和判定. 其中人物的行为日志主要包括系统登录/登出域、设备使用域、文件访问域、邮件使用域及网页访问域共5个域,可以基于单独的域信息对人物的行为开展针对性的单域行为模式分析,也可以结合多个域的信息进行综合性分析.

单域行为模式分析的方法通常依赖于某个用户属性来构建用户在某个检测域的域内行为模式,如李全刚等[9]分析电子邮件数据,引入基本行为模式单元挖掘用户的通信行为模式. 提取邮件通信网络的域内和域外结构特征和职能特征,通过对用户行为模式变化的分析来定位事件的发生,进一步指导内部威胁的相关工作. Camina等[10]基于文件访问域进行分析,通过文件访问间隔、文件搜索深度、文件访问频率及文件路径距离等特征,构建基于异常行为的内部威胁检测K均值近邻分类模型和支持向量机模型,依据构建的模型进行内部威胁分析. 随着内部攻击多元性的发展,内部威胁行为已经不仅仅局限于某单个域,因此在实际应用过程中,内部威胁多倾向于多域分析.

多域行为模式分析的方法选取文件访问特征、登录/登出特征、网页访问特征、设备使用特征、邮件使用特征等来进行人物的行为模式刻画,最终得到人物的行为刻画矩阵,使用算法分析人物的行为矩阵,进而检测内部威胁人物. 文雨等[11]收集了人物的5类行为日志,利用特征数据构成特征向量,应用高斯混合模型及贝叶斯信息准则,通过设定异常行为阈值或分析某一天特征向量的有无,进行内部威胁人物检测. Brdiczka等[12]使用随机森林算法检测社交网络图中潜在的威胁人物,利用图形分析技术、动态跟踪和机器学习来检测人物行为日志的异常. 目前,随着日志数据的不断累加,数据的维度信息不断扩大,导致多域行为的分析面临计算复杂度增加、维度信息利用不充分等问题.

综上所述,针对目前内部威胁人物检测方法中存在数据的多源特性、高维数据计算的复杂性、维度信息利用的不充分性等问题,本文提出全特征信息均衡建模的内部威胁人物检测方法. 该方法以多源数据为分析对象,运用异常“少而不同”的思想,即异常行为比正常行为更容易被孤立,采用数据被孤立的难易程度来衡量人物的威胁状态,简化计算复杂性;通过对数据集所有特征进行交叉分组,利用交叉分组后的特征进行孤立森林模型构建,充分利用数据的维度信息,提升内部威胁人物的检测效果.

2. 全特征信息均衡建模的内部威胁人物检测算法

2.1. 算法原理框架

全特征信息均衡建模的内部威胁人物检测方法首先从多源数据集中进行特征提取和构建,对所提特征进行交叉分组处理;利用交叉分组后的每个特征子集合构建一定数量的孤立树,最终将各个分组构建的孤立树集成起来,形成孤立森林模型. 模型构建完成后,首先令待测数据对模型进行遍历,通过数据遍历模型的平均路径长度计算数据的异常分数,依据数据的异常分数进行内部威胁人物检测,其原理框架如图1所示.

图 1

图 1   内部威胁人物检测方法原理图

Fig.1   Principle diagram of insider threat detection method


2.2. 内部威胁人物检测数据预处理

数据预处理的目的是保证数据的纯净性,提高数据的质量. 由于原始数据中往往存在噪声数据,且部分数据可能存在不完整、甚至不一致的问题,导致数据的准确性和完整性受到影响. 数据预处理阶段的工作是将空缺值、异常值进行甄别,对异常值进行剔除,对空缺值进行补全. 基于以上原则,采用如下预处理方法:1)对异常数据进行剔除,如时间记录超过24 h等不符合常规的数据;2)对空缺数据进行补全,补全的方法为均值法;3)将特征数值进行标准化处理,如将登录登出相关的时间特征转化为s.

2.3. 内部威胁人物多源数据特征提取

多源数据指的是来源不同的人物数据. 采用CMU-CERT团队发布的CERT-IT(v4.2)内部威胁人物数据集[13]. 在该数据集中,分为7个子数据源:email数据、logon数据、device数据、file数据、http数据、psychometric数据、LDAP数据,数据集的详细信息如表1所示.

表 1   CERT-IT数据源详细信息

Tab.1  Details of CERT-IT dataset

数据名称 内容说明 记录数 维度
logon 登录/登出日志 854 859 5
device 移动设备使用 405 380 5
file 文件操作日志 445 581 6
email 电子邮件日志 2 629 979 7
http 人物上网日志 28 434 423 6
psychometric 人物心理调查 1 000 7
LDAP 2009.12-2011.05员工信息 1 000 9

新窗口打开| 下载CSV


多源数据特征提取是从多个数据源中提取人物特征,进行量化处理和特征构建. 其中,特征提取的最终目的是要进行判别,即通过所提特征能够有效地对数据进行区分,因此应以类别的可分性作为特征提取的原则,可分性越大,对判别越有利,可分性越小,对判别越不利. 在上述原则的基础上,考虑人物的行为特征,如登录时间、文件访问次数等,在保证提取的特征能够反映人物方方面面的同时,尽可能地提高判别的可分性,从而提高内部威胁人物检测的灵敏度.

CERT-IT(v4.2)内部威胁人物数据集中的原始数据为人物行为日志记录,各个子数据源中的数据不能直接作为数值化的人物特征,因此需要进行进一步的特征提取和构建.

Logon数据是人物登录登出设备产生的数据,其中包括id(事件标识)、date(时间标识)、user(人物标识)、pc(设备标识)、activity(状态标识,取值为Logon和Logoff). 在上述数据的基础上,对Logon和Logoff状态进行分时段特征提取,以6 h为一个时段间隔,将一天24 h,划分为0~6、6~12、12~18、18~24四个时段,统计每个时段内人物的最小登录/登出次数、最大登录/登出次数、登录/登出次数的众数、登录/登出的平均次数;此外,在全天的基础上统计人物最早登录/登出时间、最晚登录/登出时间、登录/登出时间的众数、登录/登出的平均时间,最终从Logon数据中提取出40维特征.

Device数据是人物连接断开可移动设备产生的数据,其中包括id(事件标识)、date(时间标识)、user(人物标识)、pc(设备标识)、activity(状态标识,取值为Connect和Disconnect). 对Device数据的特征提取方法同Logon数据提取方法相同,对Connect和Disconnect状态分别进行特征提取,得到每个时段内人物使用可移动设备的最小连接/断开次数、最大连接/断开次数、连接/断开次数的众数、连接/断开平均次数以及全天基础上的最早连接/断开时间、最晚连接/断开时间、连接/断开时间的众数、连接/断开的平均时间,最终从Device数据中提取出40维特征.

File数据是人物操作文件产生的数据,其中包括id(事件标识)、date(时间标识)、user(人物标识)、pc(设备标识)、filename(文件标识)、content(内容标识). 对File数据仅从整体进行分时频次特征提取和全时时间特征提取,得到每个时段内人物操作文件的最小次数、最大次数、操作次数的众数、平均操作次数以及全时段的最早操作时间、最晚操作时间、操作时间众数、操作平均时间,最终从File数据中提取20维特征.

Email数据是人物收发邮件产生的数据,其中包括id(事件标识)、date(时间标识)、user(人物标识)、pc(设备标识)、to(接收标识)、cc(抄送标识)、bcc(密送标识)、from(发送标识)、size(大小标识)、attachment(附件标识)、content(内容标识). 对Email数据的特征提取方法同File数据相同,得到每个时段内人物邮件活动的最小次数、最大次数、活动次数的众数、平均活动次数以及全时段的最早活动时间、最晚活动时间、活动时间众数、活动平均时间,最终从Email数据中提取20维特征.

Http数据是人物浏览网页产生的数据,其中包括id(事件标识)、date(时间标识)、user(人物标识)、pc(设备标识)、url(链接标识)、content(内容标识),对HTTP数据的处理方法同File和Email数据的方法相同,得到每个时段内人物上网活动的最小次数、最大次数、活动次数的众数、平均活动次数以及全时段的最早活动时间、最晚活动时间、活动时间众数、活动平均时间,最终从HTTP数据中提取20维特征.

Psychometric数据为人物的心理信息,具体含义如下:O(开放性评分)、C(责任感评分)、E(外向性评分)、A(宜人性评分)、N(神经质评分),评分数据具备数值化属性,因此可以直接融入特征集合. 最终从Psychometric数据中提取5维特征.

此外,利用数据集中的设备标识和人物标识统计与每个人物所关联的设备的数量,将结果融入最终特征集合作为1维特征. 以人物标识为依据,将从不同数据源中提取的数据特征整合到一起,形成最终的数据特征集.

综上所述,本文根据不同数据的特点,遵循特征提取的基本原则,对不同数据源进行特征提取,最终提取146维的人物特征用于内部威胁人物检测.

2.4. 全特征信息均衡建模的孤立森林模型构建

Liu等[14]提出的孤立森林算法利用异常“少而不同”的特点,依据数据的特征信息构建一系列的随机二叉树,即孤立树( $ {\rm{iTree}}$). $ {\rm{iTree}}$ 只包含以下2种节点:一种是具有2个孩子节点的内部节点( $ {\rm{inNode}}$),一种是没有孩子节点的外部节点( ${\rm{exNode}}$). 构建 $ {\rm{iTree}}$ 时,需要从样本数据集中随机地选择特征和分裂值;依据特征和分裂值对每个数据对象进行划分,直到 $ {\rm{iTree}}$ 构建完成;将构建完成的所有iTree集成起来,形成最终的孤立森林模型.

在孤立森林模型的构建过程中,由于每次切割数据空间划分子树时,都是在所有特征中随机选取一个特征,因此在构建完所有 $ {\rm{iTree}}$ 后可能有较多的特征信息没有被利用,导致算法的准确率较低. 为了解决该问题,在孤立森林模型构建的过程中对数据集的特征集合采用交叉分组处理,基本思想如下:给定数据集的所有特征 $ Q$n个空的特征子集合 $ {Q_i}\left( {i = 1, \cdots ,n} \right)$,特征集 $ Q$ 中元素数量为 $ m$,特征子集合 $ {Q_i}$ 中元素数量为 $ l$,定义交叉因子为 $ r$,表示各特征子集合包含的特征数量在数据集所有特征数量中所占的比例,即 $ r = l/m$,取值为0~1.0;然后依次将特征集中的每个特征放入特征子集合中,如将 $ Q$ 中第1个特征放入 $ {Q_1}, \cdots ,{Q_{rn}}$ 中,第2个特征放入 $ {Q_2}, \cdots ,{Q_{rn + 1}}$,第 $ i$ 个特征放入 $ {Q_{\left( {i - 1} \right){\rm{mod}}\;n + 1}}, \cdots ,{Q_{\left( {i + rn - 2} \right){\rm{mod}} \;n + 1}}$,第 $ i + 1$ 个特征放入 $ {Q_{i\;{\rm{mod}}\;n + 1}}, \cdots ,{Q_{\left( {i + rn - 1} \right){\rm{mod}}\;n + 1}}$ 中, $ {\rm{mod}}$ 表示取模运算,依次类推直到数据集的所有特征都出现在新的特征子集合中. 在经过交叉分组的各个特征子集合的基础上分别构建一定数量的孤立树,在孤立树的构建过程中,特征的选取范围为子集合中的全部元素,有效地提高孤立树构建过程中对特征信息利用的均衡性,实现对数据特征信息的充分利用;最终将依据各个特征子集合构建的所有孤立树集成起来,形成全特征信息均衡建模的孤立森林模型. 具体的模型构建过程如下所述.

1)输入特征数据集,对全特征信息均衡建模的孤立森林算法的参数进行初始化. 此处设定构建 $ {\rm{iTree}}$ 数目为100,子采样大小为256,树高限制为8.

2)采用子采样算法实现对数据集的子采样,对子采样后数据集的所有特征构成的集合依据交叉分组规则进行划分. 设数据集的全部特征集合为 $ Q$,集合中元素个数为 $ m$,经交叉分组后生成多个特征子集合,分别为 $ {Q_1},{Q_2}, \cdots ,{Q_n}$;每个子集合中元素个数均为 $ l$,且所有特征子集合应满足条件 $ {Q_1} \cup {Q_2} \cup \cdots \cup {Q_n} = Q$,交叉因子 $ r = l/m$$ r$ 通过固定 $ n$ 依据验证集测试效果进行调整.

3)利用上述的样本空间进行 $ {\rm{iTree}}$ 构建,在构建的过程中,每次切割数据空间进行子树划分时,特征的选取从步骤2)的特征集合元素 $ {Q_n}$ 中选取;在确定选取的特征后,寻找当前特征的取值范围,并在该范围内随机选取一个分裂值完成对数据空间的子树划分,重复该过程直至达到终止条件,完成孤立树的构建. 算法实现的伪代码如下.

孤立树构建算法iTree(X′,Qj)

Input:X′-输入数据,Qj-特征选取的集合

Output:孤立树(iTree

1:if X不可再分 then

2: return exNode{Size←|X|}

3:else

4: 从 Qj 中随机选择一个特征 q,即 qQj

5: 从特征 q 在数据集的取值范围中随机选择一个值 p

6:  Xl←filter(X′, q<p)

7:  Xr←filter(X′, qp)

8: return inNode{Left←iTree(Xl),

9:        Right←iTree(Xr),

10:      SplitAtt←q,

11:      SplitValue←p}

12:end if

在孤立树的基础上构建孤立森林. 为了保证不同树之间存在一定的差异性,采用随机采样一部分数据集的方法来构造每棵孤立树;在孤立森林构建的过程中,针对每个特征子集合分别构建一定数量的孤立树;最终将基于不同特征子集合而生成的多组孤立树集成到一起,共同组成孤立森林. 构建方法的伪代码如下.

孤立森林构建算法iForest(X,t,φ,n,r)

Input:X-输入数据,t-孤立树的数量,φ-下采样大小,n-特征分组的组数,r-交叉因子

Output:孤立树的集合即孤立森林(iForest

1:Initialize Forest

2:for i=1 to X. featureNum do

3: 把第i个特征放入到特征子集合Q(i−1)modn+1, ··· ,Q(i+rn−2)modn+1

4: end for

5: for j =1 to n do

6:  for $ k = 1 + \left( {j - 1} \right){t}/{n}$ to $ j{t}/{n}$ do

7:   $ X' \leftarrow {\rm{sample}}\left( {X,\varphi } \right)$

8:   $ {\rm Forest} \leftarrow {\rm Forest} \cup {\rm iTree}\left( {X',{Q_j}} \right)$

9:  end for

10: end for

11: return Forest

2.5. 全特征信息均衡建模的孤立森林模型检测

全特征信息均衡建模的孤立森林模型构建完成后,对数据集中的数据进行判定,最终的判定依据为数据的异常分数. 异常分数的定义如下:

$ s(x,n) = {2^{\left( { - \frac{{E(h(x))}}{{c(n)}}} \right)}}. $

$ s\left( {x,n} \right)$ 的取值为[0,1.0], $ s\left( {x,n} \right)$ 越接近于1.0,则表明样本越孤立,样本为异常的可能性越大. 使用排序二叉树的平均路径评估方法,对结果进行归一化处理, $ c\left( n \right)$ 的定义如下:

$ c\left( n \right) = 2H\left( {n - 1} \right) - {{{2\left( {n - 1} \right)}}/{n}} . $

式中: $ H\left( k \right) \!=\! {\rm{ln}} k\! +\! \xi $,其中 $ \xi $ 为欧拉常数,是0.577 215 664 9.

$ h\left( x \right)$ 是测试数据遍历单棵孤立树的路径长度, $ E(h\left( x \right))$ 为测试数据遍历每棵孤立树后的平均路径长度,计算过程的伪代码如下.

孤立树平均路径长度计算—PathLength(x,T,hlim,e)

Input: x-测试数据,T-孤立树,hlim-树高限制,e-当前树的长度,需要初始化为0

Output:测试数据的路径长度

1:if T是外部节点or $ e \geqslant {\rm{hlim}}$ then

2: return $ e + c\left( {T.size} \right)$ {其中 $ c\left( . \right)$ 在式(2)中定义}

3:end if

4:分裂属性 $ a \leftarrow T.{\rm{splitAtt}}$

5:if $ {x_a} < T.{\rm{splitValue}}$ then

6: return $ {\rm{PathLength}}\left( {x,T.{\rm{left}},{\rm{hlim}},e + 1} \right)$

7:else { $ {x_a} \geqslant T.{\rm{splitValue}}$}

8: return $ {\rm{PathLength}}\left( {x,T.{\rm{right,hlim}},e + 1} \right)$

9:end if

在检测阶段, $ s$$ E(h\left( x \right))$ 计算, $ E(h\left( x \right))$ 由当前样本在每棵孤立树中的路径遍历得出. 当使用 $ {\rm{PathLength}}$ 函数进行计算时, $ h\left( x \right)$ 统计从根节点到叶子节点的边的数量. 当测试数据 $ x$ 的高度达到树高限制时,返回为 $ e + c\left( {T.{\rm{size}}} \right)$. 当计算出集合中每棵树的 $ h\left( x \right)$ 后,通过式(1)计算 $ s\left( {x,n} \right)$ 来产生异常分数. 在获取异常分数的基础上,通过设定异常判定阈值,对数据集中的每个人物作出威胁判定. 在整个检测阶段,算法的复杂度为 $ O\left( {nt{\rm{log}}\,\,\varphi } \right)$,其中 $ n$ 为测试样本数量, $t$ 为孤立树的数量, $ \varphi $ 为子采样的大小.

3. 实验分析

3.1. 实验数据与环境

为了验证该方法在内部威胁人物检测方面的效果,采用由CMU-CERT团队发布的CERT-IT(v4.2)内部威胁人物数据集进行实验. 该数据集包括人物的登录登出信息、邮件操作信息、文件操作信息、网络活动信息、设备使用信息、员工心理测试信息及LDAP信息,详细信息如表1所示. 基于上述原始信息进行特征提取,构建特征向量集,实验最终使用的人物特征向量是2.3节中提取的146维特征向量.

实验在Windows7操作系统的戴尔台式机和Ubuntu14.04操作系统的VMware虚拟机中进行,其中台式机配置为四核3.40 GHz的CPU以及4 GB内存,Ubuntu虚拟机配置为双核2.50 GHz的CPU以及32 GB内存.

3.2. 实验结果与分析

3.2.1. 评价指标

选择精确率(precision)、召回率(recall)、F1、AUC及算法运行时间作为评价全特征信息均衡建模的孤立森林算法性能优劣的指标.

假设混淆矩阵如表2所示.

表 2   用于内部威胁人物检测评价指标计算的混淆矩阵

Tab.2  Confusion matrix for calculating insider threat detection evaluation index

样本类别 负类 正类
负类 TN FP
正类 FN TP

新窗口打开| 下载CSV


基于混淆矩阵模型,精确率表示在预测为正类的样本中,真正为正类的样本所占的比例,精确率越大,表示预测效果越好. 精确率的定义如下:

$ P = {{\rm TP}}/({{{{\rm{TP} + FP}}}}). $

召回率表示预测为正类的样本数量,占总的正类样本数量的比值,召回率越大,表明更多正类样本预测正确,预测效果越好. 召回率的定义如下:

$ R = {{\rm TP}}/({{{\rm{TP + FN}}}}). $

F1是结合精确率和召回率的综合指标,F1为0~1.0,且F1越大表示预测效果越好. F1定义为

$ F_1 = {{2PR}}/({{{{P + R}}}}). $

ROC(receiver operating characteristic)曲线是根据一系列不同的二分类方式,FPR为假正率,TPR为真正率,曲线所覆盖的面积定义为AUC. ROC曲线和AUC都是用来评价分类模型优劣的常用指标,且AUC越大表明预测效果越好.

算法的运行时间是衡量算法性能优劣的重要指标之一. 算法的运行时间包括模型训练消耗时间和模型验证消耗时间.

3.2.2. 实验结果与分析

1)全特征信息均衡建模的孤立森林实验.

首先确定全特征信息均衡建模的孤立森林算法的交叉因子. 实验使用从CERT-IT(v4.2)数据集中提取的146维人物特征作为输入,设置算法的初始参数 $ {\rm{iTree}}$ 为100棵,子采样大小为256,交叉分组组数设定为10组,交叉因子取值为0.1~1.0,步进长度设置为0.1. 在相应交叉因子的设置条件下分别运行全特征信息均衡建模的孤立森林算法,依据算法运行结果计算精确率、召回率、F1和AUC,依据相应结果绘制指标折线图,如图2所示. 可知,当交叉因子Fc取值为0.6时,算法运行效果最好.

图 2

图 2   均衡建模交叉因子选择实验结果

Fig.2   Selection of equalization modeling crossover factor


在均衡建模交叉因子选择实验的基础上,比较孤立森林算法和全特征信息均衡建模的孤立森林算法在内部威协人物数据集上的运行效果. 在对数据集中的人物进行威胁判定时,由于原始数据集中每个人物都有着相应的威胁标签,可以通过程序迭代的方式确定异常判定阈值,依据程序迭代的结果将最终阈值设定为0.55;以该阈值对数据集中的每个人物作出威胁判定,将异常分数高于阈值的人物判定为内部威胁人物,最终将算法的判定结果同人物真实威胁标签进行对比. 依据对比结果统计 TN、FP、FN、TP 的数量,得到内部威胁人物检测混淆矩阵,计算算法的评价指标. 实验的最终输出为算法经过十折交叉验证后得到的精确率、召回率、F1和AUC的平均值.

实验结果如图2所示. 全特征信息均衡建模的孤立森林算法在交叉因子取值为0.5~0.9时,在精确率、召回率、F1、AUC方面均比原始算法提升;当交叉因子取值为0.6时达到最优,此时算法的检测指标与使用全部特征的检测指标对比如图3所示. 实验结果表明,全特征信息均衡建模的孤立森林算法通过对数据集所有特征进行交叉分组处理,实现对数据集特征信息的充分利用,具有更好的检测效果.

图 3

图 3   全特征信息均衡建模对比实验结果

Fig.3   Comparision of full-featured information equalization modeling


2)内部威胁人物检测算法对比分析实验.

将从CERT-IT(v4.2)内部威胁人物数据集中提取的146维的1 000条人物特征数据,按照80%和20%的比例分成训练集和测试集. 采用训练集中的数据进行相应算法的模型构建,测试集中的数据用于对各算法的检测效果进行评价. 其中全特征信息均衡建模的孤立森林算法的参数设定如下:iTree 为100棵,子采样大小为256,交叉分组的组数设定为10组,交叉因子设置为0.6,异常判定阈值设置为0.55;KNN算法中,K选取设定为12;SVM算法中,选用多项式内核函数进行模型训练;RF算法中,决策树的最大深度 max_depth 设置为10,单棵决策树使用的最大特征数 max_feature 设置为auto,决策树的数量 n_estimators 设置为10. 实验的输出为每个算法经过十折交叉验证后得到的精确率、召回率和F1的平均值.

将全特征信息均衡建模的孤立森林算法与K近邻(KNN)、支持向量机(SVM)、随机森林(RF)算法进行对比实验,实验结果如图4所示. 算法运行时间t表3所示.

图 4

图 4   内部威胁人物检测效果对比实验结果

Fig.4   Comparision of insider threat detection effect


表 3   内部威胁人物检测算法运行时间对比实验结果

Tab.3  Comparision of insider threat detection algorithm runtime

算法 t/s 算法 t/s
iForest 0.126 SVM 17.353
KNN 0.633 RF 127.160

新窗口打开| 下载CSV


图4所示,全特征信息均衡建模的孤立森林算法在精确率方面优于KNN和SVM,与RF较相近;在召回率方面优于SVM和RF,与KNN结果相近;从F1方面可以看出,全特征信息均衡建模的孤立森林算法为0.745 2,高于所有对比算法. 由于F1是算法精确率和召回率的调和平均值,可以说明全特征信息均衡建模的孤立森林算法的综合表现优异. 在算法运行时间方面,由于全特征信息均衡建模的孤立森林训练过程简单,几乎不需要调整参数,算法效率比其他对比算法高. 实验结果表明,全特征信息均衡建模的孤立森林算法在检测效果和算法运行时间方面表现优异,在内部威胁人物检测方面具有较好的实用价值.

4. 讨 论

在全特征信息均衡建模的孤立森林实验中,不同交叉因子决定了构建孤立树的特征子集合中特征的数量,当交叉因子<0.4时,由于分组后的特征子集合中元素数量过少,导致构建的孤立树所包含的信息不足,对内部威胁人物的检测效果不佳;当交叉因子为0.5~0.9时,基于分组后的特征子集合构建的孤立树实现了对特征信息的均衡利用,检测效果得到提升,从折线图可以看出当交叉因子设置为0.6时,检测效果达到最佳;当交叉因子为1.0时,利用所有特征构建每棵孤立树. 实验结果表明,特征交叉分组可以提高孤立森林算法在内部威胁人物检测方面的精确率、召回率、F1及AUC,即全特征信息均衡建模的孤立森林算法能够充分地利用数据的特征信息,提高模型构建对特征利用的均衡性,具有更好的检测效果.

在对比分析实验中,全特征信息均衡建模的孤立森林算法的F1高于其他对比算法,表明该算法在内部威胁检测方面具有良好的检测效果. 在精确率和召回率方面,全特征信息均衡建模的孤立森林算法均未达到最高,这是由于孤立森林遵循正常样本点的一致性,但在真实场景中会出现正常人物在特殊的需求下进行特殊的操作;这种情况符合孤立森林对离群点的定义,而这部分正常人物没有对企业或组织进行内部威胁,因此产生了误判,但这说明全特征信息均衡建模的孤立森林算法对离群点十分敏感. 在运行时间方面,全特征信息均衡建模的孤立森林算法具有最短的运行时间,这表明该算法的计算复杂度低,运行速度快,算法效率高. 综上所述,全特征信息均衡建模的孤立森林算法能够很好地适用于内部威胁检测任务,具有较好的实用价值.

5. 结 语

本文提出全特征信息均衡建模的内部威胁人物检测方法,通过对特征集进行交叉分组并选择合适的交叉因子,实现全特征信息均衡建模;在保持较低复杂性和较高执行效率的同时,进一步提升内部威胁人物的检测效果. 实验结果表明,全特征信息均衡建模的孤立森林算法在CERT-IT(v4.2)内部威胁人物数据集上,能够充分利用数据集中的特征信息,解决因随机抽取而带来的特征信息利用不全的问题,保证孤立树构建过程中数据特征利用的均衡性,提升算法的检测效果,使得该算法能够更好地运用于内部威胁人物检测过程中. 本文的方法存在一些局限. 在对数据集的处理过程中,没有对数据集中的文本内容进行分析,如文件访问文本信息、电子邮件文本信息,上网网页文本信息等. 为了解决这些问题,下一步将研究文本分析技术,通过提取文本信息中的相关特征丰富内部威胁人物特征集,进而实现内部威胁人物的精确检测.

参考文献

COOPERS P. Turnaround and transformation in cyber security: key findings from the global state of information security survey 2016 [EB/OL]. [2018-06-12]. https://www.pwc.com/sg/en/publications/assets/pwc-global-state-of-information-security-survey-2016.pdf.

[本文引用: 1]

FORCEPOINT Security team. 2016 global threat report [R/OL].[2018-06-12]. https://www.forcepoint.com/sites/default/files/resources/files/forcepoint_2016_global_threat_report_en_0.pdf.

[本文引用: 1]

CAPPELLI D M, MOORE A P, TRZECIAK R F. The CERT guide to insider threats: how to prevent, detect, and respond to information technology crimes [M]. Boston: Wesley, 2012.

[本文引用: 1]

ALAHMADI B A, LEGG P A, NURSE J R C. Using Internet activity profiling for insider-threat detection [C] // International Workshop on Security in Information Systems. Barcelona: ICEIS, 2015: 709–720.

[本文引用: 1]

KAMMÜLLER F, PROBST C W

Modeling and verification of insider threats using logical analysis

[J]. IEEE Systems Journal, 2017, 11 (2): 534- 545

DOI:10.1109/JSYST.2015.2453215      [本文引用: 1]

黄铁, 张奋

基于隐马尔可夫模型的内部威胁检测方法

[J]. 计算机工程与设计, 2010, 31 (5): 965- 968

[本文引用: 1]

HUANG Tie, ZHANG Fen

Method of insider threat detection based on hidden Markov model

[J]. Computer Engineering and Design, 2010, 31 (5): 965- 968

[本文引用: 1]

ELDARDIRY H, BART E, LIU J, et al. Multi-domain information fusion for insider threat detection [C] // 2013 IEEE Symposium on Security and Privacy. San Francisco: IEEE, 2013: 45–51.

[本文引用: 1]

MESSERMAN A, MUSTAFIĆ T, CAMTEPE S A, et al. Continuous and non-intrusive identity verification in real-time environments based on free-text keystroke dynamics [C] // International Joint Conference on Biometrics. Washington DC: IEEE, 2011: 1–8.

[本文引用: 1]

李全刚, 时金桥, 秦志光, 等

面向邮件网络事件检测的用户行为模式挖掘

[J]. 计算机学报, 2014, (5): 1135- 1146

[本文引用: 1]

LI Quan-gang, SHI Jin-qiao, QIN Zhi-guang, et al

Mining user behavior patterns for event detection in Email networks

[J]. Chinese Journal of Computers, 2014, (5): 1135- 1146

[本文引用: 1]

CAMINA J B, HERNANDEZ-GRACIDAS C, MONROY R, et al

The Windows-users and intruder simulations logs dataset (WUIL): an experimental framework for masquerade detection mechanisms

[J]. Expert Systems with Applications, 2014, 41 (3): 919- 930

DOI:10.1016/j.eswa.2013.08.022      [本文引用: 1]

文雨, 王伟平, 孟丹

面向内部威胁检测的用户跨域行为模式挖掘

[J]. 计算机学报, 2016, 39 (8): 1555- 1569

[本文引用: 1]

WEN Yu, WANG Wei-ping, MENG Dan

Mining user cross-domain behavior patterns for insider threat detection

[J]. Chinese Journal of Computers, 2016, 39 (8): 1555- 1569

[本文引用: 1]

BRDICZKA O, LIU J, PRICE B, et al. Proactive insider threat detection through graph learning and psychological context [C] // 2012 IEEE Symposium on Security and Privacy. San Francisco: IEEE, 2012: 142–149.

[本文引用: 1]

GLASSER J, LINDAUER B. Bridging the gap: a pragmatic approach to generating insider threat data [C] // 2013 IEEE Symposium on Security and Privacy. San Francisco: IEEE, 2013: 98–104.

[本文引用: 1]

LIU F T, TING K M, ZHOU Z H

Isolation-based anomaly detection

[J]. ACM Transactions on Knowledge Discovery from Data, 2012, 6 (1): 1- 39

[本文引用: 1]

/