引用格式:尤刚,徐蕾,李美鹏,等. 基于机器学习和规则的网络异常流量检测研究[J].网络安全与数据治理,2025,44(2):1-9.
引言
在网络安全领域,网络异常流量检测至关重要。当前网络异常流量检测方法主要有基于机器学习、基于规则以及两者混合的。
机器学习中的有监督学习方法依赖标注好的数据,在数据集质量高时能实现较好的检测效果。例如,Hu[1]等人提出了鲁棒性的SVM算法,展现出对噪声处理的强大能力,增强了模型的稳定性;Kabir等人[2]提出了一个改进的SVM方法LS-SVM,实验结果证明该方法在准确性和效率方面有了显著提升。
机器学习中的半监督学习介于监督和无监督之间,通过结合已标注正例与未标注数据训练模型,可实现较好分类性能。Jabbar等人[3]提出了一个以迭代的方式进行聚类的半监督学习器,实验结果显示该方法可以实现较高的准确率和较低的误报率。
机器学习中的无监督学习算法不依赖标注数据集,适应性强,但准确性不如有监督学习,且误报率较高。Syarif等人[4]研究对比了常用的聚类和有监督学习方法,实验结果显示无监督的聚类算法误报率较高,约为20%。
基于规则的网络异常流量检测通过将专家定义的规则与流量进行匹配来识别异常流量。Suricata是一个开源的网络入侵检测和阻止引擎,其在多方面表现出色,但存在无法检测未知流量、实时性差等局限。
混合网络异常流量检测有串行和并行两大方向。并行检测中基于规则的工具和基于机器学习的分类器同步运作。例如,Shah等人[5]提出了一个并行处理框架,将Snort与SVM同时运作,实验显示该系统具有较好的检测精度。串行检测则顺序运用两者。例如,Chiba[6]等人介绍了一种以Suricata和隔离森林算法为核心的检测框架,其中Suricata作为初步过滤器,由隔离森林算法进行进一步的异常流量识别,实现了对未知攻击的有效检测。
考虑到系统的效率,本文选择构建串行的检测系统,即将基于机器学习的检测方法作为第一道过滤器,将基于规则的工具作为第二道过滤器。然而,现行的流聚类算法存在准确率较低的问题,导致过多可疑流量被传递至Suricata系统;此外,Suricata存在无法识别未知异常流量的问题。本文对上述问题进行了改进研究:
(1)针对流聚类算法准确率较低的问题,提出了一种可以动态确定半径阈值的流聚类算法,并进行了对比实验;(2)针对Suricata系统仅能识别已知的异常流量问题,提出了基于Apriori的含有效负载约束的规则生成算法;(3)将基于规则的Suricata系统和基于机器学习的流聚类算法集成,并进行了消融实验[7]。
本文详细内容请下载:
https://www.chinaaet.com/resource/share/2000006336
作者信息:
尤刚1,徐蕾2,李美鹏1,刘文杰1,张鹏1,陆振奎2
(1.96941部队,北京100085;
2.中国航天时代电子有限公司,北京100094)