文献笔记 —— GIDS: GAN based Intrusion Detection System for In-Vehicle Network(GIDS: 基于GAN的车载网络入侵检测系统)

这篇文章是2018年发布在Privacy, Security and Trust (PST)会议上的。

Author: Eunbi Seo; Hyun Min Song; Huy Kang Kim
Date of Conference: 28-30 Aug. 2018
Date Added to IEEE Xplore: 01 November 2018
INSPEC Accession Number: 18229294
DOI: 10.1109/PST.2018.8514157
Publisher: IEEE

一、文章贡献

提出了一种新的车载网络入侵检测模型——基于深度学习模型的生成对抗网络入侵检测系统(GIDS)

  • 可扩展性:车内环境变化对于GIDS的检测没有影响;
  • 有效性:GIDS可以只学习正常的数据,因此可以检测入侵而不受限于特定类型的攻击(可以检测到未使用的未知攻击);
  • 安全性:GIDS是一种具有黑盒特性的深度学习模型,攻击者很难操控检测系统的内部结构。

二、相关概念

数据集相关

  • CAN总线:控制区域网络(CAN)是一种标准的车载网络总线系统,为ECU之间提供高效的通信。
  • ECU:电子控制单元(ECU),车载电脑。
  • OBD2接口:通过USB提供实时OBD2数据,通常用于专业诊断和OEM车辆开发中。更专业的OBD2接口还可以用于传输OBD2数据以及专用的CAN总线数据,这对于CAN嗅探和汽车黑客攻击很有用。

模型相关

  • IDS:入侵检测系统(IDS),实时监视系统,发现异常情况就发出警告
  • GAN:生成式对抗网络(GAN),包含(至少)两个模块,生成模型(Generative
    Model)和判别模型(Discriminative Model)

文章中具体还涉及到的概念如有需要可以自行查询,在此只给出了非常简单的解释。

三、数据集Dataset

1、CAN总线的信令逻辑

  • 当一个ECU传输一个0比特(显性),CAN高线有5v、CAN低线有0v。相反,当ECU传输1比特(隐性)时,两根导线都有2.5 V。
  • 总线上的电平有显性电平和隐性电平两种,显性电平的逻辑值为“0”,隐性电平逻辑值为“1”。(显性优先)

2、CAN数据帧格式

CAN总线上传输的CAN数据是有两种数据帧格式的,分别为CAN2.0a、CAN2.0b。根本的区别是CAN2.0b格式多了18位的扩展ID位。根据作者在文中的描述,作者使用的是CAN2.0a的这种数据帧格式,采用的CAN ID是11bits的,是从0x0到0x7FF。依据作者所给的链接,我下载了数据集,我们在此以Dos_attack_dataset举例。


可以看到ID这个部分是由7个元素组成的,但是作者在使用的使用只使用了3个元素(000-7FF),所以由此我们分析一下这个ID各个位置所代表的含义。

以上的分析是我在已知作者使用了三位ID进行编码的情况下所倒推得出的结论,如果有问题/大家有不同的想法,欢迎来与我交流!
下面给出一个比较详细介绍CAN数据帧格式的网址:https://blog.csdn.net/daweihuahuo/article/details/78352762

3、攻击数据集的构建
作者采用了四种攻击方式:

  • 拒绝服务攻击在短周期内注入高优先级的CAN消息(0x000 CAN ID packet)作者每0.3ms注入一次。
  • 模糊攻击是通过欺骗注入随机CAN ID和数据值的消息,作者每0.5ms注入一次。
  • RPM/GEAR攻击: 远程代码执行漏洞/GEAR攻击是通过注入与RPM/GEAR 信息相关的某些CAN ID信息,作者每1.0ms注入一次。

4、数据预处理——one-hot编码
作者采用的是one-hot编码的方式,对数据进行预处理。
概念:独热编码即 One-Hot 编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都有他独立的寄存器位,并且在任意时候,其中只有一位有效。通常用来处理类别间不具有大小关系的特征。有几个类别,就会生成几维的稀疏向量。

比如作者给的例子,CAN ID 三个元素分别是2a0,那么对每个元素在对应的位上为1,其余的位为0。每一个CAN ID 编码出来就是一个16*3的矩阵,这个矩阵就是CAN 图像。

四、GIDS模型

1、GIDS模型

左边是针对已知攻击的模型,右边是针对未知攻击的模型。

  • 已知攻击的模型:D1鉴别器接收从实际车辆中提取的真实的正常CAN图像和异常CAN图像,在训练过程中使用了攻击数据,因此他可以检测到已知的攻击,但是也仅限于检测已知的攻击。
  • 未知攻击的模型:发生器G和鉴别器D1是同时进行训练的,发生器G利用随机噪声产生伪CAN图像,鉴别器D2只接收真实的正常CAN图像和由生成器G生成的伪CAN图像,并估计接收到的图像为真实的CAN图像的概率,也就是分辨是真实的图像还是G生成的,生成器G和鉴别器D2互相竞争,提高他们的表现,使得D2能够检测与CAN图像相似的伪图像。

2、GIDS流程

①实时的CAN数据采用one-hot编码,转换成CAN图像
②D1接收CAN图像并输出一个介于0-1之间的值
③如果输出低于阈值,则当前状态异常(检测出已知攻击)
④如果输出高于阈值,则由D2接收CAN图像并输出一个介于0-1之间的值
⑤如果输出低于阈值,则当前状态异常(检测出未知攻击)

