多任务恶意软件检测方法和装置、电子设备及存储介质与流程

文档序号:37456527发布日期:2024-03-28 18:39阅读:9来源:国知局
多任务恶意软件检测方法和装置、电子设备及存储介质与流程

本发明实施例涉及网络安全,尤其涉及一种多任务恶意软件检测方法和装置、电子设备及存储介质。


背景技术:

1、随着恶意软件的日益复杂化和加壳技术的广泛使用,传统的单任务恶意软件检测方法面临着严峻挑战。由于加壳技术能够有效地隐藏恶意软件的真实意图,这使得传统的基于签名的检测方法难以应对,导致了正常软件的高误报。加上大量的正常软件和恶意软件都采用了相同的加壳技术,如inno和upx,这进一步加剧了误报问题。安全厂商通过使用这些被错误标记的文件来训练检测系统,无意中放大了误报的问题。因此,在恶意软件检测领域,如何提高恶意软件的检出率,并减少对正常软件的误判成为亟待解决的技术问题。


技术实现思路

1、本发明实施例提供了一种多任务恶意软件检测方法和装置、电子设备及存储介质,能够提高恶意软件的检出率,并减少对正常软件的误判。

2、第一方面,本发明实施例提供了一种多任务恶意软件检测方法,应用于多任务学习系统,所述多任务学习系统包括共享层、第一任务特定层、第二任务特定层、第一输出层和第二输出层,所述共享层通过所述第一任务特定层连接所述第一输出层,所述共享层通过所述第二任务特定层连接所述第二输出层,所述方法包括:

3、从目标恶意软件获取目标恶意代码文件;

4、对所述目标恶意代码文件进行向量化处理,得到一维向量;

5、通过所述共享层对所述一维向量进行通用特征提取,得到通用特征;

6、将所述通用特征分别输入至第一任务特定层和第二任务特定层,得到第一任务特定层的输出和第二任务特定层的输出,其中,所述第一任务特定层用于对恶意代码检测任务进行特化,所述第二任务特定层用于对加壳分类任务进行特化,所述第一任务特定层的输出根据所述第一任务特定层的权重、所述第一任务特定层的偏置和所述通用特征来确定,所述第二任务特定层的输出根据所述第二任务特定层的权重、所述第二任务特定层的偏置和所述通用特征来确定;

7、将所述第一任务特定层的输出通过所述第一输出层转换为第一任务输出,将所述第二任务特定层的输出通过所述第二输出层转换为第二任务输出,其中,所述第一任务输出根据所述第一输出层的权重、所述第一输出层的偏置和所述第一任务特定层的输出来确定,所述第二任务输出根据所述第二输出层的权重、所述第二输出层的偏置和所述第二任务特定层的输出来确定;

8、基于所述第一任务输出和所述第二任务输出得到目标恶意软件检测结果。

9、在一些实施例中,所述多任务学习系统的训练方法包括:

10、获取训练样本,所述训练样本为恶意代码文件;

11、将训练样本输入至所述共享层,得到共享层的输出;

12、将所述共享层的输出分发至所述第一任务特定层和所述第二任务特定层,得到第一任务特定层的输出和第二任务特定层的输出;

13、通过特征正交正则化确定所述第一任务特定层的输出和所述第二任务特定层的输出之间的点积;

14、根据所述点积和正则化项的权重确定正交正则化项;

15、基于所述第一任务输出和第一任务真实标签确定第一任务的交叉熵损失函数;

16、基于所述第二任务输出和第二任务真实标签确定第二任务的交叉熵损失函数;

17、根据所述第一任务的交叉熵损失函数、所述第二任务的交叉熵损失函数和所述正交正则化项确定最终损失函数;

18、通过梯度下降方法对所述最终损失函数进行参数优化,得到训练好的所述多任务学习系统。

19、在一些实施例中,在所述将训练样本输入至所述共享层,得到共享层的输出之前,所述训练方法还包括:

20、在所述恶意代码文件的大小小于预设阈值的情况下,通过在所述恶意代码文件后面添加0字节,直至将所述恶意代码文件填充至预设阈值大小;

21、在所述恶意代码文件的大小大于预设阈值的情况下,将所述恶意代码文件截断至预设阈值大小。

22、在一些实施例中,所述共享层的输出表示为:

23、

24、其中,为所述共享层的权重,为所述共享层的偏置,为一维向量,是激活函数;

25、所述第一任务特定层的输出表示为:

26、

27、其中,为所述第一任务特定层的权重,为所述第一任务特定层的偏置;

28、所述第二任务特定层的输出表示为:

29、

30、其中,为所述第二任务特定层的权重,为所述第二任务特定层的偏置。

31、在一些实施例中,所述第一任务输出表示为:

32、

33、其中,为所述第一输出层的权重,为所述第一输出层的偏置;

34、所述第二任务输出表示为:

