1 相关工作
1.1 基于用户行为的检测技术
1.2 基于图的检测技术
1.3 现有技术比较
表 1 内部威胁检测方法对比 |
| 序号 | 检测方法 | 特征提取方式 | 考虑因素 | 验证数据集 | 来源 | |
| 时序信息 | 结构关系 | |||||
| 1 | LSTM | √ | × | CERT R4.2 | 文[4] | |
| 2 | LSTM | √ | × | CERT R4.2 | 文[5] | |
| 3 | Bi-LSTM | √ | × | CERT R4.2 | 文[6] | |
| 4 | LSTM | √ | × | CERT R4.2 | 文[7] | |
| 5 | 数据预处理聚合 | × | × | CERT R5.2 | 文[8] | |
| 6 | 数据预处理聚合 | √ | × | CERT R4.2 | 文[9] | |
| 7 | 基于行为 | 数据预处理聚合 | × | × | CERT R6.2 | 文[10] |
| 8 | 日志聚合和解析器 | × | × | CERT R4.2 | 文[11] | |
| 9 | Multi-att-LSTM | √ | × | CERT R6.2 | 文[12] | |
| 10 | Bi-LSTM-att | √ | × | CERT R4.2 | 文[13] | |
| 11 | Encoder-decoder | √ | × | CERT R4.2 | 文[14] | |
| 12 | stacked-LSTM-GRU-att | √ | × | CERT | 文[15] | |
| 13 | Adver-autoencoder | × | × | CERT R6.1/6.2 | 文[16] | |
| 14 | —— | × | √ | CERT R4.2 | 文[17] | |
| 15 | 角色关系构建图结构 | × | √ | CERT R6.2 | 文[18] | |
| 16 | 基于图 | 邮件关系构建图结构 | × | √ | CERT R4.2 | 文[19] |
| 17 | (静态图) | 角色关系构建图结构 | √ | √ | CERT R4.2 | 文[20] |
| 18 | 既定规则构建图结构 | √ | √ | CERT R5.2 | 文[21] | |
| 19 | 既定规则构建图结构 | √ | √ | LANL | 文[22] | |
| 20 | DySAT_DNN | √ | √ | CERT R4.2或CERT R5.2 | 本文 | |
2 内部威胁检测模型
2.1 数据集选取
表 2 CERT R4.2数据集描述 |
| 数据集组成 | .csv文件中字段 | |
| 行为日志文件 | logon.csv | id、日期、用户、pc、活动(登录、注销) |
| device.csv | id、日期、用户、pc、活动(是否连接) | |
| file.csv | id、日期、用户、pc、文件名、内容 | |
| email.csv | id、日期、用户、pc、收发邮箱、大小等 | |
| http.csv | id、日期、用户、pc、url、内容 | |
| 用户组织信息 | LDAP | 用户、企业邮箱、角色、部门、主管 |
注:id为记录用户行为的唯一标识;pc表示用户使用的电脑信息;url表示用户进行http访问的地址。 |
2.2 数据预处理
表 3 原始数据样本与聚合数据样本比较 |
| 正常样本 | 异常样本 | |
| 原始数据样本 | 322 762 804 | 7 423 |
| 聚合后数据样本 | 66 321 | 316 |
表 4 16维特征及其重要性分数 |
| 特征 | 重要性分数 |
| pc0上进行usb操作数 | 44 |
| usb操作总数 | 39 |
| 访问恶意网站总数 | 35 |
| 上班期间usb操作总数 | 34 |
| 访问网页的url深度 | 26 |
| 进行登录操作的总数 | 24 |
| 文件操作中文件大小 | 24 |
| 上班期间pc0进行usb操作数 | 21 |
| pc0上的总操作数 | 20 |
| pc3上的总操作数 | 19 |
| 上班期间登录操作的总数 | 19 |
| 上班期间接收邮件数 | 17 |
| 网页访问数 | 17 |
| 总操作数 | 15 |
| 向外发送邮件数量 | 15 |
| 向外发送含bcc的邮件数量 | 15 |
注:pc0表示用户个人电脑;pc3表示用户主管电脑;usb表示外部设备;url表示用户进行http访问的地址;bcc表示秘密发送收件人。 |
2.3 动态图特征表示
2.3.1 结构自注意层
2.3.2 时序自注意层
2.4 DNN分类
3 实验评估
3.1 性能指标
3.2 实验结果
3.2.1 模型性能分析
表 5 不同检测模型性能对比 |
| 模型 | Pmacro | Rmacro | F1macro |
| SVM | 0.82 | 0.59 | 0.64 |
| RF | 0.96 | 0.61 | 0.68 |
| LR | 0.78 | 0.62 | 0.67 |
| LSTM | 0.81 | 0.59 | 0.64 |
| DNN | 0.65 | 0.65 | 0.65 |
| CNN | 0.81 | 0.69 | 0.73 |
| DySAT_DNN | 0.81 | 0.80 | 0.81 |
3.2.2 消融实验
表 6 不同规则组合下模型性能对比 |
| 模型设置 | Pmacro | Rmacro |
| DySAT_DNN(规则1) | 0.65 | 0.67 |
| DySAT_DNN(规则1+2) | 0.71 | 0.68 |
| DySAT_DNN(规则1+2+3) | 0.81 | 0.80 |
表 7 不同数据集上检测所需的计算成本 |
| 数据集 | 数据样本/条 | 特征维度 | 时间成本/min | |
| 正常 | 异常 | |||
| CERT R4.2 | 66 005 | 316 | 652 | 83.32 |
| CERT R5.2 | 137 808 | 552 | 1 080 | 235.96 |
3.2.3 数据采样策略对模型性能的影响
表 8 不同正负样本条数比下检测模型性能对比 |
| 模型 | 正负样本条数比1∶1 | 正负样本条数比10∶1 | 正负样本条数比50∶1 | 正负样本条数比100∶1 | |||||||
| Rmacro | F1macro | Rmacro | F1macro | Rmacro | F1macro | Rmacro | F1macro | ||||
| CNN | 0.93 | 0.94 | 0.91 | 0.91 | 0.83 | 0.83 | 0.76 | 0.79 | |||
| DNN | 0.94 | 0.94 | 0.80 | 0.85 | 0.77 | 0.77 | 0.67 | 0.73 | |||
| DySAT_DNN | 0.98 | 0.98 | 0.93 | 0.94 | 0.92 | 0.85 | 0.74 | 0.81 | |||
表 9 不同的采样策略对模型性能的影响 |
| 序号 | 采样方法(正常样本条数/异常样本条数) | AUC | R | FPR | |||||
| 训练集 | 测试集 | 训练集 | 测试集 | 训练集 | 测试集 | ||||
| 1 | 原始数据(66 005/316) | 0.828 | 0.989 | 0.174 | 0.196 | 0 | 0 | ||
| 2 | 仅欠采样(316/316) | 0.976 | 0.989 | 0.969 | 0.962 | 0.098 | 0.091 | ||
| 3 | 采样1(3 160/3 160) | 0.994 | 0.993 | 0.987 | 0.912 | 0.039 | 0.026 | ||
| 4 | 采样2(15 800/15 800) | 0.997 | 0.997 | 0.995 | 1.000 | 0.021 | 0.008 | ||
| 5 | 采样3(22 120/22 120) | 0.998 | 0.996 | 0.996 | 0.890 | 0.017 | 0.017 | ||
| 6 | 仅过采样(66 005/66 005) | 0.999 | 0.776 | 0.997 | 0.500 | 0 | 0.010 | ||
3.2.4 比较研究
表 10 DySAT_DNN模型与基线模型的性能对比 |
| 模型 | P | R | F1 | AUC |
| LSTM-CNN | — | — | — | 0.940 |
| Bi-LSTM-SVM | 0.851 | 0.823 | 0.827 | 0.930 |
| revised-GCN | — | 0.833 | — | — |
| ResHybnet | 0.910 | 0.928 | 0.921 | — |
| LSTM-GRU-att | — | 1.000 | — | 0.994 |
| Bi-LSTM-att | 0.933 | 0.918 | 0.924 | — |
| Multi-att-LSTM | — | 0.776 | — | — |
| DySAT_DNN | 0.990 | 1.000 | 0.940 | 0.997 |