3、鉴别器D的设计

三层的深度神经网络。将输入数据的维数降至一个在0-1之间的输出,用来区分车内网络的正常状态和异常状态。

4、发生器G的设计

反卷积神经网络组成,将随机噪声数据的维数扩展到与鉴别器输入数据相同大小的一副图像,转换成一个CAN 图像。

五、实验结果

这是作者给出的超参的大小。作者最后给出了两个鉴别器的平均准确率分别是100%和98%。

六、总结
作者就是实现了一个基于生成式对抗网络GAN的一个入侵检测模型,其中用到了两个步骤。第一步先筛选检测已知的攻击,第二步用第一步中检测正常的数据中筛选未知的攻击。这样就使检测系统不会限制可检测的攻击类型。

文献笔记 —— GIDS: GAN based Intrusion Detection System for In-Vehicle Network相关推荐

  1. 文献阅读之Design and Evaluation of Scalable Intrusion Detection System Using Machine Learning and Apache

    Design and Evaluation of Scalable Intrusion Detection System Using Machine Learning and Apache Spark ...

  2. 网络入侵检测 Network Intrusion Detection System (NIDS)

    网络入侵检测 Network Intrusion Detection System--NIDS 网络入侵检测 Network Intrusion Detection System (NIDS) 1.学 ...

  3. 论文阅读>烟雾检测:Vision based smoke detection system using image energy and color information

    原文 Vision based smoke detection system using image energy and color information 文章目录 原文 基于图像能量和颜色信息的 ...

  4. 入侵检测系统 Intrusion detection system

    Wikipedia 入侵检测系统 1.与防火墙的比较 2.入侵检测类别 2.1分析活动 2.1.1网络入侵检测系统 2.2.2主机入侵检测系统 2.2检测方法 2.2.1基于签名 2.2.2基于异常 ...

  5. The Cross-evaluation of Machine Learning-based Network Intrusion Detection Systems

    本文提出了交叉检验的框架,指的是在不同的数据集进行交叉验证.we endorse the idea of cross-evaluating ML-NIDS by using malicious sam ...

  6. 【论文阅读】FC-Net: A Method of Few-Shot Network Intrusion Detection Based on Meta-Learning Framework

    文章目录 0. Abstract 1. Introduction 2. Problem Formulation 3. Network Traffic Representation (数据与其处理方式) ...

  7. 【文献摘录】FaceRevelio: A Face Liveness Detection System forSmartphones with a Single Front Camera

    研究英语把上次看的文献写的报告翻成英文,当文摘吧 目录 Abstract Introduction BACKGROUND FACEREVELIO SYSTEM DESIGN Light Passcod ...

  8. MITRE ICS Attack Simulation and Detection on EtherCAT Based Drinking Water System

    基于EtherCAT的饮用水系统MITRE ICS攻击仿真与检测 一.摘要 二.介绍 (一)MITRE ATT&CK Matrix (二)WAZUH基于主机的IDS和Sysmon 三.实验评估 ...

  9. Deep learning based multi-scale channel compression feature surface defect detection system

    基于深度学习的多尺度通道压缩特征表面缺陷检测系统 Deep learning based multi-scale channel compression feature surface defect ...

最新文章

  1. 赠书 | 机器翻译,正在弥补人机翻译之间的差距
  2. CRM 客户端程序开发:获取表单界面上各种字段的值及其他属性
  3. JAVA图形界面(GUI)之布局管理器
  4. Linux 操作系统原理 — 系统启动流程
  5. windows10 上运行 linux -- WSL(Windows Subsystem for Linux)
  6. python映射类型-Python 映射类型字典dict操作定义
  7. python爬虫教程pdf-Python 爬虫:把廖雪峰教程转换成 PDF 电子书
  8. 优秀中层必备的十大能力
  9. 046、JVM实战总结:动手实验:自己动手模拟出对象进入老年代的场景体验一下(下)
  10. python pandas dataframe 不显示索引_python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)...
  11. keil4出现目标未被创建_STM32入门系列-创建寄存器模板
  12. less文件的样式无法生效的一个原因,通过WEB浏览器访问服务器less文件地址返回404错误...
  13. log nginx 显示时间_【日常小知识系列01】Nginx日志简述
  14. 开关电源环路补偿--开关电源进阶知识补充2 为什么要进行伯德图分析?
  15. 视频教程-金蝶K3 WISE 视频教程-ERP
  16. 软件测试方法之正交试验测试方法
  17. 服务器预防性维护检查表,高速公路机电系统预防性维护
  18. Unity 镜像sprite
  19. 电脑如何录制在线课程?-QVE屏幕录制
  20. 怎么保证自动化脚本没有问题_质量保证将使设计变得自动化

热门文章

  1. php若post到的为空则,php – 如果GET或POST为空,则重定向
  2. 韶华如流水时,细细回想,大学时光是如此漫长而又短暂
  3. 标准日本语19 课第1单元新出单词、笔记例句
  4. 【c++】2.处理数据
  5. 编译原理 运行时的存储组织及管理
  6. 电子江湖里,女攻城狮到底是一种怎样的存在?
  7. 【Hack The Box】windows练习-- Chatterbox
  8. java常用英语单词列表
  9. 2017总结,勿忘初心。
  10. 深入理解机器学习——k近邻(kNN,k-Nearest Neighbor)算法:基础知识