CN115017505A - 一种pe病毒检测方法、装置、电子设备及存储介质 - Google Patents

一种pe病毒检测方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115017505A
CN115017505A CN202210609468.5A CN202210609468A CN115017505A CN 115017505 A CN115017505 A CN 115017505A CN 202210609468 A CN202210609468 A CN 202210609468A CN 115017505 A CN115017505 A CN 115017505A
Authority
CN
China
Prior art keywords
file
action
virus
virus detection
detection method
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.)
Pending
Application number
CN202210609468.5A
Other languages
English (en)
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202210609468.5A priority Critical patent/CN115017505A/zh
Publication of CN115017505A publication Critical patent/CN115017505A/zh
Pending legal-status Critical Current

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/561Virus type analysis
    • 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/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

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)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种PE病毒检测方法,包括:确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;根据所述特征信息判断所述PE文件是否为病毒文件。本申请能够降低PE病毒检测的资源消耗。本申请还公开了一种PE病毒检测装置、一种存储介质及一种电子设备,具有以上有益效果。

Description

一种PE病毒检测方法、装置、电子设备及存储介质
技术领域
本申请涉及病毒检测技术领域,特别涉及一种PE病毒检测方法、装置、电子设备及存储介质。
背景技术
PE(Portable Executable)格式,是微软Win32环境可移植可执行文件(如exe、dll、vxd、sys和vdm等)的标准文件格式。相关技术中,对PE病毒进行检测的主要方式为:为程序模拟完整的运行环境(如沙箱),根据程序的行为来判定是否为病毒。但是,上述检测PE病毒的方式整体性能较低,且占用资源较多。
因此,如何降低PE病毒检测的资源消耗是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种PE病毒检测方法、装置、电子设备及存储介质,能够降低PE病毒检测的资源消耗。
为解决上述技术问题,本申请提供一种PE病毒检测方法,包括:
确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;
通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
根据所述特征信息判断所述PE文件是否为病毒文件。
可选的,模拟的全部所述运行时库或模拟的部分所述运行时库为目标类运行时库;所述目标类运行时库被调用时不执行本质功能,所述目标类运行时库还用于返回伪造的运行结果。
可选的,通过模拟所述目标资源虚拟执行所述PE文件,包括:
加载所述PE文件,并读取所述PE文件中的指令;
通过模拟所述运行时库构建虚拟系统环境,通过模拟所述CPU在所述虚拟系统环境中虚拟执行所述PE文件中的指令,并将所述PE文件在虚拟执行过程中生成的进程内存数据存储至模拟的所述内存管理模块。
可选的,记录所述PE文件在虚拟执行过程中产生的特征信息,包括:
检测所述PE文件在虚拟执行过程中跳转动作和解密动作;
根据所述跳转动作和所述解密动作记录所述特征信息;其中,所述特征信息包括所述跳转动作对应的内存地址、跳转动作执行次数、所述解密动作对应的内存地址和解密动作执行次数。
可选的,根据所述特征信息判断所述PE文件是否为病毒文件,包括:
判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则;
若是,则按照所述跳转动作对应的内存地址从所述模拟内存管理模块读取第一待检数据,按照所述解密动作对应的内存地址从所述模拟内存管理模块读取第二待检数据;
根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件。
可选的,判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则,包括:
判断所述跳转动作执行次数是否大于第一预设值,得到第一判断结果;
判断所述解密动作执行次数是否大于第二预设值,得到第二判断结果;
若所述第一判断结果和所述第二判断结果均为是,则判定所述跳转动作执行次数和所述解密动作执行次数符合所述预设规则。
可选的,根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件,包括:
对所述第一待检数据和所述第二待检数据进行病毒特征匹配操作;
若匹配成功,则判定所述PE文件为所述病毒文件;
若匹配失败,则判定所述PE文件为正常文件。
本申请还提供了一种PE病毒检测装置,包括:
资源模拟模块,用于确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;
特征记录模块,用于通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
检测模块,用于根据所述特征信息判断所述PE文件是否为病毒文件。
本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述PE病毒检测方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述PE病毒检测方法执行的步骤。
本申请提供了一种PE病毒检测方法,包括:确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;根据所述特征信息判断所述PE文件是否为病毒文件。
本申请根据PE文件运行时所需的目标资源对CPU、内存管理模块和运行时库进行模拟,利用上述目标资源虚拟执行PE文件,进而根据虚拟执行过程中的特征信息判断PE文件是否为病毒文件。上述检测PE病毒的过程无需模拟整套的硬件资源和软件资源,而是仅对运行PE文件所需的资源进行模拟,能够降低PE病毒检测的资源消耗。本申请同时还提供了一种PE病毒检测装置、一种存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种PE病毒检测方法的流程图;
图2为本申请实施例所提供的一种PE病毒检测系统的架构示意图;
图3为本申请实施例所提供的一种病毒特征扫描流程图;
图4为本申请实施例所提供的一种PE病毒检测装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种PE病毒检测方法的流程图。
具体步骤可以包括:
S101:确定PE文件运行时所需的目标资源;
其中,本实施例可以应用于病毒检测装置,以便对PE文件是否为病毒文件进行检测。在确定需要检测的PE文件之后,可以确定PE文件运行时所需要的资源,并对上述资源进行模拟得到目标资源。上述目标资源包括CPU、内存管理模块和运行时库。不同的PE文件在运行时需要使用的运行时库,本实施例可以根据PE文件的类型确定对应的模拟运行时库。
S102:通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
其中,上述模拟的CPU用于虚拟执行PE文件中的指令,模拟的内存管理模块用于存储PE文件被执行时产生的数据,模拟的运行时库用于提供系统环境(如系统接口和必须的动态链接库dll)。本实施例可以在PE文件在虚拟执行过程中记录对应的特征信息。上述特征信息可以为与病毒行为相关的信息。本步骤中模拟的全部运行时库或模拟的部述运行时库为目标类运行时库;所述目标类运行时库被调用时不执行本质功能,所述目标类运行时库还用于返回伪造的运行结果。本质功能指正常调用运行时库时,运行时库所能够实现的功能。例如,在虚拟执行PE文件的过程中可以不做实际的通信动作,只模拟接口返回伪造的运行结果。上述虚拟执行PE文件时不用模拟的资源包括硬盘、网卡等硬件资源和完整的操作系统等程序运行无关的部分。
为了降低PE病毒检测的资源消耗,上述目标资源可以仅包括CPU、内存管理模块和运行时库,因此本步骤可以仅仅模拟CPU、内存管理模块和运行时库。
S103:根据所述特征信息判断所述PE文件是否为病毒文件。
上述特征信息为PE文件运行过程中产生的信息,能够提高对代码加密或代码加壳的PE病毒的检测准确率。
本实施例根据PE文件运行时所需的目标资源对CPU、内存管理模块和运行时库进行模拟,利用上述目标资源虚拟执行PE文件,进而根据虚拟执行过程中的特征信息判断PE文件是否为病毒文件。
本实施例所模拟的运行环境相比虚拟机来说,占用更少系统资源,虚拟机会模拟出整套硬件以及软件资源,但本实施例仅仅只需模拟PE软件的运行时所需环境,包括CPU模拟、内存模拟以及运行时库模拟(比如文件操作类模拟、模块加载类模拟),对于硬盘、网卡以及注册表等和PE软件运行无关的硬件资源无需模拟。上述检测PE病毒的过程无需模拟整套的硬件资源和软件资源,而是仅对运行PE文件所需的资源进行模拟,能够降低PE病毒检测的资源消耗。
作为对于图1对应实施例的进一步介绍,可以通过以下方式虚拟执行所述PE文件:加载所述PE文件,并读取所述PE文件中的指令;通过模拟所述运行时库构建虚拟系统环境,通过模拟所述CPU在所述虚拟系统环境中虚拟执行所述PE文件中的指令,并将所述PE文件在虚拟执行过程中生成的进程内存数据存储至模拟的所述内存管理模块。
PE文件中可以存在多个指令,本实施例可以按照预设顺序(如指令再PE文件中的排列顺序)从所述PE文件中确定的当前指令;通过模拟所述CPU在所述虚拟系统环境中虚拟执行当前指令;在当前指令执行完毕后,判断所述PE文件中的指令是否均执行完毕;若否,则进入按照预设顺序从所述PE文件中确定的当前指令的步骤。通过上述方式可以虚拟执行PE文件中的所有指令,提高PE病毒检测的准确度。
作为对于图1对应实施例的进一步介绍,可以通过以下方式判断PE文件是否为病毒文件:
检测所述PE文件在虚拟执行过程中跳转动作和解密动作;根据所述跳转动作和所述解密动作记录所述特征信息;其中,所述特征信息包括所述跳转动作对应的内存地址、跳转动作执行次数、所述解密动作对应的内存地址和解密动作执行次数。上述跳转动作即地址跳转的动作,解密动作即数据解密的动作。
判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则;若是,则按照所述跳转动作对应的内存地址从所述模拟内存管理模块读取第一待检数据,按照所述解密动作对应的内存地址从所述模拟内存管理模块读取第二待检数据;
对所述第一待检数据和所述第二待检数据进行病毒特征匹配操作;若匹配成功,则判定所述PE文件为所述病毒文件;若匹配失败,则判定所述PE文件为正常文件。
上述实施例从业内现有病毒检测的缺点出发,提出新的解决方案。该方案依据虚拟执行中发生的跳转动作和解密动作为参照位置,进行内存地址的记录。在检测过程中根据跳转动作和解密动作取出对应内存数据作为待检数据进行检测。上述过程能高效地检出代码加密和静态文件加壳的PE病毒。
作为一种可行的实施方式,可以通过以下方式判断是否符合预设规则,包括:判断所述跳转动作执行次数是否大于第一预设值,得到第一判断结果;判断所述解密动作执行次数是否大于第二预设值,得到第二判断结果;若所述第一判断结果和所述第二判断结果均为是,则判定所述跳转动作执行次数和所述解密动作执行次数符合所述预设规则。上述第一预设值和第二预设值可以通过对PE文件进行样本分析得到,例如运行PE文件后检测PE文件出现异常时的跳转动作执行次数和解密动作执行次数确定第一预设值和第二预设值。
下面通过在实际应用中的实施例说明上述实施例描述的流程。请参见图2,图2为本申请实施例所提供的一种PE病毒检测系统的架构示意图,该架构包括病毒检测模块、病毒规则解析模块和虚拟执行模块,虚拟执行模块用于实现模拟CPU、模拟系统环境和加载PE文件。
病毒检测模块为病毒规则特征和虚拟执行的实际使用者,通过虚拟执行与病毒规则中的特征值对比来判定某PE文件是否是恶意文件。虚拟执行模块负责PE文件的加载,并通过模拟CPU和模拟运行时库的方式实现程序的虚拟执行,并将PE文件执行过程中产生的进程内存数据存储至虚拟的内存管理模块。病毒规则解析模块用于解析病毒规则库,为病毒检测模块提供对应病毒的特征位置(如程序跳转次数和解密次数等信息)和特征值。
请参见图3,图3为本申请实施例所提供的一种病毒特征扫描流程图,具体过程如下:
步骤1、初始化虚拟执行模块。
步骤2、加载PE文件。
步骤3、通过虚拟CPU执行PE文件中的指令。
其中,在加载PE文件之后,可以读取PE文件中的指令。具体的,本实施例可以先通过模拟运行时库构建虚拟系统环境,再通过模拟CPU在虚拟系统环境中虚拟所述PE文件中的指令,并将所述PE文件在虚拟执行过程中生成的进程内存数据存储至模拟的所述内存管理模块。
步骤4、判断是否超过最大执行次数;若是,则进入步骤5;若否,则返回失败。
本实施例可以设置最大执行次数,例如可以将PE文件中的指令数量作为最大执行次数,当虚拟执行的指令数量大于最大执行次数时可以返回失败并结束流程,当虚拟执行的指令数量不大于最大执行次数时可以继续执行后续操作。
步骤5、判断是否存在跳转动作或解密动作;若是,则进入步骤6;若否,则进入步骤3。
步骤6、记录相关地址。
本实施例记录的相关地址包括跳转动作对应的内存地址和解密动作对应的内存地址。具体的,本实施例可以检测所述PE文件在虚拟执行过程中出现的跳转动作和解密动作,进而根据所述跳转动作和所述解密动作记录特征信息。上述特征信息包括所述跳转动作对应的内存地址、跳转动作执行次数、所述解密动作对应的内存地址和解密动作执行次数。
步骤7、判断跳转动作执行次数和解密动作执行次数是否符合预设规则;若是,则进入步骤8;若否,则进入步骤3。
步骤8、取对应的待检数据进行特征匹配。
本实施例可以判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则;若是,则按照所述跳转动作对应的内存地址从所述模拟内存管理模块读取第一待检数据,按照所述解密动作对应的内存地址从所述模拟内存管理模块读取第二待检数据,以便根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件。
具体的,可以通过以下方式判断是否符合预设规则:判断所述跳转动作执行次数是否大于第一预设值,得到第一判断结果;判断所述解密动作执行次数是否大于第二预设值,得到第二判断结果;若所述第一判断结果和所述第二判断结果均为是,则判定所述跳转动作执行次数和所述解密动作执行次数符合所述预设规则。
步骤9、判断是否匹配成功;若是,则返回成功;若否,则返回失败。
上述过程中,返回成功表示PE文件为病毒文件,返回失败表示PE文件为正常文件。具体的,本步骤可以对所述第一待检数据和所述第二待检数据进行病毒特征匹配操作;若匹配成功,则判定所述PE文件为所述病毒文件;若匹配失败,则判定所述PE文件为正常文件。
本实施例通过软件模拟CPU和系统环境,实现PE文件的虚拟执行,并记录程序执行的跳转次数和解密次数等信息获取内存数据,将上述数据与病毒规则中对应特征匹配从而根据匹配结果检测病毒。上述实施例可以解决恶意代码加密和加壳的恶意程序静态特征无法提取的问题,并且效率远高于常规的虚拟机内运行根据软件行为判定的方式。
请参见图4,图4为本申请实施例所提供的一种PE病毒检测装置的结构示意图;
该装置可以包括:
资源模拟模块401,用于确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;
特征记录模块402,用于通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
检测模块403,用于根据所述特征信息判断所述PE文件是否为病毒文件。
本实施例根据PE文件运行时所需的目标资源对CPU、内存管理模块和运行时库进行模拟,利用上述目标资源虚拟执行PE文件,进而根据虚拟执行过程中的特征信息判断PE文件是否为病毒文件。上述检测PE病毒的过程无需模拟整套的硬件资源和软件资源,而是仅对运行PE文件所需的资源进行模拟,能够降低PE病毒检测的资源消耗。
进一步的,模拟的全部所述运行时库或模拟的部分所述运行时库为目标类运行时库;所述目标类运行时库被调用时不执行本质功能,所述目标类运行时库还用于返回伪造的运行结果。
进一步的,特征记录模块402包括:
文件加载单元,用于加载所述PE文件,并读取所述PE文件中的指令;
虚拟执行单元,用于通过模拟所述运行时库构建虚拟系统环境,通过模拟所述CPU在所述虚拟系统环境中虚拟执行所述PE文件中的指令,并将所述PE文件在虚拟执行过程中生成的进程内存数据存储至模拟的所述内存管理模块。
进一步的,虚拟执行单元用于按照预设顺序从所述PE文件中确定的当前指令;还用于通过模拟所述CPU在所述虚拟系统环境中虚拟执行当前指令;还用于在当前指令执行完毕后,判断所述PE文件中的指令是否均执行完毕;若否,则进入按照预设顺序从所述PE文件中确定的当前指令的步骤。
进一步的,特征记录模块402包括:
动作检测单元,用于检测所述PE文件在虚拟执行过程中跳转动作和解密动作;
记录单元,用于根据所述跳转动作和所述解密动作记录所述特征信息;其中,所述特征信息包括所述跳转动作对应的内存地址、跳转动作执行次数、所述解密动作对应的内存地址和解密动作执行次数。
进一步的,检测模块403用于判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则;若是,则按照所述跳转动作对应的内存地址从所述模拟内存管理模块读取第一待检数据,按照所述解密动作对应的内存地址从所述模拟内存管理模块读取第二待检数据;还用于根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件。
进一步的,检测模块403判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则的过程包括:判断所述跳转动作执行次数是否大于第一预设值,得到第一判断结果;判断所述解密动作执行次数是否大于第二预设值,得到第二判断结果;若所述第一判断结果和所述第二判断结果均为是,则判定所述跳转动作执行次数和所述解密动作执行次数符合所述预设规则。
进一步的,检测模块403根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件的过程包括:对所述第一待检数据和所述第二待检数据进行病毒特征匹配操作;若匹配成功,则判定所述PE文件为所述病毒文件;若匹配失败,则判定所述PE文件为正常文件。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种PE病毒检测方法,其特征在于,包括:
确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;
通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
根据所述特征信息判断所述PE文件是否为病毒文件。
2.根据权利要求1所述PE病毒检测方法,其特征在于,模拟的全部所述运行时库或模拟的部分所述运行时库为目标类运行时库;所述目标类运行时库被调用时不执行本质功能,所述目标类运行时库还用于返回伪造的运行结果。
3.根据权利要求1所述PE病毒检测方法,其特征在于,通过模拟所述目标资源虚拟执行所述PE文件,包括:
加载所述PE文件,并读取所述PE文件中的指令;
通过模拟所述运行时库构建虚拟系统环境,通过模拟所述CPU在所述虚拟系统环境中虚拟执行所述PE文件中的指令,并将所述PE文件在虚拟执行过程中生成的进程内存数据存储至模拟的所述内存管理模块。
4.根据权利要求1所述PE病毒检测方法,其特征在于,记录所述PE文件在虚拟执行过程中产生的特征信息,包括:
检测所述PE文件在虚拟执行过程中跳转动作和解密动作;
根据所述跳转动作和所述解密动作记录所述特征信息;其中,所述特征信息包括所述跳转动作对应的内存地址、跳转动作执行次数、所述解密动作对应的内存地址和解密动作执行次数。
5.根据权利要求4所述PE病毒检测方法,其特征在于,根据所述特征信息判断所述PE文件是否为病毒文件,包括:
判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则;
若是,则按照所述跳转动作对应的内存地址从所述模拟内存管理模块读取第一待检数据,按照所述解密动作对应的内存地址从所述模拟内存管理模块读取第二待检数据;
根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件。
6.根据权利要求5所述PE病毒检测方法,其特征在于,判断所述跳转动作执行次数和所述解密动作执行次数是否符合预设规则,包括:
判断所述跳转动作执行次数是否大于第一预设值,得到第一判断结果;
判断所述解密动作执行次数是否大于第二预设值,得到第二判断结果;
若所述第一判断结果和所述第二判断结果均为是,则判定所述跳转动作执行次数和所述解密动作执行次数符合所述预设规则。
7.根据权利要求5所述PE病毒检测方法,其特征在于,根据所述第一待检数据和所述第二待检数据判断所述PE文件是否为所述病毒文件,包括:
对所述第一待检数据和所述第二待检数据进行病毒特征匹配操作;
若匹配成功,则判定所述PE文件为所述病毒文件;
若匹配失败,则判定所述PE文件为正常文件。
8.一种PE病毒检测装置,其特征在于,包括:
资源模拟模块,用于确定PE文件运行时所需的目标资源;其中,所述目标资源包括CPU、内存管理模块和运行时库;
特征记录模块,用于通过模拟所述目标资源虚拟执行所述PE文件,并记录所述PE文件在虚拟执行过程中产生的特征信息;
检测模块,用于根据所述特征信息判断所述PE文件是否为病毒文件。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1至7任一项所述PE病毒检测方法的步骤。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述PE病毒检测方法的步骤。
CN202210609468.5A 2022-05-31 2022-05-31 一种pe病毒检测方法、装置、电子设备及存储介质 Pending CN115017505A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210609468.5A CN115017505A (zh) 2022-05-31 2022-05-31 一种pe病毒检测方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210609468.5A CN115017505A (zh) 2022-05-31 2022-05-31 一种pe病毒检测方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115017505A true CN115017505A (zh) 2022-09-06

