一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种恶意软件检测模型构建以及恶意软件检测方法、装置与流程

2022-11-16 16:19:21 来源:中国专利 TAG:


1.本发明涉及网络安全技术领域,具体涉及一种恶意软件检测模型构建以及恶意软件检测方法、装置。


背景技术:

2.随着互联网技术和应用的高速发展,软件已成为内网办公的重要工具,软件提高了工作人员的办公效率。然而,恶意软件的传播和破坏对内网网络安全造成了严重威胁。恶意软件具有传染性,且大多能够窃取机密信息,内网系统一旦遭到不法分子渗透,将对个人与企业造成严重损失。传统的恶意软件检测方法只对软件的字节特征进行评判,此方法准确率不高,检测效果差,容易受到利用混淆技术产生的恶意程序和变形恶意程序干扰,导致放过恶意软件,不适合用于对安全有高标准的内网。


技术实现要素:

3.因此,本发明要解决的技术问题在于克服现有恶意软件检测方式准确性不高的缺陷,从而提供一种恶意软件检测模型构建以及恶意软件检测方法、装置。
4.根据第一方面,本发明实施例公开了一种恶意软件检测方法,包括:获取软件样本集,所述软件样本集包括非恶意软件样本和恶意软件样本;对所述软件样本集中每一个软件样本进行静态特征提取,得到所述软件样本集中每一个软件样本的静态特征向量;根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型。
5.可选地,所述对所述软件样本集中软件样本进行静态特征提取,包括:利用预设分词算法以及滑动窗口算法对每一个所述软件样本对应的目标类型的文件进行静态特征提取;对提取到的静态特征进行向量转换操作得到每一个软件样本的静态特征向量。
6.可选地,根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练,包括:以放回抽样的方式从所述训练集中随机抽取预设次数的样本数据构成每次训练使用的训练子集;利用所述训练子集对所述预设检测模型进行训练直至训练次数满足预设次数。
7.可选地,所述方法还包括:利用所述软件样本集划分出的测试集对训练得到的所述恶意软件检测模型进行准确性验证;当准确性验证结果不满足预设标准,根据重新确定的随机取样次数以及训练次数对所述恶意软件检测模型进行训练。
8.可选地,根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练,包括:将每一个所述训练子集中包含的软件样本以及对应的静态特征向量输入所述预设检测模型;通过调用随机森林算法函数对预设检测模型的检测结果进行归类。
9.根据第二方面,本发明实施例还公开了一种恶意软件检测方法,应用于安全网关,所述安全网关与内网计算机连接;所述方法包括:当接收到内网计算机的软件下载请求,利
用预先集成的恶意软件检测模型对待下载软件进行检测,所述恶意软件检测模型利用如第一方面或第一方面任一可选实施方式所述的恶意软件检测模型构建方法构建得到;当根据所述恶意软件检测模型检测结果为恶意软件,停止响应所述内网计算机对所述待下载软件的下载操作。
10.可选地,当根据所述恶意软件检测模型检测结果为恶意软件,停止响应所述内网计算机对所述待下载软件的下载操作之后,所述方法还包括:将所述恶意软件的ip地址加入黑名单。
11.根据第三方面,本发明实施例还公开了一种恶意软件检测系统,包括:主控计算机,用于执行如第一方面或第一方面任一可选实施方式所述的恶意软件检测模型构建方法并将构建好的恶意软件检测模型存储至安全网关;安全网关,与所述主控计算机通信连接,用于通过执行如第二方面或第二方面任一可选实施方式所述的恶意软件检测方法。
12.根据第四方面,本发明实施例还公开了一种恶意软件检测模型构建装置,包括:获取模块,用于获取软件样本集,所述软件样本集包括非恶意软件样本和恶意软件样本;提取模块,用于对所述软件样本集中每一个软件样本进行静态特征提取,得到所述软件样本集中每一个软件样本的静态特征向量;第一训练模块,用于根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型。
13.根据第五方面,本发明实施例还公开了一种恶意软件检测装置,应用于安全网关,所述安全网关与内网计算机连接;所述装置包括:检测模块,用于当接收到内网计算机的软件下载请求,利用预先集成的恶意软件检测模型对待下载软件进行检测,所述恶意软件检测模型利用如第一方面或第一方面任一可选实施方式所述的恶意软件检测模型构建方法构建得到;处理模块,用于当根据所述恶意软件检测模型检测结果为恶意软件,停止响应所述内网计算机对所述待下载软件的下载操作。
14.根据第六方面,本发明实施例还公开了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选实施方式所述的恶意软件检测方法的步骤,或者如第二方面或第二方面任一可选实施方式所述的恶意软件检测方法的步骤。
15.根据第七方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式所述的恶意软件检测方法的步骤,或者如第二方面或第二方面任一可选实施方式所述的恶意软件检测方法的步骤。
16.本发明技术方案,具有如下优点:
17.本发明提供的恶意软件检测模型构建方法/装置,通过获取包括非恶意软件样本和恶意软件样本的软件样本集,对软件样本集中每一个软件样本进行静态特征提取,得到软件样本集中每一个软件样本的静态特征向量,根据从软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型;相比于现有技术中只通过对软件的字节进行恶意软件的检测,本技术提供的方案利用软件的静态特征(即基于软件属性内容)作为训练样本训练得到
恶意软件检测模型,提高了模型对恶意软件检测的准确性。
附图说明
18.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为本发明实施例中恶意软件检测模型构建方法的一个具体示例的流程图;
20.图2为本发明实施例中恶意软件检测方法的一个具体示例的流程图;
21.图3为本发明实施例中恶意软件检测模型构建装置的一个具体示例的原理框图;
22.图4为本发明实施例中恶意软件检测装置的一个具体示例的原理框图;
23.图5为本发明实施例中电子设备的一个具体示例图。
具体实施方式
24.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
25.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
26.本发明实施例公开了一种恶意软件检测模型构建方法,如图1所示,该方法包括如下步骤:
27.步骤101,获取软件样本集,所述软件样本集包括非恶意软件样本和恶意软件样本;示例性地,软件样本集可以通过对现有的各种集成有非恶意软件(即正常软件)或恶意软件的软件数据库进行读取得到,本技术实施例对具体的软件数据库的类型不作限定,本领域技术人员可以根据实际需要确定。
28.步骤102,对所述软件样本集中每一个软件样本进行静态特征提取,得到所述软件样本集中每一个软件样本的静态特征向量;
29.作为本发明一个可选实施方式,步骤102,包括:利用预设分词算法以及滑动窗口算法对每一个所述软件样本对应的目标类型的文件进行静态特征提取;对提取到的静态特征进行向量转换操作得到每一个软件样本的静态特征向量。
30.示例性地,每一个软件样本对应的目标类型的文件可以包括但不限于软件本身二进制文件、可执行文件等文件;静态特征可以包括但不限于字符串、字节序列、汇编指令、pe头特征、dll文件列表等。采用预设分词算法以及滑动窗口算法对相应的文件进行静态特征的提取操作并对提取到的静态特征进行向量转换后得到对应的静态特征向量。本技术实施例对预设分词算法以及向量转换方式不作限定,本领域技术人员可以根据实际需要确定,如预设分词方法可以是n-gram算法。
31.步骤103,根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测
模型。
32.示例性地,对软件样本集中的软件样本按照预设比例进行拆分得到训练集和测试集,本技术实施例中该预设比例为7:3。利用训练集中软件样本以及每一个软件样本对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件后得到恶意软件检测模型。本技术实施例中该预设条件可以包括模型的准确性或模型损失函数的损失值满足预设阈值等。本技术实施例在进行训练时调用随机森林算法进行模型数据结果的确定,即随机森林算法每一个分支均输出一个二分类模型(即恶意软件或正常软件)的归类结果,若多个分支的所有归类结果为恶意软件的次数大于正常软件,则归类为恶意软件,反之,则归类为正常软件。
33.本发明提供的恶意软件检测模型构建方法,通过获取包括非恶意软件样本和恶意软件样本的软件样本集,对软件样本集中每一个软件样本进行静态特征提取,得到软件样本集中每一个软件样本的静态特征向量,根据从软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型;相比于现有技术中只通过对软件的字节进行恶意软件的检测,本技术提供的方案利用软件的静态特征作为训练样本训练得到恶意软件检测模型,提高了模型对恶意软件检测的准确性。
34.作为本发明一个可选实施方式,步骤103,包括:以放回抽样的方式从所述训练集中随机抽取预设次数的样本数据构成每次训练使用的训练子集;利用所述训练子集对所述预设检测模型进行训练直至训练次数满足预设次数。
35.示例性地,从训练集中以有放回抽样的形式,随机取样m次形成训练子集,可以将训练子集中所有的静态特征向量用于模型的训练,也可以是从训练子集中随机选择k数量的静态特征向量用于模型的训练。重复多次放回抽样得到多个训练子集,利用得到的多个训练子集对预设检测模型进行训练。
36.作为本发明一个可选实施方式,所述方法还包括:利用所述软件样本集划分出的测试集对训练得到的所述恶意软件检测模型进行准确性验证;当准确性验证结果不满足预设标准,根据重新确定的随机取样次数以及训练次数对所述恶意软件检测模型进行训练。
37.示例性地,将测试集中的软件样本数据作为输入,通过训练出的恶意软件检测模型对测试集中的软件样本进行检测以验证恶意软件检测模型的检测准确性;若检测的准确性未达到预期标准,则返回初始步骤,通过增加随机取样次数、特征向量的数量和训练次数的方式,提高恶意软件检测模型的预测准确性。
38.作为本发明一个可选实施方式,根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练,包括:将每一个所述训练子集中包含的软件样本以及对应的静态特征向量输入所述预设检测模型;通过调用随机森林算法函数对预设检测模型的检测结果进行归类。
39.示例性地,将每一个训练子集中包含的软件样本以及对应的静态特征向量作为预设检测模型的输入,通过主控计算机python中的sklearn的decisiontreeclassifier库,调用随机森林算法函数对每一个训练子集的训练结果进行归类,并记录归类结果。通过计算归类结果,若归类结果为恶意软件的次数大于正常软件,则归类为恶意软件,反之,则归类为正常软件。
40.本发明实施例公开了一种恶意软件检测方法,应用于安全网关,所述安全网关与内网计算机连接;如图2所示,该方法包括如下步骤:
41.步骤201,当接收到内网计算机的软件下载请求,利用预先集成的恶意软件检测模型对待下载软件进行检测,所述恶意软件检测模型利用如上述实施例中所述的恶意软件检测模型构建方法构建得到;
42.步骤202,当根据所述恶意软件检测模型检测结果为恶意软件,停止响应所述内网计算机对所述待下载软件的下载操作。
43.本发明实施例提供的恶意软件检测方法,通过集成有恶意软件检测模型的安全网关对用户通过内网计算机进行软件下载过程中相应的待下载软件进行安全检测,对检测出的恶意软件进行过滤,保证了内网的安全。
44.作为本发明一个可选实施方式,该方法还包括:将所述恶意软件的ip地址加入黑名单。
45.示例性地,对检测出的恶意软件,打印恶意软件程序二进制字符的序列并提取文件的http命令,将恶意软件连接到的ip地址加入黑名单以进一步隔离与此ip与内网计算机的交互且将检测到的恶意软件的ip地址添加到黑名单中,下次可以直接通过黑名单对该ip地址进行过滤,提高了对恶意软件的检测效率。
46.通过基于内容的过滤算法自动对软件进行归类,判断软件是否为恶意软件,并将恶意软件的源ip地址加入黑名单,不仅能准确的将恶意软件隔离,并将恶意软件的发布源头地址隔离,实现了对恶意软件和其发布源头的双重隔离,极大程度上提升了恶意软件检测过滤的准确率,保护了内网用户的安全。
47.本发明实施例还公开了一种恶意软件检测模型构建装置,如图3所示,该装置包括:
48.获取模块301,用于获取软件样本集,所述软件样本集包括非恶意软件样本和恶意软件样本;
49.提取模块302,用于对所述软件样本集中每一个软件样本进行静态特征提取,得到所述软件样本集中每一个软件样本的静态特征向量;
50.第一训练模块303,用于根据从所述软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型。
51.本发明实施例提供的恶意软件检测模型构建装置,通过获取包括非恶意软件样本和恶意软件样本的软件样本集,对软件样本集中每一个软件样本进行静态特征提取,得到软件样本集中每一个软件样本的静态特征向量,根据从软件样本集中划分出的训练集中每一个软件样本以及对应的静态特征向量对预设检测模型进行训练直至训练结果满足预设条件得到恶意软件检测模型;相比于现有技术中只通过对软件的字节进行恶意软件的检测,本技术提供的方案利用软件的静态特征作为训练样本训练得到恶意软件检测模型,提高了模型对恶意软件检测的准确性。
52.作为本发明一个可选实施方式,提取模块302,包括:提取子模块,用于利用预设分词算法以及滑动窗口算法对每一个所述软件样本对应的目标类型的文件进行静态特征提取;转换模块,用于对提取到的静态特征进行向量转换操作得到每一个软件样本的静态特
征向量。
53.作为本发明一个可选实施方式,第一训练模块303,包括:抽取子模块,用于以放回抽样的方式从所述训练集中随机抽取预设次数的样本数据构成每次训练使用的训练子集;训练子模块,用于利用所述训练子集对所述预设检测模型进行训练直至训练次数满足预设次数。
54.作为本发明一个可选实施方式,该装置还包括:验证模块,用于利用所述软件样本集划分出的测试集对训练得到的所述恶意软件检测模型进行准确性验证;第二训练模块,用于当准确性验证结果不满足预设标准,根据重新确定的随机取样次数以及训练次数对所述恶意软件检测模型进行训练。
55.作为本发明一个可选实施方式,第一训练模块303,包括:输入子模块,用于将每一个所述训练子集中包含的软件样本以及对应的静态特征向量输入所述预设检测模型;归类子模块,用于通过调用随机森林算法函数对预设检测模型的检测结果进行归类。
56.本发明实施例还公开了一种恶意软件检测装置,应用于安全网关,所述安全网关与内网计算机连接;如图4所示,该装置包括:
57.检测模块501,用于当接收到内网计算机的软件下载请求,利用预先集成的恶意软件检测模型对待下载软件进行检测,所述恶意软件检测模型利用如上述实施例中所述的恶意软件检测模型构建方法构建得到;
58.处理模块502,用于当根据所述恶意软件检测模型检测结果为恶意软件,停止响应所述内网计算机对所述待下载软件的下载操作。
59.本发明提供的恶意软件检测装置,通过集成有恶意软件检测模型的安全网关对用户通过内网计算机进行软件下载过程中相应的待下载软件进行安全检测,对检测出的恶意软件进行过滤,保证了内网的安全。
60.作为本发明一个可选实施方式,该装置还包括:添加模块,用于将所述恶意软件的ip地址加入黑名单。
61.本发明实施例还公开了一种恶意软件检测系统,该装置包括:
62.主控计算机,用于执行如上述实施例中所述的恶意软件检测模型构建方法并将构建好的恶意软件检测模型存储至安全网关;
63.安全网关,与所述主控计算机通信连接,用于通过执行如上述实施例中所述的恶意软件检测方法。通过集成有恶意软件检测模型的安全网关对用户通过内网计算机进行软件下载过程中相应的待下载软件进行安全检测,对检测出的恶意软件进行过滤,保证了内网的安全。
64.示例性地,主控计算机与安全网关相连,安全网关连接内网计算机。其中主控计算机包括:
65.待测数据集获取模块:用于获取待测数据集,所述待测数据集包含正常软件和恶意软件;
66.静态特征提取模块:用于使用n-gram算法提取静态特征,获得软件中的信息;
67.拆分模块:用于将待测数据集按预设比例拆分成测试数据和训练数据;
68.归类模块:用于使用随机森林算法对训练数据进行归类,通过训练数据计算结果来判断测试数据中的软件是否为恶意软件并生成恶意软件分类器;
69.准确性检测模块:用于检测恶意软件分类器的准确性,并将满足标准的恶意软件分类器存储至安全网关;
70.分类模块:用于利用安全网关分类接收到的软件,拒绝用户下载恶意软件,并打印恶意软件的程序二进制字符的序列,提取文件的http命令,将恶意软件连接到的ip地址发送至安全网关黑名单,进一步隔离内网计算机与恶意软件的发布源头;
71.下载模块:用于允许用户将正常软件下载至内网计算机。
72.本发明实施例还提供了一种电子设备,如图5所示,该电子设备可以包括处理器401和存储器402,其中处理器401和存储器402可以通过总线或者其他方式连接,图5中以通过总线连接为例。
73.处理器401可以为中央处理器(central processing unit,cpu)。处理器401还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
74.存储器402作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的恶意软件检测方法对应的程序指令/模块。处理器401通过运行存储在存储器402中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的方法。
75.存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器401所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至处理器401。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
76.所述一个或者多个模块存储在所述存储器402中,当被所述处理器401执行时,执行如图1所示实施例中的恶意软件检测模型构建方法或者图2所示实施例中的恶意软件检测方法。
77.上述电子设备具体细节可以对应参阅图1、图2所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
78.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
79.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献