CN115221522B - Elf恶意文件快速静态检测方法、装置、电子设备 - Google Patents

Elf恶意文件快速静态检测方法、装置、电子设备 Download PDF

Info

Publication number
CN115221522B
CN115221522B CN202211140435.7A CN202211140435A CN115221522B CN 115221522 B CN115221522 B CN 115221522B CN 202211140435 A CN202211140435 A CN 202211140435A CN 115221522 B CN115221522 B CN 115221522B
Authority
CN
China
Prior art keywords
training set
file
byte code
size
elf
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.)
Active
Application number
CN202211140435.7A
Other languages
English (en)
Other versions
CN115221522A (zh
Inventor
周公延
陈杰
赵林林
童兆丰
薛锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ThreatBook Technology Co Ltd
Original Assignee
Beijing ThreatBook Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing ThreatBook Technology Co Ltd filed Critical Beijing ThreatBook Technology Co Ltd
Priority to CN202211140435.7A priority Critical patent/CN115221522B/zh
Publication of CN115221522A publication Critical patent/CN115221522A/zh
Application granted granted Critical
Publication of CN115221522B publication Critical patent/CN115221522B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例提供一种ELF恶意文件快速静态检测方法、装置、电子设备,其中,该方法包括:获取ELF文件;将所述ELF文件划分为训练集、测试集、验证集;提取所述训练集中的十进制序列;对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列;对所述训练集中的子序列进行向量化,得到所述训练集中的嵌入向量;将所述训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;获取所述测试集中的嵌入向量;将所述测试集中的嵌入向量输入所述检测模型进行检测,得到检测结果。实施本申请实施例,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。

Description

ELF恶意文件快速静态检测方法、装置、电子设备
技术领域
本申请涉及网络安全技术领域,具体而言,涉及一种ELF恶意文件快速静态检测方法、装置、电子设备及计算机可读存储介质。
背景技术
恶意软件是最容易被利用的一种恶意攻击方法,随着恶意软件的数量持续上升。产生了大量防范恶意软件的方法或产品。例如,可执行与可链接格式(Executable andLinkable Format,ELF)恶意文件静态检测方法。
但是,现有技术的ELF恶意文件快速静态检测方法大部分是基于签名的检测方法或者是基于人工提取的方法,基于签名的检测方法难以适应高速增长恶意软件攻击,并且,此类方法需要安全分析人员不断研究恶意样本,手动写大量的签名规则,在特定场景下可以有效的识别恶意软件,但难以检测未知威胁。另一类基于人工提取的方法,使用了机器学习进行检测,可以检测未知威胁,但是需要专家知识定义检测特征,并且需要不断的维护特征,需要大量人工参与。
因此,针对ELF恶意软件静态检测过度依赖签名和人工提取的特征,定义特征需要依赖很多的专家知识,难以维护;严重依赖文件结构解析,耗时长;且针对恶意修改的文件基本难以解析或者会解析出错,出错率高,严重影响检测性能。
发明内容
本申请实施例的目的在于提供一种ELF恶意文件快速静态检测方法、装置、电子设备及计算机可读存储介质,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。
第一方面,本申请实施例提供了一种ELF恶意文件快速静态检测方法,所述方法包括:
获取ELF文件;
将所述ELF文件划分为训练集、测试集、验证集;
提取所述训练集中的十进制序列;
对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列;
对所述训练集中的子序列进行向量化,得到所述训练集中的嵌入向量;
将所述训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
获取所述测试集中的嵌入向量;
将所述测试集中的嵌入向量输入所述检测模型进行检测,得到检测结果。
在上述实现过程中,通过提取ELF数据集的十进制序列,并在十进制序列进行切片处理、向量化后进行训练,得到针对ELF恶意文件的检测模型,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。
进一步地,所述提取所述训练集中的十进制序列的步骤,包括:
将所述训练集转换为二进制形式,得到二进制转换后的训练集;
提取所述二进制转换后的训练集中的字节码序列;
将所述字节码序列转换为uint8型数值,得到所述训练集中的十进制序列。
在上述实现过程中,只提取二进制转换后的ELF数据集中的字节码序列,不需要提取所有字节码,使得到的十进制序列包含ELF数据集的重要特征,同时不会造成冗余,可以提高检测效率。
进一步地,所述对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列的步骤,包括:
对所述二进制转换后的训练集进行统计分析,得到文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置;
根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的子序列。
在上述实现过程中,根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,使得子序列包含文件头字节码大小、文件程序头表字节码大小和文件节头表字节码大小,提高子序列的精确度。
进一步地,所述根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的子序列的步骤,包括:
根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的初始子序列;
对所述训练集中的初始子序列进行填充处理,得到所述训练集中的子序列。
在上述实现过程中,对训练集中的初始子序列进行填充,得到训练集中的子序列,使得训练集中的子序列的长度更加便于检测,有助于提高检测精度。
进一步地,所述训练集中的子序列表示为:
Figure M_220919175411363_363183001
其中,
Figure M_220919175411394_394431001
为所述训练集中的子序列,
Figure M_220919175411425_425694002
为所述训练集中的初始子序列,p为填充值,
Figure M_220919175411456_456913003
为所述训练集中的初始子序列的实际长度,
Figure M_220919175411472_472537004
为所述训练集中的子序列的理论长度。
在上述实现过程中,利用训练集中的初始子序列、填充值表示训练集中的子序列,可以使得训练集中的子序列根据训练集中的初始子序列进行调整,确保训练集中的子序列的精度。
进一步地,所述训练集中的初始子序列表示为:
Figure M_220919175411506_506721001
其中,
Figure M_220919175411553_553600001
为所述训练集中的初始子序列,S为所述训练集中的十进制序列,
Figure M_220919175411584_584844002
为所述文件头字节码大小,
Figure M_220919175411616_616109003
为所述文件程序头表字节码大小,
Figure M_220919175411631_631745004
为所述文件程序头表字节码偏置,
Figure M_220919175411662_662986005
为所述文件节头表字节码大小。
进一步地,所述获取所述测试集中的嵌入向量的步骤,包括:
提取所述测试集中的十进制序列;
对所述测试集中的十进制序列进行切片处理,得到所述测试集中的子序列;
对所述测试集中的子序列进行向量化,得到所述测试集中的嵌入向量。
在上述实现过程中,对提取测试集中的嵌入向量进行测试,可以提高测试精度。
第二方面,本申请实施例还提供了一种ELF恶意文件快速静态检测装置,所述装置包括:
获取模块,用于获取ELF文件;还用于获取测试集中的嵌入向量;
划分模块,用于将所述ELF文件划分为训练集、测试集、验证集;
提取模块,用于提取所述训练集中的十进制序列;
切片模块,用于对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列;
向量化模块,用于对所述训练集中的子序列进行向量化,得到所述训练集中的嵌入向量;
训练模块,用于将所述训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
检测模块,用于将所述测试集中的嵌入向量输入所述检测模型进行检测,得到检测结果。
在上述实现过程中,通过提取ELF数据集的十进制序列,并在十进制序列进行切片处理、向量化后进行训练,得到针对ELF恶意文件的检测模型,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。
第三方面,本申请实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
第四方面,本申请实施例提供的一种计算机可读存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。
第五方面,本申请实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的ELF恶意文件快速静态检测方法的流程示意图;
图2为本申请实施例提供的ELF恶意文件快速静态检测装置的结构组成示意图;
图3为本申请实施例提供的电子设备的结构组成示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
下面结合附图和实施例,对本申请的具体实施方式作进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
实施例一
图1是本申请实施例提供的ELF恶意文件快速静态检测方法的流程示意图,如图1所示,该方法包括:
S1,获取ELF文件;
S2,将ELF文件划分为训练集、测试集、验证集;
S3,提取训练集中的十进制序列;
S4,对训练集中的十进制序列进行切片处理,得到训练集中的子序列;
S5,对训练集中的子序列进行向量化,得到训练集中的嵌入向量;
S6,将训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
S7,获取测试集中的嵌入向量;
S8,将测试集中的嵌入向量输入检测模型进行检测,得到检测结果。
在上述实现过程中,通过提取ELF数据集的十进制序列,并在十进制序列进行切片处理、向量化后进行训练,得到针对ELF恶意文件的检测模型,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。
在S1中,可以从第三方云沙箱、终端安全产品以及开源数据集搜集、导入ELF数据集,使用多种方式对ELF数据集数据进行标注,包括但不限于hash签名、规则匹配、威胁情报,最终将ELF数据集分类为ELF正常文件和ELF恶意文件,获取ELF恶意文件中的ELF数据集,将ELF数据集划分为训练集、验证集和测试集。
进一步地,S3包括:
将训练集转换为二进制形式,得到二进制转换后的训练集;
提取二进制转换后的训练集中的字节码序列;
将字节码序列转换为uint8型数值,得到训练集中的十进制序列。
在上述实现过程中,只提取二进制转换后的ELF数据集中的字节码序列,不需要提取所有字节码,使得到的十进制序列包含ELF数据集的重要特征,同时不会造成冗余,可以提高检测效率。
将训练集以二进制形式打开,获取其字节码序列,将字节码序列转化为uint8型数值,得到十进制序列,其中每个字节对应一个uint8型数值,其取值范围是[0,255]。
进一步地,S4包括:
对二进制转换后的训练集进行统计分析,得到文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置;
根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,得到训练集中的子序列。
在上述实现过程中,根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,使得子序列包含文件头字节码大小、文件程序头表字节码大小和文件节头表字节码大小,提高子序列的精确度。
统计分析二进制转换后的训练集中文件头字节码大小,剔除异常值后,取众数作为实际大小,表示为
Figure M_220919175411696_696147001
统计分析二进制转换后的训练集中文件程序头表字节码大小、文件程序头表字节码偏置,取众数作为实际大小,分别表示为
Figure M_220919175411727_727924001
Figure M_220919175411743_743535002
统计分析二进制转换后的训练集中文件节头表字节码大小和文件节头表字节码偏置,取众数作为实际大小,分别表示为
Figure M_220919175411774_774798001
Figure M_220919175411806_806039002
。根据ELF文件格式规定,ELF文件的节头表字节码一般位于文件的尾部。
众数为出现频率最多的数,本实施例中,
Figure M_220919175411837_837316001
为64,
Figure M_220919175411868_868548002
为56,
Figure M_220919175411886_886091003
为64,
Figure M_220919175411917_917884004
为64。
进一步地,根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,得到训练集中的子序列的步骤,包括:
根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,得到训练集中的初始子序列;
对训练集中的初始子序列进行填充处理,得到训练集中的子序列。
在上述实现过程中,对训练集中的初始子序列进行填充,得到训练集中的子序列,使得训练集中的子序列的长度更加便于检测,有助于提高检测精度。
进一步地,训练集中的子序列表示为:
Figure M_220919175411949_949125001
其中,
Figure M_220919175411980_980351001
为训练集中的子序列,
Figure M_220919175412011_011635002
为训练集中的初始子序列,p为填充值,
Figure M_220919175412042_042867003
为训练集中的初始子序列的实际长度,
Figure M_220919175412058_058479004
为训练集中的子序列的理论长度。
在上述实现过程中,利用训练集中的初始子序列、填充值表示训练集中的子序列,可以使得训练集中的子序列根据训练集中的初始子序列进行调整,确保训练集中的子序列的精度。
如果
Figure M_220919175412091_091661001
,则进行填充处理,对长度不足的部分使用自定义的填充值(填充值为整数值)p填充,其中
Figure M_220919175412123_123439002
。本申请实施例中,p为257。
进一步地,训练集中的初始子序列表示为:
Figure M_220919175412185_185917001
其中,
Figure M_220919175412232_232820001
为训练集中的初始子序列,S为训练集中的十进制序列,
Figure M_220919175412264_264049002
为文件头字节码大小,
Figure M_220919175412280_280621003
为文件程序头表字节码大小,
Figure M_220919175412312_312405004
为文件程序头表字节码偏置,
Figure M_220919175412328_328016005
为文件节头表字节码大小。
进一步地,S7包括:
提取测试集中的十进制序列;
对测试集中的十进制序列进行切片处理,得到测试集中的子序列;
对测试集中的子序列进行向量化,得到测试集中的嵌入向量。
在上述实现过程中,对提取测试集中的嵌入向量进行测试,可以提高测试精度
在S4中,使用嵌入式方法将序列映射为嵌入向量,其中嵌入向量可以通过预训练模型、神经网络嵌入层联合训练等方式得到。
定义预训练模型的损失函数为最小化交叉熵损失函数:
Figure M_220919175412359_359270001
实施例二
为了执行上述实施例一对应的方法,以实现相应的功能和技术效果,下面提供一种ELF恶意文件快速静态检测装置,如图2所示,该装置包括:
获取模块1,用于获取ELF文件;还用于获取测试集中的嵌入向量;
划分模块2,用于将ELF文件划分为训练集、测试集、验证集;
提取模块3,用于提取训练集中的十进制序列;
切片模块4,用于对训练集中的十进制序列进行切片处理,得到训练集中的子序列;
向量化模块5,用于对训练集中的子序列进行向量化,得到训练集中的嵌入向量;
训练模块6,用于将训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
检测模块7,用于将测试集中的嵌入向量输入检测模型进行检测,得到检测结果。
在上述实现过程中,通过提取ELF数据集的十进制序列,并在十进制序列进行切片处理、向量化后进行训练,得到针对ELF恶意文件的检测模型,可以提高对ELF恶意文件的检测效率和检测性能,减少检测过程中的出错率,缩短检测时间,减少人力成本和物力成本。
进一步地,提取模块2还用于:
将训练集转换为二进制形式,得到二进制转换后的训练集;
提取二进制转换后的训练集中的字节码序列;
将字节码序列转换为uint8型数值,得到训练集中的十进制序列。
进一步地,切片模块3还用于:
对二进制转换后的训练集进行统计分析,得到文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置;
根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,得到训练集中的子序列。
进一步地,切片模块3还用于:
根据文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置对十进制序列进行切片处理,得到训练集中的初始子序列;
对训练集中的初始子序列进行填充处理,得到训练集中的子序列。
其中,训练集中的子序列表示为:
Figure M_220919175412516_516983001
其中,
Figure M_220919175412548_548242001
为训练集中的子序列,
Figure M_220919175412563_563872002
为训练集中的初始子序列,p为填充值,
Figure M_220919175412595_595108003
为训练集中的初始子序列的实际长度,
Figure M_220919175412610_610744004
为训练集中的子序列的理论长度。
训练集中的初始子序列表示为:
Figure M_220919175412641_641986001
其中,
Figure M_220919175412690_690775001
为训练集中的初始子序列,S为训练集中的十进制序列,
Figure M_220919175412706_706931002
为文件头字节码大小,
Figure M_220919175412738_738172003
为文件程序头表字节码大小,
Figure M_220919175412769_769450004
为文件程序头表字节码偏置,
Figure M_220919175412800_800678005
为文件节头表字节码大小。
进一步地,获取模块1还用于:
提取测试集中的十进制序列;
对测试集中的十进制序列进行切片处理,得到测试集中的子序列;
对测试集中的子序列进行向量化,得到测试集中的嵌入向量。
上述的ELF恶意文件快速静态检测装置可实施上述实施例一的方法。上述实施例一中的可选项也适用于本实施例,这里不再详述。
本申请实施例的其余内容可参照上述实施例一的内容,在本实施例中,不再进行赘述。
实施例三
本申请实施例提供一种电子设备,包括存储器及处理器,该存储器用于存储计算机程序,该处理器运行计算机程序以使电子设备执行实施例一的ELF恶意文件快速静态检测方法。
可选地,上述电子设备可以是服务器。
请参见图3,图3为本申请实施例提供的电子设备的结构组成示意图。该电子设备可以包括处理器31、通信接口32、存储器33和至少一个通信总线34。其中,通信总线34用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口32用于与其他节点设备进行信令或数据的通信。处理器31可以是一种集成电路芯片,具有信号的处理能力。
上述的处理器31可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器31也可以是任何常规的处理器等。
存储器33可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。存储器33中存储有计算机可读取指令,当计算机可读取指令由所述处理器31执行时,设备可以执行上述图1方法实施例涉及的各个步骤。
可选地,电子设备还可以包括存储控制器、输入输出单元。存储器33、存储控制器、处理器31、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线34实现电性连接。处理器31用于执行存储器33中存储的可执行模块,例如设备包括的软件功能模块或计算机程序。
输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。输入输出单元可以是,但不限于,鼠标和键盘等。
可以理解,图3所示的结构仅为示意,电子设备还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。
另外,本申请实施例还提供一种计算机可读存储介质,其存储有计算机程序,该计算机程序被处理器执行时实现实施例一的ELF恶意文件快速静态检测方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (8)

1.一种ELF恶意文件快速静态检测方法,其特征在于,所述方法包括:
获取ELF文件;
将所述ELF文件划分为训练集、测试集、验证集;
提取所述训练集中的十进制序列;
对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列;
对所述训练集中的子序列进行向量化,得到所述训练集中的嵌入向量;
将所述训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
获取所述测试集中的嵌入向量;
将所述测试集中的嵌入向量输入所述检测模型进行检测,得到检测结果;
所述提取所述训练集中的十进制序列的步骤,包括:
将所述训练集转换为二进制形式,得到二进制转换后的训练集;
提取所述二进制转换后的训练集中的字节码序列;
将所述字节码序列转换为uint8型数值,得到所述训练集中的十进制序列;
所述对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列的步骤,包括:
对所述二进制转换后的训练集进行统计分析,得到文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置;
根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的子序列。
2.根据权利要求1所述的ELF恶意文件快速静态检测方法,其特征在于,所述根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的子序列的步骤,包括:
根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的初始子序列;
对所述训练集中的初始子序列进行填充处理,得到所述训练集中的子序列。
3.根据权利要求2所述的ELF恶意文件快速静态检测方法,其特征在于,所述训练集中的子序列表示为:
Figure M_221108164204174_174877001
其中,
Figure M_221108164204207_207565001
为所述训练集中的子序列,
Figure M_221108164204239_239359002
为所述训练集中的初始子序列,p为填充值,
Figure M_221108164204254_254958003
为所述训练集中的初始子序列的实际长度,
Figure M_221108164204286_286280004
为所述训练集中的子序列的理论长度。
4.根据权利要求3所述的ELF恶意文件快速静态检测方法,其特征在于,所述训练集中的初始子序列表示为:
Figure M_221108164204317_317466001
其中,
Figure M_221108164204364_364328001
为所述训练集中的初始子序列,S为所述训练集中的十进制序列,
Figure M_221108164204395_395588002
为所述文件头字节码大小,
Figure M_221108164204416_416097003
为所述文件程序头表字节码大小,
Figure M_221108164204447_447837004
为所述文件程序头表字节码偏置,
Figure M_221108164204479_479079005
为所述文件节头表字节码大小。
5.根据权利要求1所述的ELF恶意文件快速静态检测方法,其特征在于,所述获取所述测试集中的嵌入向量的步骤,包括:
提取所述测试集中的十进制序列;
对所述测试集中的十进制序列进行切片处理,得到所述测试集中的子序列;
对所述测试集中的子序列进行向量化,得到所述测试集中的嵌入向量。
6.一种ELF恶意文件快速静态检测装置,其特征在于,所述装置包括:
获取模块,用于获取ELF文件;还用于获取测试集中的嵌入向量;
划分模块,用于将所述ELF文件划分为训练集、测试集、验证集;
提取模块,用于提取所述训练集中的十进制序列;
切片模块,用于对所述训练集中的十进制序列进行切片处理,得到所述训练集中的子序列;
向量化模块,用于对所述训练集中的子序列进行向量化,得到所述训练集中的嵌入向量;
训练模块,用于将所述训练集的嵌入向量输入预先构建的模型进行训练,得到检测模型;
检测模块,用于将所述测试集中的嵌入向量输入所述检测模型进行检测,得到检测结果;
进一步地,提取模块还用于:
将所述训练集转换为二进制形式,得到二进制转换后的训练集;
提取所述二进制转换后的训练集中的字节码序列;
将所述字节码序列转换为uint8型数值,得到所述训练集中的十进制序列;
进一步地,切片模块还用于:
对所述二进制转换后的训练集进行统计分析,得到文件头字节码大小、文件程序头表字节码大小、文件程序头表字节码偏置、文件节头表字节码大小和文件节头表字节码偏置;
根据所述文件头字节码大小、所述文件程序头表字节码大小、所述文件程序头表字节码偏置、所述文件节头表字节码大小和所述文件节头表字节码偏置对所述十进制序列进行切片处理,得到所述训练集中的子序列。
7.一种电子设备,其特征在于,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据权利要求1至5中任一项所述的ELF恶意文件快速静态检测方法。
8.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的ELF恶意文件快速静态检测方法。
CN202211140435.7A 2022-09-20 2022-09-20 Elf恶意文件快速静态检测方法、装置、电子设备 Active CN115221522B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211140435.7A CN115221522B (zh) 2022-09-20 2022-09-20 Elf恶意文件快速静态检测方法、装置、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211140435.7A CN115221522B (zh) 2022-09-20 2022-09-20 Elf恶意文件快速静态检测方法、装置、电子设备

Publications (2)

Publication Number Publication Date
CN115221522A CN115221522A (zh) 2022-10-21
CN115221522B true CN115221522B (zh) 2022-12-16

Family

ID=83616928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211140435.7A Active CN115221522B (zh) 2022-09-20 2022-09-20 Elf恶意文件快速静态检测方法、装置、电子设备

Country Status (1)

Country Link
CN (1) CN115221522B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110516803A (zh) * 2018-05-21 2019-11-29 畅想科技有限公司 将传统计算机视觉算法实现为神经网络
CN111382439A (zh) * 2020-03-28 2020-07-07 玉溪师范学院 基于多模态深度学习的恶意软件检测方法
CN114491528A (zh) * 2021-12-20 2022-05-13 奇安信科技集团股份有限公司 恶意软件的检测方法、装置和设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108920954B (zh) * 2018-06-28 2020-08-04 中国科学院软件研究所 一种恶意代码自动化检测平台及方法
CN109299609A (zh) * 2018-08-08 2019-02-01 北京奇虎科技有限公司 一种elf文件检测方法及装置
EP4012566A1 (en) * 2020-12-11 2022-06-15 Commsolid GmbH Method for an improved firmware deployment and its usage in embedded logic
CN114676431A (zh) * 2022-03-23 2022-06-28 北京理工大学 一种基于api增强顺序的安卓恶意代码检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110516803A (zh) * 2018-05-21 2019-11-29 畅想科技有限公司 将传统计算机视觉算法实现为神经网络
CN111382439A (zh) * 2020-03-28 2020-07-07 玉溪师范学院 基于多模态深度学习的恶意软件检测方法
CN114491528A (zh) * 2021-12-20 2022-05-13 奇安信科技集团股份有限公司 恶意软件的检测方法、装置和设备

Also Published As

Publication number Publication date
CN115221522A (zh) 2022-10-21

Similar Documents

Publication Publication Date Title
CN109359439B (zh) 软件检测方法、装置、设备及存储介质
Baldwin et al. Leveraging support vector machine for opcode density based detection of crypto-ransomware
Hassen et al. Scalable function call graph-based malware classification
Hashemi et al. Graph embedding as a new approach for unknown malware detection
CN109784056B (zh) 一种基于深度学习的恶意软件检测方法
CN109063055B (zh) 同源二进制文件检索方法和装置
US11048798B2 (en) Method for detecting libraries in program binaries
CN109582833B (zh) 异常文本检测方法及装置
KR101858620B1 (ko) 기계 학습을 이용한 자바스크립트 분석 장치 및 방법
CN112511546A (zh) 基于日志分析的漏洞扫描方法、装置、设备和存储介质
US11250129B2 (en) Method and system for determining affiliation of software to software families
Sivakumar et al. Malware Detection Using The Machine Learning Based Modified Partial Swarm Optimization Approach
Jia et al. A neural network-based approach for cryptographic function detection in malware
CN113688240A (zh) 威胁要素提取方法、装置、设备及存储介质
Okane et al. Malware detection: program run length against detection rate
Ugarte-Pedrero et al. On the adoption of anomaly detection for packed executable filtering
Rodriguez-Bazan et al. Android Ransomware Analysis Using Convolutional Neural Network and Fuzzy Hashing Features
Chau et al. An entropy-based solution for identifying android packers
Uhlig et al. Combining AI and AM–Improving approximate matching through transformer networks
KR20180019429A (ko) 소프트웨어 클러스터링 방법 및 장치
CN115221522B (zh) Elf恶意文件快速静态检测方法、装置、电子设备
CN112257757A (zh) 一种基于深度学习的恶意样本检测方法及系统
CN111797395A (zh) 恶意代码可视化及变种检测方法、装置、设备及存储介质
Vahedi et al. Cloud based malware detection through behavioral entropy
CN116192462A (zh) 一种基于pe文件格式的恶意软件分析方法及装置

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