一种基于增强高斯过程的恶意域名检测方法技术

技术编号:31311316 阅读:16 留言:0更新日期:2021-12-12 21:43
本发明专利技术公开了一种基于增强高斯过程的恶意域名检测方法,具体步骤如下;S1、读取正常域名和恶意域名数据;S2、对数据进行shuffle重排序、划分训练集和测试集等预处理;S3、编写字符向量化模块,并对域名和标签进行向量化,并针对训练集和测试集进行归一化处理。本发明专利技术通过对域名进行向量化时直接基于字符,不依赖专家经验,模型基于增强高斯过程构建,使用逻辑斯蒂或贝叶斯支持向量机作为似然函数,通过差分推断计算后验概率,不同于常规模型通过优化恶意域名分类损失函数从而计算唯一参数的方法。意域名分类损失函数从而计算唯一参数的方法。意域名分类损失函数从而计算唯一参数的方法。

【技术实现步骤摘要】
一种基于增强高斯过程的恶意域名检测方法


[0001]本专利技术涉及恶意域名检测领域,具体涉及一种基于增强高斯过程(Augmented Gaussian Processes)的恶意域名检测方法。

技术介绍

[0002]恶意域名情报是威胁情报的重要组成部分,包括恶意域名检测(Malicious Domains Detection)、域名生成算法识别(DGA Recognition)等,相对于图像处理、自然语言处理等领域,基于人工智能研究安全领域的工作并不是很多。以往很多检测模型的构建严重依赖专家经验。例如,对于域名一般使用域名字符熵、域名长度、域名级别、域名数字数量、特征字符数量、字符类型变换次数、最长非顶级域名、数字子域名数量、成词子域名数量等等。基于专家经验对域名进行向量化后,再通过随机森林、CNN(卷积神经网络)、LSTM等来构建有监督的检测模型。不过,不同的专家会有不同的分析经验,无法穷举,且该类模型没有真正发挥深度学习端到端的优势,由于依赖专家经验进行向量化,模型的性能收到一定的约束。
[0003]另外,由于近年来在人工智能自然语言处理(NLP)领域,Transformer框架得到长足的发展,特别是GPT

3取得了很大的成果,同时该类模型的训练需要超大的语料库和多达上千显卡集群的强大的算力,非普通公司所能承受,另外从原理上,该类模型训练的语料库是正常的人类语言,而并非指向网络空间安全领域,在网络空间安全领域,一些恶意域名使用DGA域名,这些域名产生的原理与正常的人类语言截然不同。r/>[0004]目前,域名的向量化严重依赖专家经验,不仅一些专家经验不会公开,同时专家经验依赖于个人,也无法穷举域名的统计特征,因为束缚了后期模型的性能,使得该类模型无法真正实现端到端的自动学习,且通常基于Transformer框架构建检测模型,一来模型较重,不易部署,二来从原理上,该类模型训练的语料库是正常的人类语言,而并非指向网络空间安全领域,在网络空间安全领域,一些恶意域名使用DGA域名,这些域名产生的原理与正常的人类语言截然不同。
[0005]因此,专利技术一种基于增强高斯过程(Augmented Gaussian Processes)的恶意域名检测方法来解决上述问题很有必要。

技术实现思路

