• 人工智能安全-5-网络入侵检测


    0 提纲

    • 概述
    • 数据集
    • 数据预处理
    • 特征工程
    • 天池AI上的实践
    • 棘手问题

    1 概述

    入侵检测是网络安全中的经典问题,入侵是指攻击者违反系统安全策略,试图破坏计算资源的完整性、机密性或可用性的任何行为。不管是哪种类型的入侵检测系统(IDS),其工作过程大体是相同的,可以分为三个主要的环节,即信息收集、分类检测和决策,其中,分类检测和决策环节是IDS的关键,都需要一定的人工智能技术来支持。
    IDS有多种不同的划分方法,可以根据信息来源、检测方法、体系结构进行分类。
    根据信息来源可分为:

    • 基于主机IDS;
    • 基于网络的IDS;
    • 混合IDS。

    根据检测方法可分为:

    • 异常检测;
    • 误用检测;

    根据体系结构的不同,可以分为:

    • 集中式IDS;
    • 分布式IDS。

    2 数据集

    对于网络入侵检测,采用网络嗅探、网络数据包截获等方法获得流量数据。对于主机型入侵检测,采用的方法比较灵活,既可以是操作系统的各种日志,也可以是某些应用系统的日志,也可以通过开发驻留于主机的应用软件等方法获得主机数据。

    NSL-KDD数据集是通过网络数据包提取而成,由Tavallaee等人于2009年构建
    NSL-KDD共使用41个特征来描述每条流量,这些特征可以分为三组,即:

    • (1)基本特征(basic features),从TCP/IP连接中提取。
    • (2)流量特征(traffic features),与同一主机或同一服务相关。
    • (3)内容特征(content features),反映了数据包中的内容。

    除此之外,每条流量都带有一个标签,即normal和anomaly,表示相应的流量为正常或异常。

    https://www.unb.ca/cic/datasets/nsl.html下载数据文件
    KDDTrain+.txt文件说明:是完整的NSL-KDD训练集,除了41个特征外,还包括数据包类型的标签和难度等级。

    3 数据预处理

    对于分类任务来说,由于原始数据可能存在异常、缺失值,不同特征的取值范围差异大等问题,对于机器学习会产生影响,因此,在进行机器学习模型训练之前,需要先对数据进行预处理。主要的过程包括:

    • 数据清洗,主要工作包括缺失值和异常值处理;
    • 去量纲:使不同取值范围的特征值转换到同一规格,一般是[0,1]、[-1,+1]等。常见的去量纲方法有归一化和标准化;
    • 离散化:等宽法、等频法和基于聚类的方法等。

    4 特征工程

    针对网络入侵检测应用,其特征数据通常来自多个不同软硬件设备、不同应用系统、不同的日志系统,但是都与攻击行为有一定联系。由此可能导致特征之间存在一定的相关性。例如,针对某个端口的大量并发连接请求,也必然引起内存使用量的增加。又如,Web服务器通常使用默认端口80进行监听,不同服务器一般有默认端口,由此服务器类型和端口就存在一定的相关性。因此,构造合适的特征空间也是很有必要的。

    特征选择和特征抽取是特征工程的两个重要的方面,目的都是寻找合适的样本表示空间。它们的最大区别是是否生成新的属性。

    • 特征提取通过变换的方法获得了新的特征空间,如PCA、NMF等;
    • 特征选择只是从原始特征集中选择出部分子集,没有生成新的特征,主要有Filter(筛选)式、Wrapper(包裹)式和Embedded(嵌入)式。

    5 天池AI上的实践

    在sklearn框架内,以NSL-KDD数据集为例,选择其中的部分数据构造了二分类问题、多分类问题。

    • 在二分类中,训练集共有125973条记录,类别是正常和异常两类。经过去除缺失值记录、归一化等数据处理后,进行特征选择,然后以SVM、决策树、逻辑回归和随机森林作为分类器进行了训练。对另外的测试数据文件进行测试。
    • 在线实验入口:https://tianchi.aliyun.com/course/990

    6 棘手问题

    (1)误报率高、漏报率高。各种机器学习模型仍存在较高的误报率和漏报率,并且对于参数敏感。特别是,对于未知的入侵行为的感知能力弱,已成为制约入侵检测发展的关键技术问题。
    (2)自学习能力差。添加IDS检测规则常依赖于手工方式且更新缓慢,限制了IDS的可用性。
    (3)从检测到决策的困难。入侵检测的最终目标是为安全防御提供支持,而检测技术中的误报率漏报率问题,使得自动化决策可能影响正常数据的流动,也可能导致未能及时阻断入侵行为。
    (4)自身易受攻击。IDS本身是存在漏洞的软件程序,它容易成为黑客攻击的目标,一旦黑客攻击成功,那它所管理的网络安全就不能得到保证。

  • 相关阅读:
    (附源码)php二手服装网站 毕业设计 201711
    (附源码)ssm医院挂号系统 毕业设计 250858
    Python中的运算符
    如何优化 Vue.js 应用程序
    香橙派c# iot .net 控制ULN2003驱动板步进电机 代码实例
    20221121 今天的世界发生了什么
    睿趣科技:抖音开小店大概多久可以做起来
    MFC Windows 程序设计[244]之简单的偏好(附源码)
    JavaScript权威指南第七版 第二章笔记:词法结构
    大一新生HTML期末作业 个人网页王嘉尔明星介绍网页设计与制作
  • 原文地址:https://blog.csdn.net/search_129_hr/article/details/132908473