一种基于ViT孪生神经网络的恶意软件检测方法及系统技术方案

技术编号:37382619 阅读:11 留言:0更新日期:2023-04-27 07:23
本发明专利技术提出一种基于ViT孪生神经网络的恶意软件检测方法及系统,涉及计算机网络信息安全的技术领域,首先获取公开的恶意软件PE文件数据集,通过静态分析和动态分析联合获取PE文件的原始信息和运行状态下的信息,将静态分析和动态分析获取的数据合并,并将合并后的一维数据转化为二维数据,再转化为灰度图,最后将灰度图分割为训练集和测试集,然后构建ViT孪生神经网络模型,利用训练集和测试集分别训练和测试评估ViT孪生神经网络模型,不断调参优化,得到训练好的ViT孪生神经网络模型用于恶意软件检测,较充分地提取恶意软件的特征,提高恶意软件检测的准确率和召回率。高恶意软件检测的准确率和召回率。高恶意软件检测的准确率和召回率。

【技术实现步骤摘要】
一种基于ViT孪生神经网络的恶意软件检测方法及系统


[0001]本专利技术涉及计算机网络信息安全的
,更具体地,涉及一种基于ViT孪生神经网络的恶意软件检测方法及系统。

技术介绍

[0002]随着互联网的高速发展,其应用已经逐渐渗透到人们生活中的每一处,包括社交互动、网上银行、健康相关交易和营销。与此同时,不法分子开始在互联网上实施犯罪。他们通常使用恶意软件对受害者计算机进行网络攻击。
[0003]所谓的恶意软件,是指故意在受害者计算机上执行恶意有效载荷的任何软件。恶意软件有不同类型,包括病毒、蠕虫、特洛伊木马、rootkit和勒索软件。每种恶意软件类型和家族都旨在以不同的方式影响原始受害者机器,例如损坏目标系统,允许远程代码执行,窃取机密数据等。早期恶意软件的编写目的很简单,因此更容易检测,此种恶意软件可以被定义为传统恶意软件。但是,如今,新一代恶意软件可以在内核模式下运行并且比传统恶意软件更具破坏性且更难检测,这种恶意软件可以轻松绕过防火墙,防病毒软件等以内核模式运行的保护软件。通常,传统的恶意软件由一个进程组成,并且不使用复杂的技术来隐藏自己,而新一代恶意软件可以同时使用多个不同的现有或新进程,并使用一些混淆的技术来隐藏自己并在系统中变得持久。此外,新一代恶意软件可以发起更具破坏性的攻击,例如以前从未见过的针对性和持久性攻击,并且在攻击过程中使用了一种以上的恶意软件。
[0004]现有的恶意软件检测方法主要有两种:静态检测和动态检测。静态检测指的是通过反编译工具获取软件的原始代码序列、头部信息、Hash值等特征信息。文献“Qi P,Zhang Z,Wang W,et al.Malware detection by exploiting deep learning over binary programs[C]//2020 25th International Conference on Pattern Recognition(ICPR).IEEE,2021:9068

9075”中提出了通过主成分分析对反编译获取的数据进行降维,并使用支持向量机算法对降维后的数据进行分类的方法,提高了恶意软件检测效率;动态检测指的是通过在沙箱环境中运行软件,在运行软件获取软件的日志信息、函数调用信息、上下文参数等特征信息。文献“Wang S,Zhou G,Lu J,et al.A novel malware detection and classification method based on capsule network[C]//International Conference on artificial intelligence and security.Springer,Cham,2019:573

584”将运行条件下获取的特征信息转换为RGB图像,并提出了一种动态路由的胶囊网络框架用于恶意软件图像的分类。二者在获取特征信息的方式存在区别,但都是通过获取特性信息对深度学习方法进行建模,判别。
[0005]面对日新月异的恶意软件,传统的检测检测方式,比如基于签名、启发、行为式的检测方式显然无法满足当今社会对检测准确率的要求,尤其是面对新型加壳的恶意软件。近些年,随着机器学习,深度学习的发展,深度学习神经网络经过良好的训练能够分辨出程序是否为恶意软件,并展现了极好的性能,在面对新型加壳恶意软件是也表现出了良好的检测效果。然而,恶意软件的威胁一直都存在,但现有的恶意软件检测方法普遍存在检测准
确率较低,特征提取不充分,对新型恶意软件检测效果差等问题。现有技术中公开了一种恶意软件家族检测方法、存储介质和计算设备,检测方法包括:首先对恶意软件训练集中每个类的所有恶意软件训练样本分别进行特征提取,得到对应的多个特征向量;然后,将多个特征向量分别转换为特征图像,根据特征图像生成图像对,构建孪生网络模型和利用图像对对模型进行训练;从恶意软件测试集中取出待测样本,利用训练好的孪生网络模型统计每个待测样本与恶意软件训练样本的相似度得分;计算阈值,并根据阈值区分待测样本为已知恶意软件家族或者为新恶意软件家族。该方案能正确检测恶意软件的所属类别,分类效果良好。但随着恶意软件的变化升级,单以基于动态检测的方式不足以在检测准确率方面达到很好的检测效果,并且单一的卷积孪生网络难以解决长序列特征提取、梯度消失和梯度爆炸等问题。
[0006]因此,如何结合动态检测和静态检测两种方式,提高恶意软件检测率,是一件亟待解决的技术问题。

技术实现思路

