CN117113352A - Dcs上位机恶意可执行文件检测方法、系统、设备及介质 - Google Patents
Dcs上位机恶意可执行文件检测方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN117113352A CN117113352A CN202311390587.7A CN202311390587A CN117113352A CN 117113352 A CN117113352 A CN 117113352A CN 202311390587 A CN202311390587 A CN 202311390587A CN 117113352 A CN117113352 A CN 117113352A
- Authority
- CN
- China
- Prior art keywords
- executable file
- data set
- malicious
- dcs
- basic block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000015654 memory Effects 0.000 claims abstract description 45
- 238000012549 training Methods 0.000 claims abstract description 45
- 238000007781 pre-processing Methods 0.000 claims abstract description 25
- 238000012544 monitoring process Methods 0.000 claims abstract description 5
- 238000001514 detection method Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 18
- 239000013598 vector Substances 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000011176 pooling Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 9
- 230000002457 bidirectional effect Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 3
- 230000007787 long-term memory Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Biology (AREA)
- Virology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种DCS上位机恶意可执行文件检测方法、系统、设备及介质,属于控制器安全监测技术领域,包括执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;对序列数据集进行数据预处理及拆分,得到基本块数据集;将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。该方法可以快速的对恶意可执行文件进行检测,具有高效、准确的优点。
Description
技术领域
本发明涉及控制器安全监测技术领域,特别是涉及一种DCS上位机恶意可执行文件检测方法、系统、设备及介质。
背景技术
可信DCS(Distributed Control System,缩写为DCS)控制器具备可信计算功能,可以对引导程序、操作系统内核、应用程序、配置文件及进程等进行可信验证,以保证控制器软硬件环境的可信性。
可信DCS控制器中肯定存在恶意可执行文件可以绕过计算机主动安全防御体系而主动去攻击计算机操作系统和应用程序,获取用户重要信息,篡改上位机关键数据等危害系统安全操作。这些恶意可执行文件通过病毒、木马等程序寻找计算机系统中的漏洞,对系统进行攻击,破坏系统的可用性,使得有价值的数据泄露或不可用。随着技术的发展,传统的依靠规则或静态检测的方法已经不能很好的识别恶意可执行文件产生的变质和多态形式,且很多恶意文件内置了解密和伪装模块,使得系统对该可执行文件判断为良性的结果,从而绕过传统检测方法对系统造成伤害。
发明内容
针对上述存在的不足,本发明提供了一种DCS上位机恶意可执行文件检测方法、系统、设备及介质;该方法可以快速的对可执行文件进行检测,识别恶意文件,具有高效、准确的优点。
为实现上述目的,本发明采用如下技术手段:
本发明第一方面是提供一种DCS上位机恶意可执行文件检测方法,包括:
执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
对序列数据集进行数据预处理及拆分,得到基本块数据集;
将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
作为本发明进一步改进,所述执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,包括:
在调试器中执行待检测DCS上位机的每个良性/恶意的可执行文件,调试器是在上位机系统上运行自动化脚本指令;自动化脚本指令获取主机所有文件,处理来自非操作系统文件的可执行文件,通过自动化脚本指令跟踪可执行文件的动态运行输出结果。
作为本发明进一步改进,所述自动化脚本指令处理完所有可执行文件或达到最大执行指令限制时停止运行,并将运行跟踪输出结果保存成纯文本格式。
作为本发明进一步改进,所述序列数据集为序列数据集,序列数据集每一行包含一个装配指令,装配指令是由操作码和操作数组成的表达式;装配指令的操作码和操作数为可执行文件运行过程中在寄存器、内存或I/O端口生成的可执行文件的系统操作数据。
作为本发明进一步改进,所述对序列数据集进行数据预处理及拆分,得到基本块数据集,包括:
对序列数据集预处理及拆分,包含全角转化、半角转化、大小写转化、停用词过滤,基于正则的分词处理、数据筛选以及清洗后保存数据的操作对序列数据集进行数据预处理;
对预处理后的序列数据集进行拆分处理包括:将预处理后的序列数据集输入到python脚本中,从开始到端扫描运行并进行数据拆分处理,得到由一段直线代码组成的基本块数据,获得的基本块数据作为基本块数据集。
作为本发明进一步改进,所述预先训练的双向长短期记忆网络模型包含Glove词嵌入层、池化层、双向LSTM层、分类层以及退出层;
Glove词嵌入层将输入文本转换为词嵌入向量,池化层采用全局最大池化层将词嵌入向量转换为低维特征向量,双向LSTM层经过恶意文件分类计算得到输入文本的恶意概率,分类层通过softmax函数得到最终分类结果,退出层收到分类结果后进行对应操作并结束整个检测过程。
作为本发明进一步改进,所述预先训练的双向长短期记忆网络模型的训练方法包括:
获取并跟踪历史可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集样本;
对序列数据集样本进行数据预处理及拆分,得到基本块数据集样本;基本块数据集样本进行类别标签,得到具有类别标签的训练样本;
将具有类别标签的训练样本输入到双向长短期记忆网络模型中,训练输出所述可执行文件是否为恶意可执行文件的结果,最终训练后得到所述预先训练的双向长短期记忆网络模型。
本发明第二方面是提供一种DCS上位机恶意可执行文件检测系统,包括:
执行输出模块,用于执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
处理拆分模块,用于对序列数据集进行数据预处理及拆分,得到基本块数据集;
监测输出模块,用于将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测并输出所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
本发明第三方面是提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述DCS上位机恶意可执行文件检测方法。
本发明第四方面是提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述DCS上位机恶意可执行文件检测方法。
与现有技术相比,本发明具有如下有益效果:
本发明通过跟踪所述可执行文件的动态运行输出结果,预处理和拆分后得到基本块数据集,输入预先训练的模型中进行训练,可以高效、准确的检测恶意可执行文件方法,尤其是开发动态运行跟踪方法用于检测多态和变质恶意可执行文件的能力对于系统防护更为关键,利用长短期记忆网络动态分析恶意可执行文件的运行输出进行分类,从而达到保护上位机系统和核心数据安全性的目的。
附图说明
图1为本申请实施例的一种DCS上位机恶意可执行文件检测方法流程图;
图2为本申请实施例的DCS上位机恶意可执行文件检测方法具体流程图;
图3为本申请实施例提供的一种DCS上位机恶意可执行文件检测系统;
图4为本申请实施例提供的一种电子设备示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
术语解释:
双向长短期记忆网络(Bi-LSTM),由前向L STM与后向LSTM组合而成。长短期神经网络(long short term memory, LSTM)是循环神经网络(RNN) 的一种。
Softmax是一种数学函数,通常用于将一组任意实数转换为表示概率分布的实数。其本质上是一种归一化函数,可以将一组任意的实数值转化为在[0, 1]之间的概率值,因为softmax将它们转换为0到1之间的值,所以它们可以被解释为概率。
Glove,是全局向量的词嵌入:是一种用于将词语映射到连续向量空间的词嵌入方法。它旨在捕捉词语之间的语义关系和语法关系,以便在自然语言处理任务中能够更好地表示词语的语义信息。
如图1所示,本发明第一个目的是提供一种DCS上位机恶意可执行文件检测方法,包括以下步骤:
S1,执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
S2,对序列数据集进行数据预处理及拆分,得到基本块数据集;
S3,将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
本申请实施例的方法通过跟踪所述可执行文件的动态运行输出结果,预处理和拆分后得到基本块数据,输入预先训练的模型中进行训练,直接输出检测结果,该过程具有高效、准确的优点,利用长短期记忆网络动态分析恶意可执行文件的运行输出进行分类,减少对系统造成伤害。
作为可选实施例,步骤S1中的执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,包括:
在调试器中执行待检测DCS上位机的每个良性或恶意的可执行文件,调试器是在上位机系统上运行自动化脚本指令;自动化脚本指令获取主机所有文件,处理来自非操作系统文件的可执行文件,通过自动化脚本指令跟踪可执行文件的动态运行输出结果。
自动化脚本指令处理完所有可执行文件或达到最大执行指令限制时停止运行,并将运行跟踪输出结果进行保存,保存形式可以为纯文本格式。
其中,序列数据集每一行包含一个装配指令,装配指令是由操作码和操作数组成的表达式;操作码和操作数为可执行文件运行过程中在寄存器、内存或I/O端口生成的可执行文件的系统操作数据。
作为一些实施例,步骤S2中,所述对序列数据集进行数据预处理及拆分,得到基本块数据集,包括:
对序列数据集预处理及拆分,包含全角转化、半角转化、大小写转化、停用词过滤,基于正则的分词处理、数据筛选以及清洗后保存数据的操作对序列数据集进行数据预处理;
序列数据集拆分处理通过编写python脚本进行数据处理,将序列数据集输入到python脚本中,从开始到端扫描运行进行数据拆分处理,得到由一段直线代码组成的基本块数据,获得的基本块数据作为基本块数据集。
其中,进行数据预处理和拆分,能够使得数据作为模型的输入形式,便于模型进行快速识别和检测。
作为一些实施例,步骤S3中,预先训练的双向长短期记忆网络模型的训练方法包括:
获取并跟踪历史可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集样本;
对序列数据集样本进行数据预处理及拆分,得到基本块数据集样本;基本块数据集样本进行类别标签,得到具有类别标签的训练样本;
将具有类别标签的训练样本输入到双向长短期记忆网络模型中,训练输出所述可执行文件是否为恶意可执行文件的结果,最终训练后得到所述预先训练的双向长短期记忆网络模型。
作为可选实施例,训练样本尽快能的多,以增加训练后模型的准确性,模型训练后还需要验证结果的准确性,经过验证后作为最终的预先训练的双向长短期记忆网络模型使用。
以下结合具体实施例,对本发明进行详细说明:
结合图2进行说明,一种DCS上位机恶意可执行文件检测方法包括如下步骤:
S1,在调试器中执行每个良性/恶意可执行文件,并跟踪可执行文件的动态运行输出结果,并将动态运行输出结果作为序列数据集。
其中,本实施例中的调试器是一个可以在上位机系统上运行的自动化脚本指令,通过该自动化脚本指令跟踪可执行文件的动态运行输出结果;自动化脚本指令获取主机所有文件,并处理来自非操作系统文件的可执行文件。
该自动化脚本指令处理完所有可执行文件或达到最大执行指令限制时停止运行,并将运行跟踪输出结果保存成纯文本格式。
其中,序列数据集为序列数据集,每一行都包含一个装配指令,装配指令是由操作码和操作数组成的表达式;可选实施例中,装配指令的操作码和操作数为可执行文件运行过程中在寄存器、内存或I/O端口生成的可执行文件的系统操作数据。
S2,对序列数据集进行数据预处理及拆分,得到基本块数据集;
本申请实施例中,对序列数据集预处理及拆分包含全角转化、半角转化、大小写转化、停用词过滤,基于正则的分词处理,数据筛选以及清洗后保存数据等操作;
更具体的,序列数据集拆分处理通过编写python脚本进行数据处理,将序列数据集输入到python脚本中,该python脚本通过从开始到端扫描运行进行数据拆分处理过程,获得基本块数据作为基本块数据集;
基本块数据集为一个基本块数据,基本块数据由一段直线代码组成。基本数据块的直线代码仅包含可执行文件的执行入口、接口调用、退出接口外没有其它多余分支内容。
S3,将基本块数据集传递到双向长短期记忆网络模型来检测所述可执行文件是否为恶意可执行文件;
其中,双向长短期记忆网络包含Glove词嵌入层、池化层、双向LSTM层、分类层以及退出层;
恶意可执行文件是指可以获取上位机系统最高用户权限,以此获取用户重要信息、篡改上位机关键数据、破坏上位机系统可用性的可执行程序。
将基本块数据集作为输入传递到Glove词嵌入层,将Glove词嵌入层的输出向量作为输入传递到池化层;将所述池化层的输出向量作为输入传递到双向LSTM层,将所述双向LSTM层的输出传递到分类层进行恶意文件分类计算;将所述分类层的输出传递到退出层后激活退出函数并执行对应操作后结束整个检测过程。
本文检测恶意可执行文件模型核心参数设置如下:
上述方案中,Glove词嵌入层将输入文本转换为词嵌入向量,池化层采用全局最大池化层将词嵌入向量转换为低维特征向量,双向LSTM层经过一系列计算得到输入文本的恶意概率,分类层通过softmax函数得到最终分类结果,退出层收到分类结果后进行对应操作并结束整个检测过程;
上述方案中,最高用户权限拥有对上位机系统中所有进程与服务的执行权限、具有对上位机系统中所有文件的读写、删改权限。
本申请实施例在CPU为Phytium,FT-2000+/64,操作系统为ky10.aarch64,内存为64G的硬件环境中进行恶意可执行文件检测实验,采用准确率和全局召回率两个指标衡量恶意可执行文件检测的准确度。
通过对多次实验结果进行统计,得出该方法检测恶意可执行文件的准确率为95.86%,全局召回率为91.42%。
如图3所示,本发明还提供一种DCS上位机恶意可执行文件检测系统,包括:
执行输出模块,用于执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
处理拆分模块,用于对序列数据集进行数据预处理及拆分,得到基本块数据集;
监测输出模块,用于将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测并输出所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
如图4所示,本发明提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述DCS上位机恶意可执行文件检测方法。
所述DCS上位机恶意可执行文件检测方法包括以下步骤:
S1,执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
S2,对序列数据集进行数据预处理及拆分,得到基本块数据集;
S3,将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述DCS上位机恶意可执行文件检测方法。
所述DCS上位机恶意可执行文件检测方法包括以下步骤:
S1,执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
S2,对序列数据集进行数据预处理及拆分,得到基本块数据集;
S3,将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种DCS上位机恶意可执行文件检测方法,其特征在于,包括:
执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
对序列数据集进行数据预处理及拆分,得到基本块数据集;
将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
2.根据权利要求1所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,包括:
在调试器中执行待检测DCS上位机的每个可执行文件,调试器是在上位机系统上运行自动化脚本指令;自动化脚本指令获取主机所有文件,处理来自非操作系统文件的可执行文件,通过自动化脚本指令跟踪可执行文件的动态运行输出结果。
3.根据权利要求2所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述自动化脚本指令处理完所有可执行文件或达到最大执行指令限制时停止运行,并将运行跟踪输出结果保存成纯文本格式。
4.根据权利要求1所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述序列数据集每一行包含一个装配指令,装配指令是由操作码和操作数组成的表达式;操作码和操作数为可执行文件运行过程中在寄存器、内存或I/O端口生成的可执行文件的系统操作数据。
5.根据权利要求1所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述对序列数据集进行数据预处理及拆分,得到基本块数据集,包括:
对序列数据集预处理,包含全角转化、半角转化、大小写转化及停用词过滤,基于正则的分词处理、数据筛选以及清洗后保存数据;
对预处理后的序列数据集进行拆分处理包括:将预处理后的序列数据集输入到python脚本中,从开始到端扫描运行并进行数据拆分处理,得到由一段直线代码组成的基本块数据,获得的基本块数据作为基本块数据集。
6.根据权利要求1所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述预先训练的双向长短期记忆网络模型包含Glove词嵌入层、池化层、双向LSTM层、分类层以及退出层;
Glove词嵌入层将输入文本转换为词嵌入向量,池化层采用全局最大池化层将词嵌入向量转换为低维特征向量,双向LSTM层经过恶意文件分类计算得到输入文本的恶意概率,分类层通过softmax函数得到最终分类结果,退出层收到分类结果后进行对应操作并结束整个检测过程。
7.根据权利要求1所述的DCS上位机恶意可执行文件检测方法,其特征在于:所述预先训练的双向长短期记忆网络模型的训练方法包括:
获取并跟踪历史可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集样本;
对序列数据集样本进行数据预处理及拆分,得到基本块数据集样本;基本块数据集样本进行类别标签,得到具有类别标签的训练样本;
将具有类别标签的训练样本输入到双向长短期记忆网络模型中,训练输出所述可执行文件是否为恶意可执行文件的结果,最终训练后得到所述预先训练的双向长短期记忆网络模型。
8.一种DCS上位机恶意可执行文件检测系统,其特征在于,包括:
执行输出模块,用于执行待检测DCS上位机中每个可执行文件,跟踪所述可执行文件的动态运行输出结果,将动态运行输出结果作为序列数据集;
处理拆分模块,用于对序列数据集进行数据预处理及拆分,得到基本块数据集;
监测输出模块,用于将基本块数据集输入到预先训练的双向长短期记忆网络模型中,检测并输出所述可执行文件是否为恶意可执行文件;所述预先训练的双向长短期记忆网络模型是利用具有类别标签的训练样本进行训练得到的;其中,类别标签用于指明对应的训练样本为恶意或良性可执行文件。
9.一种电子设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-7任一项所述DCS上位机恶意可执行文件检测方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一项所述DCS上位机恶意可执行文件检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311390587.7A CN117113352B (zh) | 2023-10-25 | 2023-10-25 | Dcs上位机恶意可执行文件检测方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311390587.7A CN117113352B (zh) | 2023-10-25 | 2023-10-25 | Dcs上位机恶意可执行文件检测方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117113352A true CN117113352A (zh) | 2023-11-24 |
CN117113352B CN117113352B (zh) | 2024-02-06 |
Family
ID=88813305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311390587.7A Active CN117113352B (zh) | 2023-10-25 | 2023-10-25 | Dcs上位机恶意可执行文件检测方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117113352B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150110065A (ko) * | 2014-03-24 | 2015-10-02 | 한국전자통신연구원 | 실행파일 모니터링 기반 악성코드 탐지 방법 및 시스템 |
US20200089882A1 (en) * | 2018-09-18 | 2020-03-19 | International Business Machines Corporation | System and method for machine based detection of a malicious executable file |
CN113722713A (zh) * | 2021-09-10 | 2021-11-30 | 上海观安信息技术股份有限公司 | 一种恶意代码检测的方法、装置、电子设备及存储介质 |
CN114547614A (zh) * | 2022-02-25 | 2022-05-27 | 深圳市联软科技股份有限公司 | 一种恶意文件识别方法及系统 |
CN115098858A (zh) * | 2022-06-17 | 2022-09-23 | 山西大学 | 一种恶意软件检测方法及装置 |
CN115545091A (zh) * | 2022-08-24 | 2022-12-30 | 浙江大学 | 基于集成学习器的恶意程序api调用序列检测方法 |
WO2023056808A1 (zh) * | 2021-10-08 | 2023-04-13 | 中兴通讯股份有限公司 | 加密恶意流量检测方法、装置、存储介质及电子装置 |
-
2023
- 2023-10-25 CN CN202311390587.7A patent/CN117113352B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150110065A (ko) * | 2014-03-24 | 2015-10-02 | 한국전자통신연구원 | 실행파일 모니터링 기반 악성코드 탐지 방법 및 시스템 |
US20200089882A1 (en) * | 2018-09-18 | 2020-03-19 | International Business Machines Corporation | System and method for machine based detection of a malicious executable file |
CN113722713A (zh) * | 2021-09-10 | 2021-11-30 | 上海观安信息技术股份有限公司 | 一种恶意代码检测的方法、装置、电子设备及存储介质 |
WO2023056808A1 (zh) * | 2021-10-08 | 2023-04-13 | 中兴通讯股份有限公司 | 加密恶意流量检测方法、装置、存储介质及电子装置 |
CN114547614A (zh) * | 2022-02-25 | 2022-05-27 | 深圳市联软科技股份有限公司 | 一种恶意文件识别方法及系统 |
CN115098858A (zh) * | 2022-06-17 | 2022-09-23 | 山西大学 | 一种恶意软件检测方法及装置 |
CN115545091A (zh) * | 2022-08-24 | 2022-12-30 | 浙江大学 | 基于集成学习器的恶意程序api调用序列检测方法 |
Non-Patent Citations (4)
Title |
---|
彭弘: "基于动态API初始序列的恶意代码检测方法研究", 《万方数据库》, pages 2 - 4 * |
牟宸洲;薛质;施勇;: "基于BiLSTM和Attention的命令序列检测方法", 通信技术, no. 12 * |
王聪;邱卫东;唐鹏;连慧娟;: "基于CNN和LSTM混合的Android恶意应用检测", 通信技术, no. 09 * |
肖达;刘博寒;崔宝江;王晓晨;张索星;: "基于程序基因的恶意程序预测技术.", 网络与信息安全学报, no. 08 * |
Also Published As
Publication number | Publication date |
---|---|
CN117113352B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chua et al. | Neural nets can learn function type signatures from binaries | |
Patel et al. | Analyzing hardware based malware detectors | |
US11481492B2 (en) | Method and system for static behavior-predictive malware detection | |
Zhang et al. | Hybrid sequence‐based Android malware detection using natural language processing | |
US8307435B1 (en) | Software object corruption detection | |
CN109190372B (zh) | 一种基于字节码的JavaScript恶意代码检测方法 | |
Sabhadiya et al. | Android malware detection using deep learning | |
CN109905385B (zh) | 一种webshell检测方法、装置及系统 | |
CN111753290B (zh) | 软件类型的检测方法及相关设备 | |
Pandey et al. | Performance of malware detection tools: A comparison | |
Qiu et al. | Data-driven android malware intelligence: a survey | |
Yesir et al. | Malware detection and classification using fastText and BERT | |
Or-Meir et al. | Pay attention: Improving classification of PE malware using attention mechanisms based on system call analysis | |
US11080236B1 (en) | High throughput embedding generation system for executable code and applications | |
Khan et al. | A dynamic method of detecting malicious scripts using classifiers | |
CN117113352B (zh) | Dcs上位机恶意可执行文件检测方法、系统、设备及介质 | |
US20230205883A1 (en) | Integrated static and dynamic analysis for malware detection | |
CN113918936A (zh) | Sql注入攻击检测的方法以及装置 | |
US11977633B2 (en) | Augmented machine learning malware detection based on static and dynamic analysis | |
CN116361797A (zh) | 一种基于多源协同和行为分析的恶意代码检测方法及系统 | |
Grover et al. | Malware threat analysis of IoT devices using deep learning neural network methodologies | |
CN115545091A (zh) | 基于集成学习器的恶意程序api调用序列检测方法 | |
Yi et al. | Mimicry resilient program behavior modeling with LSTM based branch models | |
Jalilian et al. | Static signature-based malware detection using opcode and binary information | |
Liu et al. | Automated binary analysis: A survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |