当前位置:首页 > 工业控制 > 《机电信息》
[导读]摘要:恶意URL(Malicious URLs)是网络犯罪的重要途径,因此对恶意URL实施有效检测是保障网络安全的前提和关键。近年来,机器学习的迅猛发展为恶意URL检测提供了新的思路。鉴于此,在研究恶意URL以及对机器学习算法实验的基础上,得出基于gcForest算法的机器学习模型能够实现对恶意URL的精确分类检测,其精确度达到99.53%,远高于k近邻分类算法(k-NearestNeighbor)和随机森林算法(RandomForest)等其他传统算法模型,具有较好的检测效果。

引言

恶意URL(MaliciousURLs)是网络犯罪的重要途径,它作为钓鱼网站、网络恶意程序和脚本的载体,为网络违法犯罪活动提供了可乘之机。这些恶意URL有着和一般URL几乎一致的特征,一般不易被检测出,且具有诱导、欺骗的特征,对用户和企业的隐私、数据和财产等安全问题造成很大威胁。随着网络攻击形式逐渐多样化,恶意URL变得更加复杂、隐蔽且更具危害性,这就要求网络安全研究人员研究更加高效的检测方案以实现对其有效检测。因此,对恶意URL的高效识别与检测至关重要。

传统的恶意URL检测方法包括黑名单技术、启发式技术,随着新型恶意URL的逐渐复杂化,传统技术的检测水平逐渐下降,且具有误报率高、更新复杂等特点,无法满足网络安全的需求。

近年来,机器学习为恶意URL的检测提供了新的研究方向。其中具有代表性的算法为k近邻算法)KNN)、RandomForest,此类算法常被用于一般的恶意URL检测场景。但是随着时间的推移以及恶意URL的逐渐复杂化、隐蔽化,这种分类模型往往不能达到预期的分类效果,变得误判率高且稳定性随时间下降。而gcForest算法由于其易训练、可扩展、效率高的优点,在恶意URL检测领域具有很大的发展空间。

本文对URL的特性展开针对性研究,并对机器学习模型训练过程中的特征工程技术与分类算法展开实验,结果表明,gcForest算法训练出的模型在准确率、精确率、召回率、F1-score等各方面远优于一般机器学习算法,能实现对恶意URL的高效检测。

1总体处理框架

机器学习的一般流程包括数据集获取、数据集预处理、特征工程、选取算法训练模型、模型调优与应用等步骤。因此,恶意URL高效检测的机器学习模型包括以下步骤:

(1)获取由正常URL和恶意URL组成的数据集,并分析其特征:

(2)对数据进行预处理,划分训练集、测试集,去除冗余信息:

(3)开展特征工程,对URL数据集进行分词、特征提取,并转化为词向量形式:

(4)部署gcForest算法,输入URL数据进行模型训练:

(5)选取评估指标,通过测试集对模型进行评估,判断其是否符合标准:

(6)将训练完的模型导出并应用,实现对新的URL的检测,判断其是否为恶意URL。

以上步骤的流程图如图1所示。

其中,最为关键的部分为特征工程和机器学习算法选取与模型训练。在特征工程部分,本文对原始的URL数据进行分词、特征提取、词向量表示,最终作为机器学习模型训练的数据输入。在算法选取与模型训练部分,本文利用gcForest研究在恶意URL检测方面的应用,通过准确度、精确率、召回率、F1-score等多项指标对其进行评估,并将其与传统的k近邻算法(KNN)和RandomForest算法进行对比。最终,将模型导出并应用于恶意URL的检测。

2实验原理

gcForest[9]即多粒度级联森林算法,是一种基于决策树的集成方法,其思想是通过随机森林的级联结构进行学习。gcForest的性能较之深度神经网络有很强的竞争力,将其用于恶意URL检测模型中,可以达到极佳的性能。本部分将介绍gcForest应用于URL分类问题的原理以及实现方法。

gcForest采用的多层级结构如图2所示,每层(layer)由4个随机森林组成,包括2个随机森林和2个极端随机森林,每个森林都会对数据进行训练并输出结果,这个结果被称为森林生成的类向量。同时由图2可知,每层都会输出2个结果,即每个森林的预测结果与4个森林的预测的平均结果。

