本申请涉及网络信息安全的,尤其是涉及一种恶意代码可视化分类方法、系统、设备及介质。
背景技术:
1、随着数字经济的迅速发展以及其与实体经济社会的深度融合,以恶意代码为工具的网络攻击数量呈现激增趋势,给安全形势带来了严重威胁。
2、目前恶意代码的检测方式主要包含静态分析和动态分析,静态分析和动态分析在实际应用中取得了一定成效,但这些传统方法往往需要耗费大量时间和精力,并且占用大量存储空间。随着恶意代码数量的剧增,传统方法在应对新的恶意代码时效果会大打折扣。且静态分析主要是利用程序自身的静态结构、代码来判断其是否具有恶意性,虽然静态方法可以准确地捕捉到恶意代码的静态特征,但是由于类型单一,混淆或加壳等技术可以让恶意代码逃过检测,使得检测效果下降。而动态检测主要是代码来对恶意行为进行检测监视,但是动态分析对恶意代码的检测时效性较差,上述问题有待解决。
技术实现思路
1、为了使恶意代码的检测更直观、精确,提升恶意代码的检测效率,本申请提供一种方法、系统、设备及介质,采用如下技术方案:
2、第一方面,本申请提供一种恶意代码可视化分类方法,包括:
3、提取若干个恶意代码的api序列,构建api数据集;
4、根据api数据集,计算得到词向量二维矩阵,将词向量二维矩阵输入至第一通道;
5、将api数据集的若干个api序列转化为ascii码,并转换后的ascii码映射形成结构二维矩阵,将结构二维矩阵输入至第二通道;
6、将api数据集的若干个api序列进行信息熵计算,得到api调用信息熵,将api调用信息熵的二维矩阵输入至第三通道;
7、将第一通道、第二通道和第三通道的信息进行可视化处理。
8、优选的,所述根据api数据集,计算得到词向量二维矩阵,将词向量二维矩阵输入至第一通道的具体步骤为:
9、获取api序列中每个api调用的两个上文单词和两个下文单词,形成包含两个上文单词、两个下文单词和目标api在内的五元素元组;
10、将五元素元组输入cbow模型,cbow模型的嵌入层计算得到嵌入权重;
11、根据嵌入权重计算得到词向量二维矩阵;
12、将词向量二维矩阵输入至第一通道。
13、优选的,所述将api数据集的若干个api序列转化为ascii码,并将转换后的ascii码映射形成结构二维矩阵,将结构二维矩阵输入至第二通道的具体步骤为:
14、将api序列视为长字符串,根据长字符串的字符与ascii码的关系,将每个字符转化为ascii码形式的整型向量;
15、将整型向量映射为设定范围内的像素值,形成二维像素矩阵,将二维像素矩阵输入至第二通道。
16、优选的,所述将api数据集的若干个api序列进行信息熵计算,得到api调用信息熵,将api调用信息熵的二维矩阵输入至第三通道还包括:
17、将二维矩阵的像素视为单位,二维矩阵的像素点及像素点周围的若干个像素点为一个局部;根据局部的信息熵,计算得到api调用信息熵,将api调用信息熵填充至总信息熵矩阵中,得到api调用信息熵的二维矩阵;
18、将api调用信息熵的二维矩阵输入至第三通道。
19、优选的,还包括:
20、将所述可视化图像输入至已训练的分类器中进行家族分类。
21、优选的,所述将所述可视化图像输入至已训练的分类器中进行家族分类的具体步骤为:
22、可视化处理得到可视化图像;
23、根据若干个可视化图像形成可视化图像数据集;
24、取80%的rgb图像作为训练图输入到cnn卷积神经网络中进行训练,得到训练好的分类器;取剩下20%的rgb图像作为验证图输入到已训练好的cnn分类器中,得出家族分类结果。
25、优选的,所述提取若干个恶意代码的api序列的具体步骤为:
26、通过在沙箱环境下对原始的恶意代码数据进行动态分析,得到动态分析报告,再从每份报告中提取所需的动态特征api。
27、第二方面,本申请提供一种恶意代码可视化分类系统,包括:
28、数据集构建模块:用于提取若干个恶意代码的api序列,构建api数据集;
29、第一输出模块:用于根据api数据集,计算得到词向量二维矩阵,将词向量二维矩阵输入至第一通道;
30、第二输出模块:用于将api数据集的若干个api序列转化为ascii码,并将转换后的ascii码映射形成结构二维矩阵,结构二维矩阵输入至第二通道;
31、第三输出模块:用于将api数据集的若干个api序列进行信息熵计算,得到api调用信息熵,将api调用信息熵的二维矩阵输入至第三通道;
32、可视化处理模块:用于将第一通道、第二通道和第三通道的信息进行可视化处理。
33、第三方面,本申请提供一种恶意代码可视化分类设备,包括存储器和处理器,所述存储器存储计算机程序,所述处理器被设置为运行所述计算机程序以执行如前所述的恶意代码可视化分类方法。
34、第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行如前所述的恶意代码可视化分类方法。
35、综上所述,与现有技术相比,本申请提供的技术方案带来的有益效果至少包括:本申请通过恶意代码的api序列构建api数据集,根据api数据集得到词向量二维矩阵、结构二维矩阵和api调用信息熵的二维矩阵,且将词向量二维矩阵输入至第一通道,结构二维矩阵输入至第二通道,将api调用信息熵的二维矩阵输入至第三通道,从而进行可视化处理,通过可视化的方法将特征处理问题转换为图像识别问题,节省了传统检测中繁琐的特征工程或逆向工程的工作量和复杂度,同时也使得检测与分类更简易,得到可视化图像能够使得恶意代码的检测更直观、精确,从而提升恶意代码的检测效率。
1.一种恶意代码可视化分类方法,其特征在于,包括:
2.根据权利要求1所述的恶意代码可视化分类方法,其特征在于,所述根据api数据集,计算得到词向量二维矩阵,将词向量二维矩阵输入至第一通道的具体步骤为:
3.根据权利要求1所述的恶意代码可视化分类方法,其特征在于,所述将api数据集的若干个api序列转化为ascii码,并将转换后的ascii码映射形成结构二维矩阵,将结构二维矩阵输入至第二通道的具体步骤为:
4.根据权利要求3所述的恶意代码可视化分类方法,其特征在于,所述将api数据集的若干个api序列进行信息熵计算,得到api调用信息熵,将api调用信息熵的二维矩阵输入至第三通道还包括:
5.根据权利要求1所述的恶意代码可视化分类方法,其特征在于,还包括:
6.根据权利要求5所述的恶意代码可视化分类方法,其特征在于,所述将所述可视化图像输入至已训练的分类器中进行家族分类的具体步骤为:
7.根据权利要求5所述的恶意代码可视化分类方法,其特征在于,所述提取若干个恶意代码的api序列的具体步骤为:
8.一种恶意代码可视化分类系统,其特征在于,包括:
9.一种恶意代码可视化分类设备,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1-7中任一项所述的恶意代码可视化分类方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1-7中任一所述的恶意代码可视化分类方法。