35、

36、其中,为所述第二输出层的权重,为所述第二输出层的偏置。

37、在一些实施例中,所述最终损失函数表示为:

38、

39、其中,为所述第一任务的交叉熵损失函数,为所述第二任务的交叉熵损失函数,为所述第一任务真实标签,为所述第二任务真实标签,为所述正则化项的权重,为所述点积,表示为:

40、为所述第一任务特定层的输出,为所述第二任务特定层的输出。

41、在一些实施例中,所述通过梯度下降方法对所述最终损失函数进行参数优化,包括:

42、

43、其中,表示多任务学习系统的所有权重和偏置,是学习率,是最终损失函数相对于的梯度。

44、在一些实施例中,所述第一任务特定层和所述第二任务特定层均采用多层感知机,所述多层感知机中的全连接层的激活函数采用relu函数。

45、第二方面,本发明实施例还提供了一种多任务恶意软件检测装置,所述装置包括:

46、获取模块,用于从目标恶意软件获取目标恶意代码文件;

47、转化模块,用于对所述目标恶意代码文件进行向量化处理,得到一维向量;

48、通用模块,用于通过共享层对所述一维向量进行通用特征提取,得到通用特征;

49、特定模块,用于将所述通用特征分别输入至第一任务特定层和第二任务特定层,得到第一任务特定层的输出和第二任务特定层的输出,其中,所述第一任务特定层用于对恶意代码检测任务进行特化,所述第二任务特定层用于对加壳分类任务进行特化,所述第一任务特定层的输出根据所述第一任务特定层的权重、所述第一任务特定层的偏置和所述通用特征来确定,所述第二任务特定层的输出根据所述第二任务特定层的权重、所述第二任务特定层的偏置和所述通用特征来确定;

50、转换模块,用于将所述第一任务特定层的输出通过第一输出层转换为第一任务输出,将所述第二任务特定层的输出通过第二输出层转换为第二任务输出,其中,所述第一任务输出根据所述第一输出层的权重、所述第一输出层的偏置和所述第一任务特定层的输出来确定,所述第二任务输出根据所述第二输出层的权重、所述第二输出层的偏置和所述第二任务特定层的输出来确定;

51、输出模块,用于基于所述第一任务输出和所述第二任务输出得到目标恶意软件检测结果。

52、第三方面,本发明实施例还提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的多任务恶意软件检测方法。

53、第四方面,本发明实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如第一方面所述的多任务恶意软件检测方法。

54、根据本发明实施例提供的多任务恶意软件检测方法和装置、电子设备及存储介质,其中,多任务恶意软件检测方法应用于多任务学习系统,多任务学习系统包括共享层、第一任务特定层、第二任务特定层、第一输出层和第二输出层,共享层通过第一任务特定层连接第一输出层,共享层通过第二任务特定层连接第二输出层,多任务恶意软件检测方法包括:从目标恶意软件获取目标恶意代码文件;对目标恶意代码文件进行向量化处理,得到一维向量;通过共享层对一维向量进行通用特征提取,得到通用特征;将通用特征分别输入至第一任务特定层和第二任务特定层,得到第一任务特定层的输出和第二任务特定层的输出,其中,第一任务特定层用于对恶意代码检测任务进行特化,第二任务特定层用于对加壳分类任务进行特化,第一任务特定层的输出根据第一任务特定层的权重、第一任务特定层的偏置和通用特征来确定,第二任务特定层的输出根据第二任务特定层的权重、第二任务特定层的偏置和通用特征来确定;将第一任务特定层的输出通过第一输出层转换为第一任务输出,将第二任务特定层的输出通过第二输出层转换为第二任务输出,其中,第一任务输出根据第一输出层的权重、第一输出层的偏置和第一任务特定层的输出来确定,第二任务输出根据第二输出层的权重、第二输出层的偏置和第二任务特定层的输出来确定;基于第一任务输出和第二任务输出得到目标恶意软件检测结果。基于此,本发明的多任务学习系统具有共享层和两个任务特定层,共享层用于学习所有任务的通用特征,而每个任务特定层针对每个任务进行特化,用于学习各自任务的特定特征。通过将目标恶意代码文件输入至多任务学习系统,通过共享层提取得到通用特征,将通用特征分别输入至第一任务特定层和第二任务特定层,利用第一任务特定层对恶意代码检测任务进行特化,利用第二任务特定层对加壳分类任务进行特化,以进一步提炼和优化从共享层传来的特征,使其更适合特定的任务,再通过各自的输出层将每个任务特定层的输出转换为最终的任务输出,从而实现同时进行恶意代码检测和加壳分类。通过智能地结合恶意软件检测任务和加壳分类任务,提高了对复杂恶意软件的检测效率和准确性。因此,本发明实施例能够提高恶意软件的检出率,并减少对正常软件的误判。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1