CN109325347B - 一种跳跃性病毒的查杀方法、***、装置及可读存储介质 - Google Patents

一种跳跃性病毒的查杀方法、***、装置及可读存储介质 Download PDF

Info

Publication number
CN109325347B
CN109325347B CN201810981813.1A CN201810981813A CN109325347B CN 109325347 B CN109325347 B CN 109325347B CN 201810981813 A CN201810981813 A CN 201810981813A CN 109325347 B CN109325347 B CN 109325347B
Authority
CN
China
Prior art keywords
virus
data file
directory
killing
killed
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
CN201810981813.1A
Other languages
English (en)
Other versions
CN109325347A (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.)
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity 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 Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN201810981813.1A priority Critical patent/CN109325347B/zh
Publication of CN109325347A publication Critical patent/CN109325347A/zh
Application granted granted Critical
Publication of CN109325347B publication Critical patent/CN109325347B/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/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/562Static detection
    • 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/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种跳跃性病毒的查杀方法,基于常规病毒查杀方式的基础上,还实时监控被标记为已查杀目录下的各数据文件的变化情况,以使在跳跃性病毒将自己复制至一个已查杀目录下时,得以及时发现,且鉴于跳跃性病毒可自我复制的特点,以独占模式访问该跳跃性病毒,使其丧失自我复制的能力,并在其处于锁定的状态下对其进行彻底查杀,该查杀方式能够及时发现跳跃性病毒,并杜绝其在查杀过程中再次进行自我复制,查杀更加彻底。本申请还同时公开了一种跳跃性病毒的查杀***、装置及计算机可读存储介质,具有上述有益效果。

Description

一种跳跃性病毒的查杀方法、***、装置及可读存储介质
技术领域
本申请涉及病毒查杀技术领域,特别涉及一种跳跃性病毒的查杀方法、***、装置及计算机可读存储介质。
背景技术
随着互联网的快速发展,病毒也在***性的增长。病毒寄存在计算机的方式也变的多种多样,有隐藏的潜伏性木马,也有伪装成一张图片、一个其它格式文件甚至***文件的病毒,现有基于特征码的病毒查杀手段针对这些常规类型病毒的查杀效果良好,但现有病毒查杀手段却无法查杀新型的跳跃性病毒。
跳跃性病毒是指一种可以自我复制,并在多个文件目录间进行跳跃式移动的病毒。现有的病毒查杀工具只能针对用户选定的全盘扫描或自定义扫描方式对应的全盘目录或自定义目录进行病毒查杀,依次扫描指定目录下的所有数据文件,直至最后一个数据文件扫描结束即查杀结束。
由于跳跃性病毒具有自我复制和跳跃的特性,使其可以将自己复制至一个已经被标记为已查杀的目录下,而绝大多数病毒查杀工具是基于数据文件不变的情况进行的数据文件扫描,因此在存在跳跃性病毒式且该病毒将自己复制至一个被病毒查杀工具标记为已查杀的目录下时,现有病毒查杀工具无法发现新复制的病毒文件,使得跳跃性病毒的查杀不够彻底,埋下安全隐患。
因此,如何克服现有病毒查杀方式无法彻底查杀跳跃性病毒的缺陷是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种跳跃性病毒的查杀方法,基于常规病毒查杀方式的基础上,还实时监控被标记为已查杀目录下的各数据文件的变化情况,以使在跳跃性病毒将自己复制至一个已查杀目录下时,得以及时发现,且鉴于跳跃性病毒可自我复制的特点,以独占模式访问该跳跃性病毒,使其丧失自我复制的能力,并在其处于锁定的状态下对其进行彻底查杀,该查杀方式能够及时发现跳跃性病毒,并杜绝其在查杀过程中再次进行自我复制,查杀更加彻底。
本申请的另一目的在于提供了一种跳跃性病毒的查杀***、装置及计算机可读存储介质。
为实现上述目的,本申请提供一种跳跃性病毒的查杀方法,该方法包括:
根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
监控所述已查杀目录下各数据文件的数据变化情况;
当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒;
以独占模式锁定所述跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
可选的,监控所述已查杀目录下各数据文件的数据变化情况,包括:
利用Inotify监控所述已查杀目录下各数据文件的数据变化情况;其中,数据变化包括新增数据文件、修改数据文件或替换原有数据文件。
可选的,利用Inotify监控所述已查杀目录下各数据文件的数据变化情况,包括:
分别计算所述已查杀目录下各数据文件的特征值,得到各MD5值,并根据各所述MD5值建立数据文件特征表;
将出现所述数据变化的数据文件的MD5值与存储于所述数据文件特征表中的各MD5进行比对;
对应的,当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒,具体为:
当所述已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将所述新数据文件判定为跳跃性病毒;其中,所述原MD5值为存储于所述数据文件特征表中的MD5值。
可选的,该查杀方法还包括:
获取所述跳跃性病毒的杀毒操作执行结果,并利用日志记录所述杀毒操作执行结果;
当所述杀毒操作执行结果为杀毒失败时,通过预设路径上报包含所述跳跃性病毒的警报信息。
为实现上述目的,本申请还提供了一种跳跃性病毒的查杀***,包括:
常规病毒查杀单元,用于根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
已查杀目录标记单元,用于以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
已查杀数据文件监控单元,用于监控所述已查杀目录下各数据文件的数据变化情况;
跳跃性病毒判定单元,用于当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒;
跳跃性病毒杀毒单元,用于以独占模式锁定所述跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
可选的,所述已查杀数据文件监控单元包括:
Inotify监控子单元,用于利用Inotify监控所述已查杀目录下各数据文件的数据变化情况;其中,数据变化包括新增数据文件、修改数据文件或替换原有数据文件。
可选的,所述Inotify监控子单元包括:
特征值计算及特征表建立模块,用于分别计算所述已查杀目录下各数据文件的特征值,得到各MD5值,并根据各所述MD5值建立数据文件特征表;
新数据文件特征值比对模块,用于将出现所述数据变化的数据文件的MD5值与存储于所述数据文件特征表中的各MD5进行比对;
对应的,所述跳跃性病毒判定单元具体为:
当所述已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将所述新数据文件判定为跳跃性病毒;其中,所述原MD5值为存储于所述数据文件特征表中的MD5值。
可选的,该查杀***还包括:
执行结果获取及记录单元,用于获取所述跳跃性病毒的杀毒操作执行结果,并利用日志记录所述杀毒操作执行结果;
警报信息上报单元,用于当所述杀毒操作执行结果为杀毒失败时,通过预设路径上报包含所述跳跃性病毒的警报信息。
为实现上述目的,本申请还提供了一种跳跃性病毒的查杀装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述内容所描述的跳跃性病毒的查杀方法的步骤。
为实现上述目的,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述内容所描述的跳跃性病毒的查杀方法的步骤。
显然,本申请所提供的一种跳跃性病毒的查杀方法,基于常规病毒查杀方式的基础上,还实时监控被标记为已查杀目录下的各数据文件的变化情况,以使在跳跃性病毒将自己复制至一个已查杀目录下时,得以及时发现,且鉴于跳跃性病毒可自我复制的特点,以独占模式访问该跳跃性病毒,使其丧失自我复制的能力,并在其处于锁定的状态下对其进行彻底查杀,该查杀方式能够及时发现跳跃性病毒,并杜绝其在查杀过程中再次进行自我复制,查杀更加彻底。本申请同时还提供了一种跳跃性病毒的查杀***、装置及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种跳跃性病毒的查杀方法的流程图;
图2为本申请实施例提供的跳跃性病毒的查杀方法中一种监控数据变化情况的方法的流程图;
图3为本申请实施例提供的一种跳跃性病毒的查杀***的结构框图。
具体实施方式
简单的跳跃性病毒可以在不同目录间随机移动,即跳跃性病毒自身设置有一个定时任务,在定时任务触发时,跳跃性病毒会随机移动到其他不同目录内。假设病毒扫描引擎正在进行扫描,并已经扫描完部分目录,此时跳跃性病毒的定时任务触发,跳跃性病毒即随机移动到其他的目录下,若移动后的目录为引擎已扫描完成的目录,扫描引擎并不能感知已扫描完成的目录发生变化,从而无法扫描出跳跃性病毒。
更高级的跳跃性病毒则会启动一个监测进程,通过监测计算机下的所有进程,通过自身列表的记录匹配出各个厂家对应的病毒扫描引擎进程名。若没有匹配则监测每个进程执行的过程,并通过进程的参数和资源的消耗等分析,判断出病毒扫描引擎对应的进程,并通过分析进程执行的参数获得病毒扫描引擎此时扫描的目录,记录下该目录,待进程扫描另外一个目录时,说明该目录扫描完毕后,跳跃性病毒即可以移动到已扫描完成的文件夹内,从而躲过病毒扫描引擎的扫描。
本申请的核心是提供一种跳跃性病毒的查杀方法、***、装置及计算机可读存储介质,基于常规病毒查杀方式的基础上,还实时监控被标记为已查杀目录下的各数据文件的变化情况,以使在跳跃性病毒将自己复制至一个已查杀目录下时,得以及时发现,且鉴于跳跃性病毒可自我复制的特点,以独占模式访问该跳跃性病毒,使其丧失自我复制的能力,并在其处于锁定的状态下对其进行彻底查杀,该查杀方式能够及时发现跳跃性病毒,并杜绝其在查杀过程中再次进行自我复制,查杀更加彻底。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
实施例一
以下结合图1,图1为本申请实施例提供的一种跳跃性病毒的查杀方法的流程图,其具体包括以下步骤:
S101:根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
本步骤为常规使用的病毒查杀方式:用户为杀毒软件定义需要查杀扫描的目录或文件,杀毒软件则启动运行病毒扫描引擎,通过遍历查杀的目录,找到待扫描的文件,通过各类病毒检测的方法校验该文件是否为病毒文件。即本申请提供的技术核心点建立在常规病毒查杀方式的基础,此部分不是本申请的重点部分,也已被本领域技术人员所熟知,在此不再赘述。
S102:以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
在S101的基础上,本步骤旨在以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录。
举例说明,假定用户想要查杀D盘下是否存在病毒,而且D盘下共存在5个子目录(01、02、03、04以及05),每个子目录中各有20个不同的数据文件,在一种简单的病毒查杀步骤中,首先选定一个子目录01,并分别扫描其中包含的20个数据文件中是否存在病毒或者是否属于病毒,若这20个数据文件均不含病毒,则说明该子目录01扫描通过,将会被标记为已查杀目录,目的在于区别其它未进行病毒查杀的子目录(02、03、04以及05);若01子目录中的20个数据文件中的一个数据文件为病毒文件,杀毒软件则会将其进行隔离(通常情况下转移至另一专设的隔离目录下,以防止病毒造成危害),并将仅剩余19个数据文件的子目录01标记为已查杀目录。
S103:监控已查杀目录下各数据文件的数据变化情况;
在S102的基础上,本步骤旨在监控各已查杀目录下各数据文件的数据变化情况,其中数据变化包括新增数据文件、修改数据文件或替换原有数据文件,通常情况下,排除用户主动执行数据文件操作,在病毒扫描期间不应出现数据变化情况,而跳跃性病毒具有的自我复制特点,使得其可能将自己复制至一个已查杀目录下来使得位于已查杀目录下的复制体逃过病毒查杀软件的彻底查杀,区别于常规病毒查杀工具完全信任已查杀目录下的数据文件的做法,本申请还实时监控已查杀目录下个数据文件的数据变化情况,以发现从其它目录复制而来的跳跃性病毒。
具体的,可以使用多种工具实现对数据文件变化情况的监控,例如基于Linux的Inotify、基于Winows的Directory Moinitor和Minifilter等工具,均可以实现上述监控目的,其中Inotify是Linux内核的一个特性,它用于监控文件***,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等,甚至还可以监控数据源头,其它工具由于操作***环境不同,会存在相应的改变,但原理大体相同,在此不再一一赘述。
监控数据文件是否出现变化的一种包括但不限于的方式为记录原数据文件的一些特征,用于与出现变化的数据文件的新特征进行一致性比较,若不一致则说明其确实出现了数据变化。其中,使用特征来唯一标识一个数据文件的方式多种多样,例如可采用哈希算法计算得到的特征值,也可以采用预设规则的文件命名方式来区别于每个数据文件,为了防止复制而来的跳跃性病毒视图伪装自己为原有的数据文件,还可以基于防复制算法对标识进行处理,此处并不做具体限定。
S104:当已查杀目录中出现不同于原有数据文件的新数据文件时,将新数据文件判定为跳跃性病毒;
在S103的基础上,本步骤旨在将监控过程中在已查杀目录中出现的不同于原有数据文件的新数据文件判定为跳跃性病毒。
为了排除用户主动在执行病毒扫描期间为已查杀目录新增正常数据文件却被判定为跳跃性病毒的错误判定情况,还可以采取多种方式来消除误判,例如与周围时刻执行下载或文件转移的正常操作进程取得联系,来判断新增的数据文件是否是基于正常进程执行的,还可以直接呈现给用户,来由用户对是否属于自己执行的操作进行判定等,此处并不做具体限定。
S105:以独占模式锁定跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
在S104的基础上,本步骤旨在彻底查杀掉已经被确认出的跳跃性病毒,先前位于未查杀目录下的跳跃性病毒已经去除,还需要去除的就是新复制到已查杀目录下的复制体,为防止其再次自我复制,本步骤以独占模式锁定跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
需要说明的是,独占模式指的是只有调用它的程序进程独自享有该文件的读取写入权限,其它程序均无权访问(例如把它拖入记事本打开会显示“拒绝访问”),处于独占模式下可以有效防止其私立启动自我复制和监控进程,因此在此状态下在此进行杀毒操作就可以杜绝其再次使用“跳跃”手段防止彻底查杀的目的。
基于上述技术方案,本申请实施例提供的一种跳跃性病毒的查杀方法,基于常规病毒查杀方式的基础上,还实时监控被标记为已查杀目录下的各数据文件的变化情况,以使在跳跃性病毒将自己复制至一个已查杀目录下时,得以及时发现,且鉴于跳跃性病毒可自我复制的特点,以独占模式访问该跳跃性病毒,使其丧失自我复制的能力,并在其处于锁定的状态下对其进行彻底查杀,该查杀方式能够及时发现跳跃性病毒,并杜绝其在查杀过程中再次进行自我复制,查杀更加彻底。
实施例二
以下结合图2,图2为本申请实施例提供的跳跃性病毒的查杀方法中一种监控数据变化情况的方法的流程图,本实施例为针对实施例一S103所给出的一种具体实现方式,该实现方式的环境为Linux操作***,且基于Inotify这个Linux的内核特性,具体实施步骤如下:
S201:分别计算已查杀目录下各数据文件的特征值,得到各MD5值,并根据各MD5值建立数据文件特征表;
其中,MD5值为基于哈希算法中一种应用广泛的特征值计算算法计算得到,基于该算法计算得到的MD5值与原数据文件唯一对应,若数据文件出现变化,其对应的MD5值一定会改变,因此可基于MD5值来判断是否出现文件变化。MD5为Message Digest Algorithm 5的英文缩写,中文名为消息摘要算法第五版,为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。
S202:将出现数据变化的数据文件的MD5值与存储于数据文件特征表中的各MD5进行比对;
在S201得到记录有原数据文件对应的原MD5值的数据文件特征表的基础上,本步骤旨在将出现数据变化的数据文件的MD5值与数据文件特征表中的各MD5进行比对,以期通过是否存在相同的MD5值来判断是否属于原数据文件和是否出现文件变化。
S203:当已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将新数据文件判定为跳跃性病毒。
实施例三
本实施例在上述各实施例的基础上,结合具体实际应用场景,给出了一种具体的实现方式,该方式分为存在先后关系的两部分,第一部分为如何查找跳跃性病毒,第二部分为如何彻底杀掉查找出的跳跃性病毒,以下将分别进行详细阐述:
如何查找跳跃性病毒:
1、获取用户定义的病毒查杀扫描目录;
2、后台同时启动病毒扫描引擎进程、文件***监控Inotify进程;
3、病毒扫描引擎遍历用户需要扫描的路径,若遇到文件时,对文件进行病毒查杀操作;若遇到目录时,则进入该目录,并对该目录下的文件进行病毒查杀操作,以此类推查杀整个目录。对已经查杀的文件,扫描引擎会记录基本的信息,并存放本地数据库;
4、整个扫描过程中文件***监控Inotify进程都在对已扫描的目录进行监控,若此时文件***监控Inotify进程监测到文件或目录有变化时,获取到该文件对应的路径,并调用数据库存放的已扫描的文件,通过对比,判断该变化的文件是否存在引擎的查杀记录内。若不存在,则忽略该变化的文件;若存在,则将已扫描的记录删除,并将该文件存放数据库的待查杀记录内;
5、通过上述操作,在整个扫描过程的不断的监控已扫描完成的文件,记录和校验变动的文件,从而获取到从扫描开始到扫描结束的整个扫描周期的变动文件信息,即包括跃性病毒文件的信息。
如何彻底杀掉跳跃性病毒:
1、以独占模式打开第4步监控确定的存在变化的文件,防止其它进程或程序访问该文件,即可避免跳跃性文件再次进行跳跃至其他目录,阻止了跳跃性病毒文件的再次跳跃;
7、待用户定义的扫描目录下的数据文件查杀工作结束后,扫描引擎会继续读取数据库内变动的文件信息,并通过一一释放文件的独占模式,释放给扫描引擎对其一一进行病毒查杀。若为病毒文件则记录展示给用户查看,若为正常文件则忽略,直至数据库里无变动的文件信息是扫描结束。
基于上述原理,本申请还提供了一种具体的操作流程:
1、获取用户输入的扫描目录,比如:c:/;
2、将扫描目录作为参数传给病毒扫描引擎进程KScan.exe,启动进程,并开始扫描C盘目录;
3、同时将扫描目录作为参数传给文件***监控进程Inotify.exe,启动进程,开始监控已扫描完成的目录;
4、扫描引擎开始遍历C盘一级目录下的文件和目录。若读取类型的为文件时,则进行病毒查杀,查杀完成后,判断是否为正常文件,若为病毒文件,则报告该病毒文件;若为正常文件,则将文件信息存放在SQLite(一种本地微型数据库)内的ScannedFile表内。主要存放信息为:文件名称,文件路径,文件的MD5值。若读取的为目录,则进入该目录,按照上述操作,对二级目录的文件进行病毒查杀,若还存在三级目录,则再进入该目录再按上述方法操作以此类推,扫描完成即存放已扫描的文件信息,若无下级目录,则退回到上级目录完成该目录的扫描,并继续扫描其他目录。并且将已扫描完成的目录传给文件监控进程进行监控;
5、假设扫描引擎已经扫描完成比如名称为A的目录,正在扫描B目录。第一种情况:若此时有文件直接移动或新建产生在已扫描完成的A目录下,文件***监控进程捕获到A目录发生变动进而获取到A目录下新增加的文件,并将该文件信息存放在本地微型数据库SQLite内的WaitScanFile表内。主要存放的信息为:文件名称,文件路径,文件的MD5值。第二种情况:若此时变动的文件通过伪装覆盖掉已扫描完成的A目录下文件,文件***监控进程捕获到A目录发生变动进而获取到A目录下变动的文件,并获取文件的MD5值。监控进程通过读取数据库ScannedFile表的文件名称获得原始文件的MD5值。通过校验MD5值,判断变动的文件是否为原始文件。若MD5值一样,则表示为同一份文件,直接忽略。若MD5值不一样,则将该文件信息存放在本地微型数据库SQLite内的WaitScanFile表内。主要存放的信息为:文件名称,文件路径,文件的MD5值。并将ScannedFile表内该文件的信息删除,表示该文件还未扫描;
6、通过第5步操作,即可得到扫描过程中已扫描过的变动的文件记录。文件监控进程会监控整个扫描周期,引擎扫描C盘目录后,整个扫描周期内发生变化的已扫描完成后再变动的文件都会存放在WaitScanFile表内,即查找得到的跳跃性病毒文件信息也会捕获存放在该表内。
7、通过上述第5步的操作,文件***监控进程获取到变化的文件后,写入ScannedFile表后,再以独占的方式打开该文件。整个扫描的周期,对已完成扫描的目录监控,无论文件***监控到了多少个的已扫描完成后变化文件都用独占的方式打开,这样确保该变化的文件不会被其他进程或程序访问,进而使得该文件不能移动到其他目录。从而阻止了跳跃性病毒文件的再次跳跃;
8、C盘扫描结束后,扫描引擎并未直接停止工作。而是继续读取数据库内的WaitScanFile表。获取到表内的文件名和文件路径,通过遍历这些文件,依次释放文件的独占模式,进行病毒查杀,若为病毒,则查杀。若不为病毒,则重新将文件信息存放在本地微型数据库SQLite内的ScannedFile表内。并删除WaitScanFile表内该文件的信息。直至WaitScanFile表为空。引擎停止,病毒扫描结束。提交扫描结果报告。
因为情况复杂,无法一一列举进行阐述,本领域技术人员应能意识到根据本申请提供的基本方法原理结合实际情况可以存在很多的例子,在不付出足够的创造性劳动下,应均在本申请的保护范围内。
下面请参见图3,图3为本申请实施例提供的一种跳跃性病毒的查杀***的结构框图,该***可以包括:
常规病毒查杀单元100,用于根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
已查杀目录标记单元200,用于以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
已查杀数据文件监控单元300,用于监控已查杀目录下各数据文件的数据变化情况;
跳跃性病毒判定单元400,用于当已查杀目录中出现不同于原有数据文件的新数据文件时,将新数据文件判定为跳跃性病毒;
跳跃性病毒杀毒单元500,用于以独占模式锁定跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
其中,已查杀数据文件监控单元300可以包括:
Inotify监控子单元,用于利用Inotify监控已查杀目录下各数据文件的数据变化情况;其中,数据变化包括新增数据文件、修改数据文件或替换原有数据文件。
进一步的,Inotify监控子单元可以包括:
特征值计算及特征表建立模块,用于分别计算已查杀目录下各数据文件的特征值,得到各MD5值,并根据各MD5值建立数据文件特征表;
新数据文件特征值比对模块,用于将出现数据变化的数据文件的MD5值与存储于数据文件特征表中的各MD5进行比对;
对应的,跳跃性病毒判定单元具体为:
当已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将新数据文件判定为跳跃性病毒;其中,原MD5值为存储于数据文件特征表中的MD5值。
进一步的,该查杀***还可以包括:
执行结果获取及记录单元,用于获取跳跃性病毒的杀毒操作执行结果,并利用日志记录杀毒操作执行结果;
警报信息上报单元,用于当杀毒操作执行结果为杀毒失败时,通过预设路径上报包含跳跃性病毒的警报信息。
基于上述实施例,本申请还提供了一种跳跃性病毒的查杀装置,该装置可以包括存储器和处理器,其中,该存储器中存有计算机程序,该处理器调用该存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然,该装置还可以包括各种必要的网络接口、电源以及其它零部件等。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行终端或处理器执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,且各个实施例间为递进关系,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,可参见对应的方法部分说明。以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种跳跃性病毒的查杀方法,其特征在于,包括:
根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
监控所述已查杀目录下各数据文件的数据变化情况;
当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒;
以独占模式锁定所述跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
2.根据权利要求1所述的查杀方法,其特征在于,监控所述已查杀目录下各数据文件的数据变化情况,包括:
利用Inotify监控所述已查杀目录下各数据文件的数据变化情况;其中,数据变化包括新增数据文件、修改数据文件或替换原有数据文件。
3.根据权利要求2所述的查杀方法,其特征在于,利用Inotify监控所述已查杀目录下各数据文件的数据变化情况,包括:
分别计算所述已查杀目录下各数据文件的特征值,得到各MD5值,并根据各所述MD5值建立数据文件特征表;
将出现所述数据变化的数据文件的MD5值与存储于所述数据文件特征表中的各MD5进行比对;
对应的,当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒,具体为:
当所述已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将所述新数据文件判定为跳跃性病毒;其中,所述原MD5值为存储于所述数据文件特征表中的MD5值。
4.根据权利要求1至3任一项所述的查杀方法,其特征在于,还包括:
获取所述跳跃性病毒的杀毒操作执行结果,并利用日志记录所述杀毒操作执行结果;
当所述杀毒操作执行结果为杀毒失败时,通过预设路径上报包含所述跳跃性病毒的警报信息。
5.一种跳跃性病毒的查杀***,其特征在于,包括:
常规病毒查杀单元,用于根据用户下发的病毒查杀指令对目标路径下的数据文件进行病毒查杀;
已查杀目录标记单元,用于以目录为最小单位记录每个目录中的数据文件是否已通过病毒查杀,并将已通过病毒查杀的目录标记为已查杀目录;
已查杀数据文件监控单元,用于监控所述已查杀目录下各数据文件的数据变化情况;
跳跃性病毒判定单元,用于当所述已查杀目录中出现不同于原有数据文件的新数据文件时,将所述新数据文件判定为跳跃性病毒;
跳跃性病毒杀毒单元,用于以独占模式锁定所述跳跃性病毒,并调用杀毒工具对处于锁定状态的跳跃性病毒执行杀毒操作。
6.根据权利要求5所述的查杀***,其特征在于,所述已查杀数据文件监控单元包括:
Inotify监控子单元,用于利用Inotify监控所述已查杀目录下各数据文件的数据变化情况;其中,数据变化包括新增数据文件、修改数据文件或替换原有数据文件。
7.根据权利要求6所述的查杀***,其特征在于,所述Inotify监控子单元包括:
特征值计算及特征表建立模块,用于分别计算所述已查杀目录下各数据文件的特征值,得到各MD5值,并根据各所述MD5值建立数据文件特征表;
新数据文件特征值比对模块,用于将出现所述数据变化的数据文件的MD5值与存储于所述数据文件特征表中的各MD5进行比对;
对应的,所述跳跃性病毒判定单元具体为:
当所述已查杀目录中出现实际MD5值与原MD5值不同的新数据文件时,将所述新数据文件判定为跳跃性病毒;其中,所述原MD5值为存储于所述数据文件特征表中的MD5值。
8.根据权利要求5至7任一项所述的查杀***,其特征在于,还包括:
执行结果获取及记录单元,用于获取所述跳跃性病毒的杀毒操作执行结果,并利用日志记录所述杀毒操作执行结果;
警报信息上报单元,用于当所述杀毒操作执行结果为杀毒失败时,通过预设路径上报包含所述跳跃性病毒的警报信息。
9.一种跳跃性病毒的查杀装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的跳跃性病毒的查杀方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的跳跃性病毒的查杀方法的步骤。
CN201810981813.1A 2018-08-27 2018-08-27 一种跳跃性病毒的查杀方法、***、装置及可读存储介质 Active CN109325347B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810981813.1A CN109325347B (zh) 2018-08-27 2018-08-27 一种跳跃性病毒的查杀方法、***、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810981813.1A CN109325347B (zh) 2018-08-27 2018-08-27 一种跳跃性病毒的查杀方法、***、装置及可读存储介质

Publications (2)

Publication Number Publication Date
CN109325347A CN109325347A (zh) 2019-02-12
CN109325347B true CN109325347B (zh) 2020-11-03

Family

ID=65263429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810981813.1A Active CN109325347B (zh) 2018-08-27 2018-08-27 一种跳跃性病毒的查杀方法、***、装置及可读存储介质

Country Status (1)

Country Link
CN (1) CN109325347B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115422121B (zh) * 2022-07-25 2023-06-06 安芯网盾(北京)科技有限公司 利用inotify监控文件的方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7263616B1 (en) * 2000-09-22 2007-08-28 Ge Medical Systems Global Technology Company, Llc Ultrasound imaging system having computer virus protection
CN102799823A (zh) * 2012-07-13 2012-11-28 北京江民新科技术有限公司 一种病毒检测方法和***
CN102982121A (zh) * 2012-11-12 2013-03-20 北京奇虎科技有限公司 一种文件扫描方法、文件扫描装置及文件检测***
CN104932965A (zh) * 2014-03-18 2015-09-23 北京奇虎科技有限公司 对象实时监控方法和装置
CN107832613A (zh) * 2017-11-25 2018-03-23 四川兴昌盛科技有限公司 一种计算机病毒处理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7263616B1 (en) * 2000-09-22 2007-08-28 Ge Medical Systems Global Technology Company, Llc Ultrasound imaging system having computer virus protection
CN102799823A (zh) * 2012-07-13 2012-11-28 北京江民新科技术有限公司 一种病毒检测方法和***
CN102982121A (zh) * 2012-11-12 2013-03-20 北京奇虎科技有限公司 一种文件扫描方法、文件扫描装置及文件检测***
CN104932965A (zh) * 2014-03-18 2015-09-23 北京奇虎科技有限公司 对象实时监控方法和装置
CN107832613A (zh) * 2017-11-25 2018-03-23 四川兴昌盛科技有限公司 一种计算机病毒处理方法

