CN111639341B - 一种恶意程序的检测方法、装置、电子设备及存储介质 - Google Patents

一种恶意程序的检测方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111639341B
CN111639341B CN202010475209.9A CN202010475209A CN111639341B CN 111639341 B CN111639341 B CN 111639341B CN 202010475209 A CN202010475209 A CN 202010475209A CN 111639341 B CN111639341 B CN 111639341B
Authority
CN
China
Prior art keywords
program
shutdown notification
malicious
linked list
determining
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
CN202010475209.9A
Other languages
English (en)
Other versions
CN111639341A (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 Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network 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 Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202010475209.9A priority Critical patent/CN111639341B/zh
Publication of CN111639341A publication Critical patent/CN111639341A/zh
Application granted granted Critical
Publication of CN111639341B publication Critical patent/CN111639341B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供了一种恶意程序的检测方法、装置、电子设备及存储介质,所述方法包括:在获取检测指令时,遍历关机通知链表,其中,所述关机通知链表用于记录向内核注册关机通知的应用程序;在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。

Description

一种恶意程序的检测方法、装置、电子设备及存储介质
技术领域
本发明涉及设备安全监测技术领域,特别是涉及一种恶意程序的检测方法、装置、电子设备及存储介质。
背景技术
恶意程序是带有攻击意图的一段计算机程序,恶意程序已经成为一种常见的网络问题,恶意程序的一般具有强制安装的特点。在电子设备运行时,恶意程序会干拢安全软件的运行或者系统的正常运行,从而达到盗取数据或者破坏电子设备系统及已安装的安全软件的目的。因此,为了保证电子设备的安全运行,对恶意程序的检测便尤为重要。
由于恶意程序一般运行在内核态,其在运行时会在磁盘中生成相应的磁盘文件,所以目前的恶意程序的检测方式通过对文件系统的检测来确定是否存在恶意程序,具体来说,就是通过对磁盘文件进行扫描,进而确定是否存在恶意程序。
而为了避免被杀毒软件等检测到,恶意程序会在系统启动的时从磁盘中删除自身的磁盘文件,这样就能绕过对恶意程序的检测。可见,目前的恶意程序的检测方式无法准确检测出恶意程序,无法达到良好的检测效果。
发明内容
本发明实施例的目的在于提供一种恶意程序的检测方法、装置、电子设备及存储介质,以对恶意程序进行准确检测。具体技术方案如下:
第一方面,本发明实施例提供了一种恶意程序的检测方法,所述方法包括:
在获取检测指令时,遍历关机通知链表,其中,所述关机通知链表用于记录向内核注册关机通知的应用程序;
在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
按照预设检测规则,从所确定的应用程序中确定恶意程序。
可选的,所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,包括:
检测磁盘中是否存在目标应用程序对应的磁盘文件,其中,所述目标应用程序为所述关机通知链表对应的应用程序;
确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
可选的,所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,包括:
将所确定的所有的应用程序确定为恶意程序。
可选的,所述在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序的步骤,包括:
在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
将所述关机通知回调函数对应的应用程序,确定为可疑程序。
可选的,在所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤之后,所述方法还包括:
对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
将所述特征添加至预先建立的恶意程序库中。
第二方面,本发明实施例提供了一种恶意程序的检测装置,所述装置包括:
检测指令获取模块,用于在获取检测指令时,遍历关机通知链表,其中,所述关机通知链表用于记录向内核注册关机通知的应用程序;
可疑程序确定模块,用于在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
恶意程序确定模块,用于按照预设检测规则,从所确定的应用程序中确定恶意程序。
可选的,所述恶意程序确定模块包括:
磁盘文件检测单元,用于检测磁盘中是否存在目标应用程序对应的磁盘文件,其中,所述目标应用程序为所述关机通知链表对应的应用程序;
第一恶意程序确定单元,用于确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
可选的,所述恶意程序确定模块包括:
第二恶意程序确定单元,用于将所确定的所有的应用程序确定为恶意程序。
可选的,所述可疑程序确定模块包括:
回调函数确定单元,用于在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
可疑程序确定单元,用于将所述关机通知回调函数对应的应用程序,确定为可疑程序。
可选的,所述装置还包括:
二进制扫描模块,用于在所述按照预设检测规则,从所确定的应用程序中确定恶意程序之后,对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
特征添加模块,用于将所述特征添加至预先建立的恶意程序库中。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述第一方面任一所述的恶意程序的检测方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行上述第一方面任一所述的恶意程序的检测方法步骤。
本发明实施例所提供的方案中,电子设备在获取检测指令时,可以遍历关机通知链表,其中,关机通知链表用于记录向内核注册关机通知的应用程序,在遍历关机通知链表过程中,确定关机通知链表对应的应用程序,作为可疑程序,进而,按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种恶意程序的检测方法的流程图;
图2为图1所示实施例中步骤S103的一种具体流程图;
图3为图1所示实施例中步骤S102的一种具体流程图;
图4为本发明实施例所提供的恶意程序的检测方法的另一种流程图;
图5为本发明实施例所提供的一种恶意程序的检测装置的结构示意图;
图6为图5所示实施例中恶意程序确定模块530的一种具体结构示意图;
图7为本发明实施例所提供的恶意程序的检测装置的另一种结构示意图;
图8为本发明实施例所提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了对恶意程序进行准确检测,本发明实施例提供了一种恶意程序的检测方法、装置、电子设备及计算机可读存储介质。
下面首先对本发明实施例所提供的一种恶意程序的检测方法进行介绍。本发明实施例所提供的一种恶意程序的检测方法可以应用于手机、电脑、智能手表等电子设备,在此不做具体限定。为了方便描述,以下称为电子设备。
如图1所示,一种恶意程序的检测方法,所述方法包括:
S101,在获取检测指令时,遍历关机通知链表;
其中,所述关机通知链表用于记录向内核注册关机通知的应用程序。
S102,在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
S103,按照预设检测规则,从所确定的应用程序中确定恶意程序。
可见,本发明实施例所提供的方案中,电子设备在获取检测指令时,可以遍历关机通知链表,其中,关机通知链表用于记录向内核注册关机通知的应用程序,在遍历关机通知链表过程中,确定关机通知链表对应的应用程序,作为可疑程序,进而,按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。
电子设备在在获取检测指令时,为了对恶意程序进行检测,可以遍历关机通知链表,也就是执行上述步骤S101。其中,检测指令可以是用户通过预设触发方式发出的,例如,可以预先设置触发按钮,可以为显示屏中显示的“检测”按钮等,这样,用户通过点击等方式触发该“检测”按钮时,电子设备便可以获取检测指令。
在另一种实施方式中,检测指令也可以是在预设时刻生成的。其中,预设时刻可以可以系统开机时、系统关机时或者预设时间点等,例如,预设时间点可以为每天A时间点、每隔B小时等,这都是合理的,具体可以根据恶意程序的检测需求设定,在此不做具体限定。
上述关机通知链表用于记录向内核注册关机通知的应用程序,其中,关机通知即为系统关机时发出的通知,用于通知注册了关机通知的应用程序此时系统正在进行关机处理。
在遍历上述关机通知链表过程中,电子设备可以确定该关机通知链表对应的应用程序,也就是执行上述步骤S102。由于安全程序一般不会向内核注册关机通知,所以电子设备可以将关机通知链表对应的应用程序确定为可疑程序。
确定了关机通知链表对应的应用程序后,电子设备便可以执行上述步骤S103,即按照预设检测规则,从所确定的应用程序中确定恶意程序。由于在不同的应用场景下,恶意程序的检测需求可能是不同的,所以,为了满足恶意程序的检测需求,可以预先设定对应的检测规则,也就是预设检测规则。
进而,电子设备便可以按照预设检测规则,从所确定的应用程序中确定恶意程序。可见,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,通过本发明实施例所提供的恶意程序的检测也可以准确检测出恶意程序。
作为本发明实施例的一种实施方式,如图2所示,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
S201,检测磁盘中是否存在目标应用程序对应的磁盘文件;
在一些情况下,安全程序出于某些功能需要可能也会向内核注册关机通知,那么为了避免在这种情况下将安全程序确定为恶意程序,电子设备可以检测磁盘中是否存在目标应用程序对应的磁盘文件,其中,目标应用程序即为关机通知链表对应的应用程序。
如果磁盘中存在目标应用程序对应的磁盘文件,那么说明该目标应用程序在启动后并没有从磁盘中删除自身的磁盘文件,也就说明其并没有造成磁盘文件不落地的现象,那么可以确定其为非恶意程序,也就是安全程序。
S202,确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
如果磁盘中不存在目标应用程序对应的磁盘文件,那么说明该目标应用程序在启动后从磁盘中删除了自身的磁盘文件,也就说明其刻意造成磁盘文件不落地的现象,以避免被通过对磁盘文件进行扫描的杀毒程序检测到,那么可以确定其为恶意程序。
可见,在本实施例中,电子设备可以检测磁盘中是否存在目标应用程序对应的磁盘文件,目标应用程序为关机通知链表对应的应用程序,进而,确定目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。这样,可以避免将一些安全程序确定为恶意程序,进一步提高检测的准确度。
作为本发明实施例的一种实施方式,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
将所确定的所有的应用程序确定为恶意程序。
由于在一般情况下,安全程序并不会向内核注册关机通知,所以,为了确保检测出所有恶意程序,电子设备可以将所确定的所有的应用程序均确定为恶意程序。
作为本发明实施例的一种实施方式,如图3所示,上述在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序的步骤,可以包括:
S301,在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
恶意程序为了在下一次系统启动时能够启动并开始运行,恶意程序会注册关机通知回调函数,通过调用该关机通知回调函数,恶意程序可以将保存的内存文件复制到磁盘上,同时设置恶意程序的注册表的启动项,也就是开机启动项。
这样,在系统关机时,系统会遍历所有已注册的关机通知回调函数,此时恶意程序所注册的回调函数将会运行,恶意程序便可以通过该关机通知回调函数将保存的内存文件复制到磁盘上,同时设置恶意程序的注册表的启动项,进而,在系统下一次开始时,恶意程序便可以启动并运行。
所以电子设备在遍历关机通知链表过程中,可以确定其中包括的关机通知回调函数。
S302,将所述关机通知回调函数对应的应用程序,确定为可疑程序。
进而,电子设备便可以将关机通知链表包括的关机通知回调函数所对应的应用程序,确定为可疑程序。
例如,关机通知链表如下表所示:
序号 应用程序 关机通知回调函数
1 应用程序a 关机通知回调函数1
2 应用程序b 关机通知回调函数2
3 应用程序c 关机通知回调函数3
4 应用程序d 关机通知回调函数4
那么,电子设备通过遍历该关机通知链表可以确定,应用程序a、应用程序b、应用程序c以及应用程序d分别对应有关机通知回调函数1-4,也就是说,应用程序a、应用程序b、应用程序c以及应用程序d均具有关机通知回调函数,所以电子设备可以将应用程序a、应用程序b、应用程序c以及应用程序d将确定为可疑程序。
可见,在本实施例中,电子设备可以在遍历关机通知链表过程中,确定其中包括的关机通知回调函数,进而将关机通知回调函数对应的应用程序,确定为可疑程序,这样,可以保证能够查找到准确的可疑程序,保证后续恶意程序检测的准确度。
作为本发明实施例的一种实施方式,如图4所示,本发明实施例所提供的恶意程序的检测方法,可以包括:
S401,在获取检测指令时,遍历关机通知链表;
其中,所述关机通知链表用于记录向内核注册关机通知的应用程序。
S402,在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
S403,按照预设检测规则,从所确定的应用程序中确定恶意程序;
由于步骤S401-步骤S403分别与上述步骤S101-步骤S103相同,可以参见上述步骤S101-步骤S103部分的说明,在此不再赘述。
S404,对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
为了获得所确定的恶意程序的特征,方便后续检测,电子设备可以对恶意程序的内存数据进行二进制扫描,进而获得恶意程序的特征。其中,二进制扫描的具体方式可以采用恶意程序特征扫描领域的任意二进制扫描方式,只要可以获得恶意程序的特征即可,在此不做具体限定及说明。
S405,将所述特征添加至预先建立的恶意程序库中。
获得了恶意程序的特征后,电子设备可以将其添加至预先建立的恶意程序库中,这样,可以扩充恶意程序库,方便后续对恶意程序的检测。
举例来说,预先建立的恶意程序库中可以存储有恶意程序的特征表,那么电子设备确定恶意程序m后特征m#后,便可以将其添加至该特征表中,添加后的特征表可以如下表所示:
序号 恶意程序名称 特征
1 恶意程序x 特征x#
2 恶意程序y 特征y#
3 恶意程序o 特征o#
4 恶意程序p 特征p#
5 恶意程序m 特征m#
其中,恶意程序x、恶意程序y、恶意程序o及恶意程序p的特征为特征表中已记录的恶意程序的特征,恶意程序m的特征m#即为添加的恶意程序的特征。这样,后续在检测恶意程序时,可以根据应用程序的特征确定其是否为恶意程序。
例如,如果应用程序q的特征与特征x#、特征y#、特征o#、特征p#以及特征m#中的任意一个相匹配,那么变可以确定应用程序q为恶意程序。
可见,在本实施例中,在从所确定的应用程序中确定恶意程序之后,电子设备可以对恶意程序的内存数据进行二进制扫描,获得恶意程序的特征,进而将该特征添加至预先建立的恶意程序库中。可以扩充恶意程序库,方便后续对恶意程序的检测。
下面对本发明实施例所提供的恶意程序的检测方法的应用场景及检测过程进行举例介绍。以程序S1为例,该程序S1安装至电子设备后,会向内核注册关机通知回调函数H1,通过该关机通知回调函数H1,在系统关机时,恶意程序S1可以将内存文件复制到磁盘上,同时设置开机启动项。
在系统开机时,由于程序S1设置了开机启动项,所以程序S1会启动并开始运行。为了避免被对磁盘文件进行扫描的杀毒程序所查杀,程序S1会从磁盘中删除自身的磁盘文件。
电子设备在获取检测指令时,遍历关机通知链表,可以确定其中包括关机通知回调函数H1,进而将其对应的程序S1确定为可疑程序。然后电子设备可以检测磁盘中是否存在程序S1对应的磁盘文件,此时,确定程序S1在磁盘中并不存在对应的磁盘文件,进而,便可以将程序S1确定为恶意程序。
相应于上述恶意程序的检测方法,本发明实施例还提供了一种恶意程序的检测装置,下面对本发明实施例所提供的一种恶意程序的检测装置进行介绍。
如图5所示,一种恶意程序的检测装置,所述装置包括:
检测指令获取模块510,用于在获取检测指令时,遍历关机通知链表;
其中,所述关机通知链表用于记录向内核注册关机通知的应用程序。
可疑程序确定模块520,用于在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
恶意程序确定模块530,用于按照预设检测规则,从所确定的应用程序中确定恶意程序。
可见,本发明实施例所提供的方案中,电子设备在获取检测指令时,可以遍历关机通知链表,其中,关机通知链表用于记录向内核注册关机通知的应用程序,在遍历关机通知链表过程中,确定关机通知链表对应的应用程序,作为可疑程序,进而,按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。
作为本发明实施例的一种实施方式,如图6所示,上述恶意程序确定模块530可以包括:
磁盘文件检测单元531,用于检测磁盘中是否存在目标应用程序对应的磁盘文件;
其中,所述目标应用程序为所述关机通知链表对应的应用程序。
第一恶意程序确定单元532,用于确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
作为本发明实施例的一种实施方式,上述恶意程序确定模块530可以包括:
第二恶意程序确定单元(图5中未示出),用于将所确定的所有的应用程序确定为恶意程序。
作为本发明实施例的一种实施方式,上述可疑程序确定模块520可以包括:
回调函数确定单元(图5中未示出),用于在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
可疑程序确定单元(图5中未示出),用于将所述关机通知回调函数对应的应用程序,确定为可疑程序。
作为本发明实施例的一种实施方式,如图7所示,上述装置还可以包括:
二进制扫描模块540,用于在所述按照预设检测规则,从所确定的应用程序中确定恶意程序之后,对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
特征添加模块550,用于将所述特征添加至预先建立的恶意程序库中。
本发明实施例还提供了一种电子设备,如图8所示,电子设备可以包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现如下步骤:
在获取检测指令时,遍历关机通知链表;
其中,所述关机通知链表用于记录向内核注册关机通知的应用程序。
在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
按照预设检测规则,从所确定的应用程序中确定恶意程序。
可见,本发明实施例所提供的方案中,电子设备在获取检测指令时,可以遍历关机通知链表,其中,关机通知链表用于记录向内核注册关机通知的应用程序,在遍历关机通知链表过程中,确定关机通知链表对应的应用程序,作为可疑程序,进而,按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
作为本发明实施例的一种实施方式,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
检测磁盘中是否存在目标应用程序对应的磁盘文件;
其中,所述目标应用程序为所述关机通知链表对应的应用程序。
确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
作为本发明实施例的一种实施方式,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
将所确定的所有的应用程序确定为恶意程序。
作为本发明实施例的一种实施方式,上述在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序的步骤,可以包括:
在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
将所述关机通知回调函数对应的应用程序,确定为可疑程序。
作为本发明实施例的一种实施方式,在上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤之后,上述方法还可以包括:
对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
将所述特征添加至预先建立的恶意程序库中。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在获取检测指令时,遍历关机通知链表;
其中,所述关机通知链表用于记录向内核注册关机通知的应用程序。
在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
按照预设检测规则,从所确定的应用程序中确定恶意程序。
可见,本发明实施例所提供的方案中,计算机程序被处理器执行时,在获取检测指令时,可以遍历关机通知链表,其中,关机通知链表用于记录向内核注册关机通知的应用程序,在遍历关机通知链表过程中,确定关机通知链表对应的应用程序,作为可疑程序,进而,按照预设检测规则,从所确定的应用程序中确定恶意程序。由于恶意软件需要向内核注册关机通知,进而在关机时可以将内存文件复制到磁盘上,同时设置开机启动项,这样,在系统再次启动时,恶意软件便可以启动并开始运行,所以通过对关机通知链表的遍历确定恶意程序,即使恶意程序在系统启动的时从磁盘中删除自身的磁盘文件,也可以准确检测出恶意程序。
作为本发明实施例的一种实施方式,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
检测磁盘中是否存在目标应用程序对应的磁盘文件;
其中,所述目标应用程序为所述关机通知链表对应的应用程序。
确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
作为本发明实施例的一种实施方式,上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,可以包括:
将所确定的所有的应用程序确定为恶意程序。
作为本发明实施例的一种实施方式,上述在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序的步骤,可以包括:
在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
将所述关机通知回调函数对应的应用程序,确定为可疑程序。
作为本发明实施例的一种实施方式,在上述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤之后,上述方法还可以包括:
对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
将所述特征添加至预先建立的恶意程序库中。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (12)

1.一种恶意程序的检测方法,其特征在于,所述方法包括:
在获取检测指令时,遍历关机通知链表,其中,所述关机通知链表用于记录向内核注册关机通知的应用程序,所述关机通知用于在系统进行关机时,通知注册了关机通知的应用程序此时系统正在进行关机处理;
在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
按照预设检测规则,从所确定的应用程序中确定恶意程序。
2.如权利要求1所述的方法,其特征在于,所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,包括:
检测磁盘中是否存在目标应用程序对应的磁盘文件,其中,所述目标应用程序为所述关机通知链表对应的应用程序;
确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
3.如权利要求1所述的方法,其特征在于,所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤,包括:
将所确定的所有的应用程序确定为恶意程序。
4.如权利要求1所述的方法,其特征在于,所述在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序的步骤,包括:
在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
将所述关机通知回调函数对应的应用程序,确定为可疑程序。
5.如权利要求1-4任一项所述的方法,其特征在于,在所述按照预设检测规则,从所确定的应用程序中确定恶意程序的步骤之后,所述方法还包括:
对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
将所述特征添加至预先建立的恶意程序库中。
6.一种恶意程序的检测装置,其特征在于,所述装置包括:
检测指令获取模块,用于在获取检测指令时,遍历关机通知链表,其中,所述关机通知链表用于记录向内核注册关机通知的应用程序,所述关机通知用于在系统进行关机时,通知注册了关机通知的应用程序此时系统正在进行关机处理;
可疑程序确定模块,用于在遍历所述关机通知链表过程中,确定所述关机通知链表对应的应用程序,作为可疑程序;
恶意程序确定模块,用于按照预设检测规则,从所确定的应用程序中确定恶意程序。
7.如权利要求6所述的装置,其特征在于,所述恶意程序确定模块包括:
磁盘文件检测单元,用于检测磁盘中是否存在目标应用程序对应的磁盘文件,其中,所述目标应用程序为所述关机通知链表对应的应用程序;
第一恶意程序确定单元,用于确定所述目标应用程序中,不存在对应的磁盘文件的应用程序为恶意程序。
8.如权利要求6所述的装置,其特征在于,所述恶意程序确定模块包括:
第二恶意程序确定单元,用于将所确定的所有的应用程序确定为恶意程序。
9.如权利要求6所述的装置,其特征在于,所述可疑程序确定模块包括:
回调函数确定单元,用于在遍历所述关机通知链表过程中,确定其中包括的关机通知回调函数;
可疑程序确定单元,用于将所述关机通知回调函数对应的应用程序,确定为可疑程序。
10.如权利要求6-9任一项所述的装置,其特征在于,所述装置还包括:
二进制扫描模块,用于在所述按照预设检测规则,从所确定的应用程序中确定恶意程序之后,对所述恶意程序的内存数据进行二进制扫描,获得所述恶意程序的特征;
特征添加模块,用于将所述特征添加至预先建立的恶意程序库中。
11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
12.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行权利要求1-5任一所述的方法步骤。
CN202010475209.9A 2020-05-29 2020-05-29 一种恶意程序的检测方法、装置、电子设备及存储介质 Active CN111639341B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010475209.9A CN111639341B (zh) 2020-05-29 2020-05-29 一种恶意程序的检测方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010475209.9A CN111639341B (zh) 2020-05-29 2020-05-29 一种恶意程序的检测方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111639341A CN111639341A (zh) 2020-09-08
CN111639341B true CN111639341B (zh) 2023-09-05

Family

ID=72330282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010475209.9A Active CN111639341B (zh) 2020-05-29 2020-05-29 一种恶意程序的检测方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111639341B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778870A (zh) * 2021-09-07 2021-12-10 杭州雾联科技有限公司 一种蓝屏回调方法、装置、设备及计算机可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722680A (zh) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 清除恶意程序的方法和系统
EP2667314A1 (en) * 2012-05-22 2013-11-27 Kaspersky Lab Zao System and method for detection and treatment of malware on data storage devices
CN105335654A (zh) * 2014-06-27 2016-02-17 北京金山安全软件有限公司 一种Android恶意程序检测和处理方法、装置及设备
CN105844148A (zh) * 2016-03-16 2016-08-10 北京金山安全软件有限公司 一种保护操作系统的方法、装置及电子设备
CN106126291A (zh) * 2016-06-28 2016-11-16 北京金山安全软件有限公司 一种删除恶意文件的方法、装置及电子设备
CN106203119A (zh) * 2016-07-13 2016-12-07 北京金山安全软件有限公司 隐藏光标的处理方法、装置及电子设备
CN106203092A (zh) * 2016-06-30 2016-12-07 北京金山安全软件有限公司 一种拦截恶意程序关机的方法、装置及电子设备
US10628586B1 (en) * 2017-11-30 2020-04-21 Palo Alto Networks, Inc. Detecting malware via scanning for dynamically generated function pointers in memory

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677491B2 (en) * 2010-02-04 2014-03-18 F-Secure Oyj Malware detection

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2667314A1 (en) * 2012-05-22 2013-11-27 Kaspersky Lab Zao System and method for detection and treatment of malware on data storage devices
CN102722680A (zh) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 清除恶意程序的方法和系统
CN105335654A (zh) * 2014-06-27 2016-02-17 北京金山安全软件有限公司 一种Android恶意程序检测和处理方法、装置及设备
CN105844148A (zh) * 2016-03-16 2016-08-10 北京金山安全软件有限公司 一种保护操作系统的方法、装置及电子设备
CN106126291A (zh) * 2016-06-28 2016-11-16 北京金山安全软件有限公司 一种删除恶意文件的方法、装置及电子设备
CN106203092A (zh) * 2016-06-30 2016-12-07 北京金山安全软件有限公司 一种拦截恶意程序关机的方法、装置及电子设备
CN106203119A (zh) * 2016-07-13 2016-12-07 北京金山安全软件有限公司 隐藏光标的处理方法、装置及电子设备
US10628586B1 (en) * 2017-11-30 2020-04-21 Palo Alto Networks, Inc. Detecting malware via scanning for dynamically generated function pointers in memory

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈志锋 ; 李清宝 ; 张平 ; 丁文博 ; .基于数据特征的内核恶意软件检测.软件学报.2015,(12),全文. *

Also Published As

Publication number Publication date
CN111639341A (zh) 2020-09-08

Similar Documents

Publication Publication Date Title
EP3039608B1 (en) Hardware and software execution profiling
KR101647487B1 (ko) 패치파일 분석시스템과 분석방법
CN107623687B (zh) 一种防盗刷方法、操作检测方法、装置及电子设备
US20130067577A1 (en) Malware scanning
US9183392B2 (en) Anti-malware tool for mobile apparatus
EP3488346B1 (en) Anomaly detection using sequences of system calls
US20190147163A1 (en) Inferential exploit attempt detection
US11055168B2 (en) Unexpected event detection during execution of an application
JP6176622B2 (ja) マルウェアの検出方法
CN111460445A (zh) 样本程序恶意程度自动识别方法及装置
JP6030566B2 (ja) 不正アプリケーション検知システム及び、方法
CN108810014B (zh) 攻击事件告警方法及装置
US20120222116A1 (en) System and method for detecting web browser attacks
CN111639341B (zh) 一种恶意程序的检测方法、装置、电子设备及存储介质
US11636197B2 (en) Selective import/export address table filtering
CN110768865B (zh) 一种深度报文检测引擎激活方法、装置及电子设备
CN111783087A (zh) 可执行文件恶意执行的检测方法及装置、终端、存储介质
JP2010134536A (ja) パタンファイル更新システム、パタンファイル更新方法、及びパタンファイル更新プログラム
CN115758353A (zh) 应用程序保护方法、装置、设备及存储介质
CN111259392B (zh) 一种基于内核模块的恶意软件拦截方法及装置
CN116204876A (zh) 异常检测方法、设备以及存储介质
CN110309647B (zh) 针对应用程序的处理方法、装置、电子设备及存储介质
CN116318751B (zh) 漏洞识别方法、装置、设备及存储介质
CN114785542B (zh) 一种木马检测方法、系统、电子设备和存储介质
CN113783891B (zh) 一种事件识别方法及装置

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