[0006]本专利技术的目的是提供一种基于增强高斯过程(Augmented Gaussian Processes)的恶意域名检测方法,通过对域名进行向量化时直接基于字符,不依赖专家经验,模型基于增强高斯过程构建,使用逻辑斯蒂或贝叶斯支持向量机作为似然函数,通过差分推断计算后验概率,不同于常规模型通过优化恶意域名分类损失函数从而计算唯一参数的方法,本专利技术的方法能输出分类的分布,在多分类任务中,对于恶意域名训练集中没有出现的分类,该方法能避免非黑即白的分类逻辑错误,以解决技术中的上述不足之处。
[0007]为了实现上述目的,本专利技术提供如下技术方案:一种基于增强高斯过程
(Augmented Gaussian Processes)的恶意域名检测方法,具体步骤如下;
[0008]S1、读取正常域名和恶意域名数据;
[0009]S2、对数据进行shuffle重排序、划分训练集和测试集等预处理;
[0010]S3、编写字符向量化模块,并对域名和标签进行向量化,并针对训练集和测试集进行归一化处理;
[0011]S4、设定建模方式、增强高斯过程的核函数、似然函数以及与之配套的模型推断方法、是否引入诱导点以及数量、优化器指定以及学习率;
[0012]S5、设定模型相关参数,进行训练和测试;
[0013]S6、保存模型。
[0014]优选的,在S1中,使用Julia语言,启用分布式计算,并基于此方式进行编程,分别读取正常域名数据和恶意域名数据,共11000条样本数据,其中恶意域名数据中包含钓鱼网站域名和恶意软件域名。
[0015]优选的,在S2中,设定MersenneTwister参数,并传给shuffle函数,用以对原始数据进行重排序操作,打乱排列顺序,并划分训练集和测试集。
[0016]优选的,在S3中,编写字符向量化模块,建立域名每一种字符与整数的映射词典,共159个,在对域名进行向量化时,如果有未出现的字符,统一填充为160,在本例中,统一所有域名向量化长度为30,对于长度大于30的域名向量,只截取前30,对于长度小于30的域名向量,在向量组后部分填0,将数据的类型由DataFrame转换为Matrix,单个向量由Int64转换为Float64,并对于处理后的训练集进行均值方差归一化,基于训练集的均值和方差对测试集进行归一化。
[0017]优选的,S4包括以下步骤:
[0018]S4.1、设定模型的建模方式为差分高斯过程;
[0019]S4.2、设定模型的核函数为平方指数核函数(Squared Exponential Kernel),该核函数亦称为高斯核函数(Gaussian Kernel)或径向基核函数(Radio Basis Function Kernel);
[0020]S4.3、设定模型的似然函数为逻辑斯蒂似然函数,差分推断求解器设为AnalyticVI函数;
[0021]S4.4、设定优化器使用adam,学习率为0.01。
[0022]优选的,在S5中,设定模型训练迭代次数为50,在测试集模型精确率达到97.8%,召回率达到92.2%。
[0023]优选的,在S6中,保存训练的模型以及针对每个测试点隐正态分布的均值和方差参数集。
[0024]在上述技术方案中,本专利技术提供的技术效果和优点:
[0025]1、通过基于增强高斯过程建立恶意域名检测的贝叶斯机器学习模型,在域名向量化时直接基于字符进行映射,避免以往模型依赖专家经验提取域名统计特征的问题;
[0026]2、为了提高检测恶意域名在未见分类时的可信度,本模型可以给出计算待测域名的分类概率分布,同时对于常见的二分类问题,也可以直接计算正常/恶意的概率或转换后的类别标签。
附图说明
[0027]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0028]图1为本专利技术的流程图。
具体实施方式
[0029]为了使本领域的技术人员更好地理解本专利技术的技术方案,下面将结合附图对本专利技术作进一步的详细介绍。
[0030]本专利技术提供了如图1所示的一种基于增强高斯过程的恶意域名检测方法,具体步骤如下;
[0031]S1、读取正常域名和恶意域名数据;
[0032]S2、对数据进行shuffle重排序、划分训练集和测试集等预处理;
[0033]S3、编写字符向量化模块,并对域名和标签进行向量化,并本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于增强高斯过程的恶意域名检测方法,其特征在于:具体步骤如下;S1、读取正常域名和恶意域名数据;S2、对数据进行shuffle重排序、划分训练集和测试集等预处理;S3、编写字符向量化模块,并对域名和标签进行向量化,并针对训练集和测试集进行归一化处理;S4、设定建模方式、增强高斯过程的核函数、似然函数以及与之配套的模型推断方法、是否引入诱导点以及数量、优化器指定以及学习率;S5、设定模型相关参数,进行训练和测试;S6、保存模型。2.根据权利要求1所述的一种基于增强高斯过程的恶意域名检测方法,其特征在于:在S1中,使用Julia语言,启用分布式计算,并基于此方式进行编程,分别读取正常域名数据和恶意域名数据,共11000条样本数据,其中恶意域名数据中包含钓鱼网站域名和恶意软件域名。3.根据权利要求1所述的一种基于增强高斯过程的恶意域名检测方法,其特征在于:在S2中,设定MersenneTwister参数,并传给shuffle函数,用以对原始数据进行重排序操作,打乱排列顺序,并划分训练集和测试集。4.根据权利要求1所述的一种基于增强高斯过程的恶意域名检测方法,其特征在于:在S3中,编写字符向量化模块,建立域名每一种字符与整数的映射词典,共159个,在对域名进行向量化时,如果有未出现的字符,统一填充为160,在本例中,统一...

【专利技术属性】
技术研发人员:刘晶
申请(专利权)人:浙江网安信创电子技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1