Also Published As

Publication number Publication date
CN109325347A (zh) 2019-02-12

Similar Documents

Publication Publication Date Title
US11379582B2 (en) Methods and apparatus for malware threat research
KR101647487B1 (ko) 패치파일 분석시스템과 분석방법
US8151142B2 (en) Thread interception and analysis
US8484737B1 (en) Techniques for processing backup data for identifying and handling content
US6934857B1 (en) Security system and method for handheld computers
US11159541B2 (en) Program, information processing device, and information processing method
US20120030766A1 (en) Method and system for defining a safe storage area for use in recovering a computer system
US20130125237A1 (en) Offline extraction of configuration data
JP4705962B2 (ja) データ機密制御システム
CN109325347B (zh) 一种跳跃性病毒的查杀方法、***、装置及可读存储介质
KR101233810B1 (ko) 컴퓨터의 시스템자원 및 프로세스의 보호 및 격리장치와 그방법
Moonsamy et al. Contrasting permission patterns between clean and malicious Android applications
JP4807289B2 (ja) 情報処理装置及びファイル処理方法並びにプログラム
Dewald et al. Incident Analysis and Forensics in Docker Environments
Basu et al. Unsafe at any copy: Name collisions from mixing case sensitivities
JP2004139292A (ja) アクセス制御のポリシー診断システム
KR100897479B1 (ko) 파일백업 방법
JP2002312205A (ja) アクセスログ情報の保存処理方法とその保存処理装置およびその処理プログラム
White Identifying the unknown in user space memory
JP2009026228A (ja) データ機密制御システム
JP2000112890A (ja) 不正操作防止と追跡装置
KR101354877B1 (ko) 스레드 인터셉션을 위한 시스템, 방법 및 컴퓨터 판독가능 매체
CN112579358B (zh) 备份点检测方法、装置、设备及存储介质
CN114661575A (zh) 程序跟踪方法、装置、设备及计算机可读存储介质
JP2005099982A (ja) ファイル監視装置

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