注:本文摘自轩辕实验室成员程乾阳的硕士毕业论文《基于机器学习的CAN总线入侵检测方法》第四章
图1:GAN架构图
图2:分类器示意图
图3:生成器示意图
负梯度刚好为真实标签和预测概率之间的残差。
基于GBDT的入侵检测系统(GBDT-IDS)构建过程如下:
假设最终回归树共个叶子节点,即样本集被划分到K个不同叶子节点,回归树可以写为:
CART回归树的学习过程如下:
CAN报文为十六进制的字符数据,通过基于信息熵的特征提取方法转化为连续数值, 基于信息熵的特征提取方法会在之后的文章中介绍。
孤立森林每次选择一个特征维度,在该维度上将样本切分为两部分,经过多次切割可以将样本分割成多部分。在选中的特征维度上取值越相近越不容易在该次分割中被分到不同部分。因此样本点密集区域的点很难通过分割被隔离,这类样本点想要被划分出来单独作为一个区域(区域内没有其他点)需要较多的分割而离群点需要的分割次数则相对少。孤立森林使用二叉树保存分割的过程,一个点在孤立树中的深度反映了这个点被隔离需要的分割次数。
4. 检测系统框架
如果使用监督学习,那么模型学习时需要标记数据,只能防御已知攻击,忽略了未知攻击的威胁;
如果使用无监督学习,那么建立的模型对已知攻击的检测能力会减弱,浪费了防御方掌握的部分信息优势,降低了对已知攻击的检测准确率。
本文中的CAN总线入侵检测模型分别考虑对已知攻击和未知攻击的威胁,将监督学习和无监督学习有机结合建立组合模型。如图4,检测器A通过监督学习使用攻击数据训练得到,而检测器B通过无监督学习使用正常数据训练得到。检测时,待测数据在处理后先输入检测器A,如果检测出异常则直接报警,否则将数据输入检测器B;如果检测器B检测出异常则直接报警,否则正常返回。本章提出四种入侵检测模型中,基于GBDT模型的入侵检测算法以及GAN的预训练分类器Dpre可以作为监督学习检测器A。孤立森林为无监督学习且在学习小数据集时表现良好,而GAN模型的对抗过程类似于CAN总线安全的攻击和防御场景,在未知攻击的场景下具有较好表现。本文使用孤立森林和GAN最终训练到的判别器Dk作为的检测器B。
图4:检测流程示意图
参考文献
已完成
数据加载中