[0007]为解决如何结合动态检测和静态检测两种方式,提高恶意软件检测率的问题,本专利技术提出一种基于ViT(Vsion Transformer)孪生神经网络的恶意软件检测方法及系统,可较好地提取恶意软件的特征,提高恶意软件检测的准确率和召回率。
[0008]为了达到上述技术效果,本专利技术的技术方案如下:
[0009]一种基于ViT孪生神经网络的恶意软件检测方法,所述方法包括以下步骤:
[0010]S1.获取公开的恶意软件PE文件数据集,删除PE恶意软件数据集中未标注的PE文件;
[0011]S2.判断当前PE文件是否为加壳文件,若是,进行脱壳处理,执行步骤S3;否则,执行步骤S3;
[0012]S3.分别对PE文件进行静态分析和动态分析操作,其中,静态分析时,通过反编译获取PE文件的原始信息;动态分析时,在沙箱环境中运行PE文件,获取运行状态下的PE文件的信息;
[0013]S4.将静态分析和动态分析获取的数据合并,将合并后的一维数据转化为二维数据,再转化为灰度图,最后将灰度图分割为训练集和测试集;
[0014]S5.构建ViT孪生神经网络模型;
[0015]S6.利用训练集训练ViT孪生神经网络模型,不断优化调整ViT孪生神经网络模型中的超参数,并利用测试集对ViT孪生神经网络模型进行评估,得到训练好的ViT孪生神经网络模型,用于恶意软件检测。
[0016]优选地,在步骤S2中,通过探测工具PEiD对PE文件进行检测,确认PE文件是否被加壳,在PE文件为加壳文件时,采用UPX脱壳工具进行脱壳处理。对已加壳的PE文件检测并进行脱壳处理,以便后续对PE文件进行静态分析和动态分析。
[0017]优选地,在步骤S3中,通过反编译获取PE文件的原始信息包括:DOS头部信息、PE签名、PE文件头部信息、PE节可选信息、节表、idata节、text节、data节,获取PE文件的原始信息后,将获取到的原始信息通过Embedding编码技术全部转换成向量格式,删除无意义的数据并将数据进行标准化,对数据加行添项。
[0018]优选地,获取运行状态下的PE文件的信息包括:注册表的读写、主机链接个数、Windows目录和System目录中文件的变化、PE文件运行时的日志信息、函数调用信息、上下文参数信息,将获取到的信息通过Embedding编码技术全部转换成向量格式。
[0019]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ViT孪生神经网络的恶意软件检测方法,其特征在于,所述方法包括以下步骤:S1.获取公开的恶意软件PE文件数据集,删除PE恶意软件数据集中未标注的PE文件;S2.判断当前PE文件是否为加壳文件,若是,进行脱壳处理,执行步骤S3;否则,执行步骤S3;S3.分别对PE文件进行静态分析和动态分析操作,其中,静态分析时,通过反编译获取PE文件的原始信息;动态分析时,在沙箱环境中运行PE文件,获取运行状态下的PE文件的信息;S4.将静态分析和动态分析获取的数据合并,将合并后的一维数据转化为二维数据,再转化为灰度图,最后将灰度图分割为训练集和测试集;S5.构建ViT孪生神经网络模型;S6.利用训练集训练ViT孪生神经网络模型,不断优化调整ViT孪生神经网络模型中的超参数,并利用测试集对ViT孪生神经网络模型进行评估,得到训练好的ViT孪生神经网络模型,用于恶意软件检测。2.根据权利要求1所述的基于ViT孪生神经网络的恶意软件检测方法,其特征在于,在步骤S2中,通过探测工具PEiD对PE文件进行检测,确认PE文件是否被加壳,在PE文件为加壳文件时,采用UPX脱壳工具进行脱壳处理。3.根据权利要求2所述的基于ViT孪生神经网络的恶意软件检测方法,其特征在于,在步骤S3中,通过反编译获取PE文件的原始信息包括:DOS头部信息、PE签名、PE文件头部信息、PE节可选信息、节表、idata节、text节、data节,获取PE文件的原始信息后,将获取到的原始信息通过Embedding编码技术全部转换成向量格式,删除无意义的数据并将数据进行标准化,对数据加行添项。4.根据权利要求2所述的基于ViT孪生神经网络的恶意软件检测方法,其特征在于,获取运行状态下的PE文件的信息包括:注册表的读写、主机链接个数、Windows目录和System目录中文件的变化、PE文件运行时的日志信息、函数调用信息、上下文参数信息,将获取到的信息通过Embedding编码技术全部转换成向量格式。5.根据权利要求1所述的基于ViT孪生神经网络的恶意软件检测方法,其特征在于,步骤S4的具体过程为:S41.将静态分析和动态分析获取的数据合并,使用min

max方式将数据标准化,再将标准化后的结果全部乘以255,使数据全部标准化到[0,255]的区间内;S42.为原始数据添加特征项,且添加的特征项值全为0;S43.构建马尔科夫变迁场,利用马尔科夫变迁场将原本的一维数据转换为二维数据,将二维数据转换为灰度图。6.根据权利要求5所述的基于ViT孪生神经网络的恶意软件检测方法,其特征在于,在步骤S43中,构建马尔科夫变迁场的过程为:S431.将长度为n的序列数据按照其取值范围划分为Q个分位数bins,每个数据点i属于一个唯一的q
i
;S432.构建尺寸为[Q,Q]的马尔科夫转移矩阵W,其中W[i,j]由q
i
中的数据被q
j
中的数据紧邻的频率决定;
S433.构建尺寸为马尔科夫变迁场M,M[i,j]的值为W[q
i
,q
j
]。7.根据权利要求5所述的基于ViT孪生神经网络的...

【专利技术属性】
技术研发人员:凌捷凡聪罗玉刘忠平何远强
申请(专利权)人:广州天诚伟业通信科技有限公司
类型:发明
国别省市:

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

1