如图3所示,为防止过拟合,先对输入给每个森林的训练数据进行k折交叉验证。同时,由于每一层结构(layer)都会生成4个类向量,故将上一层的4个类向量以及原有的数据作为新的训练数据,输入下一层进行训练,如此叠加,最后一层将类向量进行平均,作为预测结果。

3实验及结果

3.1环境配置

实验平台为windows10,64位操作系统,CPU为i5-10200H,2.40GHz,GPU为NVIDAGeForceGTx1650,内存为16.0GB。Python版本为3.9.12,pandas为1.3.4,conda为4.12.0。

3.2模型评估指标

本文使用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1-score、maroavg和weightedavg这6种指标来评估模型的分类能力。

准确率(Accuracy)表示分类正确样本占总样本的比例,是最直观的评价指标,其公式为:

式中:TP表示预测为正样本且实际为正样本:FP表示预测为正样本而实际为负样本:TN表示预测为负样本且实际为负样本:FN表示预测为负样本而实际为正样本。

精确率(Precision)表示所有预测结果为正例样本中真实为正例的比例,其计算公式为:

召回率(Recall)表示在所有真实为正例的样本中预测结果为正例的比例,其计算公式为:

Fl-score是对模型精确率和召回率的加权平均计算,反映了模型的稳健性,结合精确率和召回率计算公式如下:

maroavg为宏平均,其计算方式是对某个指标求其所有类别指标值的算术平均,以精确率Pi为例,Pi的maroavg计算公式如下:

5ewgitedavg为加权平均,其计算方式是对某个指标求其所有类别指标值的加权平均,记si表示支持第i类的样本数,以精确率Pi为例,Pi的5ewgitedavg计算公式如下:

3.3数据集准备

在数据集的选取上,本实验中所需的6UR数据集来源于Laggke,网址为:ittps://555.Laggke.com/taruntw5arwip/piwsiwng-swte-urks。先对6UR数据进行初步筛选,并按照8:2的比例划分训练集和测试集,得到数据集情况如表1所示。

3.4特征工程

由于6UR中的协议部分中如"ittp""ittps"和"555."等字段对6UR分类基本无影响[+],因此,在对6UR分词前可先将这些部分去除掉,以提高分类效率。去除协议部分后的部分6UR如表2所示。

其次,由于URL是紧密连接的字符与符号,因此要对其进行分词,以此为基础才能实现对URL的词向量表示。如表3所示,经过对比测试常用的分词工具发现,基于正则表达式Re工具可以实现对URL的最准确分词,其效果远优于diesa或Nltk等分词工具。

最后,本文借助sklearn中的TfiBfVectorizer工具,完成对URL的文本特征提取和词向量表示工作,以作为机器学习分类算法的数据输入。

3.5检测结果

将上述预处理数据作为初始训练数据输入gcForest,进行模型训练即可得到分类模型。使用gcForest模型得到的训练结果评估如表4所示。

由表4可知,该模型的分类准确率(Accuracy)达到了99.53%,在保留两位小数的情况下,该模型对恶意URL识别的精确率(Precision)、召回率(Recall)、F1-score均达到0.996以上:而对正常URL识别的精确率(Precision)、召回率(Recall)、F1-score能达到0.992以上。因此,该模型在恶意URL检测的应用中具有极高的准确度与稳定性,具有很大的应用价值。

此外,本文将基于gcForest算法训练出的模型与KNN和RanBomForest算法模型进行对比,结果如图4所示。

gcForest在准确率、精确率、召回率、F1-score、macroavg和weighteBavg指标下均远高于传统的KNN算法,其中准确率提升4.40%,精确率提升3.17%。而对比gcForest底层的RanBomForest算法,其在精确率上带来了3.42%的提升,衡量模型稳定性的F1-score提升了2.31%。由此可以得出,gcForest在恶意URL检测方面具有远优于传统机器学习算法的性能。

4结论

本文将gcForest算法应用于恶意URL检测,训练出能够准确且高效识别恶意URL的机器学习模型,并从原理出发,系统介绍了基于gcForest算法的恶意URL检测模型训练过程。本文的机器学习模型准确率达到99.53%,远高于传统的机器学习分类算法,且其精确率、召回率、F1-score、maroavg和weighteBavg值均高于0.99,具有很好的检测效果。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