Family

ID=83070504

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210609468.5A Pending CN115017505A (zh) 2022-05-31 2022-05-31 一种pe病毒检测方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115017505A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116595527A (zh) * 2023-07-18 2023-08-15 中孚安全技术有限公司 一种内存木马的检测方法、系统、装置及可读存储介质
CN117093994A (zh) * 2023-09-18 2023-11-21 卫士通(广州)信息安全技术有限公司 一种疑似病毒文件分析方法、系统、设备及可存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116595527A (zh) * 2023-07-18 2023-08-15 中孚安全技术有限公司 一种内存木马的检测方法、系统、装置及可读存储介质
CN116595527B (zh) * 2023-07-18 2023-10-20 中孚安全技术有限公司 一种内存木马的检测方法、系统、装置及可读存储介质
CN117093994A (zh) * 2023-09-18 2023-11-21 卫士通(广州)信息安全技术有限公司 一种疑似病毒文件分析方法、系统、设备及可存储介质

Similar Documents

Publication Publication Date Title
EP2955658B1 (en) System and methods for detecting harmful files of different formats
CN107808094B (zh) 检测文件中的恶意代码的系统和方法
KR101174751B1 (ko) 커널 콜백 매커니즘을 이용한 악성코드 자동 분석 방법
CN115017505A (zh) 一种pe病毒检测方法、装置、电子设备及存储介质
US20100257608A1 (en) Apparatus and method for preventing virus code execution
EP2975873A1 (en) A computer implemented method for classifying mobile applications and computer programs thereof
CN109471697B (zh) 一种监控虚拟机中系统调用的方法、装置及存储介质
US20090019546A1 (en) Method and Apparatus for Modeling Computer Program Behaviour for Behavioural Detection of Malicious Program
JP2018041438A5 (zh)
US9740864B2 (en) System and method for emulation of files using multiple images of the emulator state
JP6404273B2 (ja) 仮想マシンでファイルのアンチウイルススキャンを実行するシステム及び方法
CN108776595B (zh) 一种gpu服务器的显卡的识别方法、装置、设备及介质
US11893106B2 (en) Apparatus and method for generating system call whitelist of application container and method for controlling system call of application container
CN109271789B (zh) 恶意进程检测方法、装置、电子设备及存储介质
CN109388946B (zh) 恶意进程检测方法、装置、电子设备及存储介质
JP6282217B2 (ja) 不正プログラム対策システムおよび不正プログラム対策方法
CN113360910A (zh) 恶意应用的检测方法、装置、服务器和可读存储介质
US10275595B2 (en) System and method for characterizing malware
CN108875363B (zh) 一种加速虚拟执行的方法、装置、电子设备及存储介质
CN116775147B (zh) 一种可执行文件处理方法、装置、设备及存储介质
EP3293660A1 (en) System and method of detecting malicious code in files
CN112464228B (zh) 一种应用层命令审计方法、装置、系统及存储介质
KR101116053B1 (ko) 파일 백업 방법과 상기 방법을 수행할 수 있는 장치들
CN116707866A (zh) 一种恶意进程检测方法及装置
KR20160052044A (ko) 온라인 게임에서의 해킹 툴 분석을 이용한 해킹 방지 방법

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