CN103679031B - 一种文件病毒免疫的方法和装置 - Google Patents
一种文件病毒免疫的方法和装置 Download PDFInfo
- Publication number
- CN103679031B CN103679031B CN201310683012.4A CN201310683012A CN103679031B CN 103679031 B CN103679031 B CN 103679031B CN 201310683012 A CN201310683012 A CN 201310683012A CN 103679031 B CN103679031 B CN 103679031B
- Authority
- CN
- China
- Prior art keywords
- behavior
- file
- operation behavior
- information
- virus
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 183
- 241000700605 Viruses Species 0.000 title claims abstract description 105
- 230000000875 corresponding effect Effects 0.000 claims abstract description 153
- 230000008569 process Effects 0.000 claims abstract description 129
- 238000012544 monitoring process Methods 0.000 claims abstract description 98
- 238000005516 engineering process Methods 0.000 claims abstract description 73
- 206010000117 Abnormal behaviour Diseases 0.000 claims abstract description 57
- 230000009471 action Effects 0.000 claims abstract description 44
- 230000003612 virological effect Effects 0.000 claims abstract description 22
- 238000003745 diagnosis Methods 0.000 claims abstract description 21
- 230000000977 initiatory effect Effects 0.000 claims abstract description 19
- 238000001514 detection method Methods 0.000 claims abstract description 16
- 230000000694 effects Effects 0.000 claims abstract description 15
- 230000002159 abnormal effect Effects 0.000 claims description 21
- 238000012986 modification Methods 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 19
- 230000003053 immunization Effects 0.000 claims description 14
- 238000002649 immunization Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 12
- 238000009434 installation Methods 0.000 claims description 10
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000004321 preservation Methods 0.000 claims description 2
- 230000006399 behavior Effects 0.000 description 272
- 230000006870 function Effects 0.000 description 31
- 230000002155 anti-virotic effect Effects 0.000 description 26
- 238000013515 script Methods 0.000 description 16
- 238000004458 analytical method Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 208000015181 infectious disease Diseases 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 241000726445 Viroids Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000002574 poison Substances 0.000 description 1
- 231100000614 poison Toxicity 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000003319 supportive effect Effects 0.000 description 1
- 238000012795 verification Methods 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
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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种文件病毒免疫的方法和装置,其中,方法包括:在病毒检测引擎的检测通知任务发出后,通过监控技术,截获与文件有关的操作行为请求;根据操作行为请求,进行行为识别,得到操作行为的信息,操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象;根据操作行为的信息,判断操作行为是否为由病毒导致的异常行为;若该操作行为是由病毒导致的异常行为,则通过病毒检测引擎的提示界面向用户发出提示信息或拦截该操作行为。根据该方案,对待免疫的文件的监控不依赖与现有的特征库,具有实时性,并且对病毒行为的判断结合了文件信息、发起进程、动作特点,有效提高了判断的准确性。
Description
技术领域
本发明涉及计算机安全技术领域,具体涉及一种文件病毒免疫方法和装置。
背景技术
随着计算机技术的发展,各类应用程序已渗入到生产、生活的各个领域,为用户带来了极大的便利,提高了生产效率。应用程序的执行依赖于各类计算机文件,例如,文本文件、可执行文件、动态链接库文件等。这些文件记录数据结果,或者用于存储程序信息。文件可能被病毒或恶意程序感染,影响应用程序的执行,或者其中存储的个人数据被非法读取、修改,使用户的利益受到威胁。
现阶段防止病毒或恶意程序主要依赖于传统的特征库模式,基于特征库对运行程序进行实时扫描。特征库是由厂商收集到的恶意程序样本的特征码组成,查杀过程中,引擎会读取文件并与特征库中的所有特征码进行匹配,如果发现由程序代码被命中,就可以判定该文件程序被病毒或恶意程序感染。特征库匹配是查杀已知恶意程序的一项有效技术,但随着恶意程序数量呈几何增长,特征库的生成与更新具有滞后性。此外,扫描的实时运行也会消耗大量的系统资源。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种文件病毒免疫方法和装置。
根据本发明的一个方面,提供了一种文件病毒免疫方法,包括:在病毒检测引擎的检测通知任务发出后,通过监控技术,截获与文件有关的操作行为请求;根据操作行为请求,进行行为识别,得到操作行为的信息,操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象;根据操作行为的信息,判断操作行为是否为由病毒导致的异常行为;若该操作行为是由病毒导致的异常行为,则向用户发出提示信息或拦截该操作行为。
根据本发明的另一方面,提供了一种文件病毒免疫装置,包括:监控模块,适于接收病毒检测引擎的检测通知,通过监控技术截获与文件有关的操作行为请求;识别模块,适于根据操作行为请求,进行行为识别,得到操作行为的信息,所述操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象;判断模块,适于根据操作行为的信息,判断操作行为是否为由病毒导致的异常行为;处理模块,适于在判断模块判断出操作行为是由病毒导致的异常行为的情况下,通过病毒检测引擎的提示界面向用户发出提示信息或拦截所述操作行为。
根据本发明的文件病毒免疫方法和装置,病毒检测引擎的检测通知任务发出后,在监控到对文件的操作行为请求时,得到该行为的发起进程、行为对应动作及行为对象等操作行为的信息,综合上述操作行为的信息,判断出对特定文件的操作行为是否为病毒导致的异常行为,然后,拦截异常行为或通过病毒检测引擎的提示界面向用户提供提示信息。根据该方案,对待免疫的文件的监控不依赖与现有的特征库,具有实时性,并且对病毒行为的判断结合了文件信息、发起进程、动作特点,有效提高了判断的准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的文件病毒免疫方法的流程图;
图2示出了根据本发明另一个实施例的文件病毒免疫方法的流程图;
图3示出了根据本发明另一个实施例的文件病毒免疫方法的流程图;
图4示出了根据本发明另一个实施例的文件病毒免疫方法的流程图;
图5示出了根据本发明另一个实施例的文件病毒免疫装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
本发明中所说的文件包括存储在存储设备上的数据文件,通常存放在特定的文件夹或目录中,以及计算机实现外部设备管理的设备文件。
图1示出了根据本发明一个实施例的文件病毒免疫方法的流程图,如图1所示,该方法包括如下步骤:
步骤S110,在病毒检测引擎的检测通知任务发出后,通过监控技术,截获与文件有关的操作行为请求。
常见的计算机操作系统,如Windows等,都为开发人员提供有多种应用程序开发接口(API),各种应用层程序都是通过调用相应的API来实现的,病毒及恶意程序也不例外。因此,监控对文件的操作行为请求实际上就是监控能够实现文件操作的API函数的调用请求。
步骤S120,根据操作行为请求,进行行为识别,得到操作行为的信息。
这里,操作行为的信息包括:发起该行为的进程,操作行为对应的动作和/或行为对应的对象,具体地,该步骤可以包括:
在监控到有程序请求调用操作文件的API时,获取发起该请求的进程,即该操作行为的发起进程;
根据API的类型或名称得知该API对应的文件操作动作,即为该操作行为对应的动作。例如,某一程序请求调用CreateFile这个API函数,而该API函数是Windows系统用于创建文件的函数,则可以得知操作行为对应的动作是创建一个新文件;
解析该应用程序请求调用的API函数的参数,获取操作对象以及操作对象信息,操作对象信息包括:文件扩展名、文件路径、文件属性等。
步骤S130,根据操作行为的信息,判断操作行为是否为由病毒导致的异常行为。
综合考虑步骤S120中所述的操作行为发起进程、操作行为对应的动作,以及行为对应的对象进行判断。几种可能的情况是:对指定文件进行操作的进程是可疑的恶意进程;正常进程对可能的恶意文件执行了操作,例如读取了非指定目录下的文件或执行了脚本文件;以及进程对指定文件执行了异常的动作,例如修改了文件的注册表关联项。
步骤S140,若操作行为是由病毒导致的异常行为,则向用户发出提示信息或拦截操作行为。
对于确定的病毒行为,可以直接拦截;对于无法直接确定的病毒行为,可以向用户发出提示信息,根据用户反馈,选择拦截或不拦截。
根据本发明上述实施例提供的方法,在病毒检测引擎的检测通知任务发出后,监控到对文件的操作行为请求,得到该行为的发起进程、行为对应动作及行为对象等操作行为的信息,综合上述操作信息,判断出对特定文件的操作行为是否为病毒导致的异常行为,然后,拦截异常行为或向用户提供提示信息。根据该方案,对待免疫的文件的监控不依赖与现有的特征库,具有实时性,并且对病毒行为的判断结合了文件信息、发起进程、动作特点,有效提高了判断的准确性。
图2示出了根据本发明另一实施例的文件病毒免疫方法的流程图,如图2所示,该方法包括如下步骤:
步骤S200,接收病毒检测引擎发出的检测通知。
本发明提供的方法应用于客户端时,通过病毒扫描应用程序实现,扫描应用程序通常采用引擎扫描方式对文件进行扫描,可以采用的杀毒引擎可以包括:云查杀引擎,QVM(Qihoo Virtual Machine,人工智能引擎)引擎,小红伞杀毒引擎等任意现有已存在的杀毒引擎。病毒扫描应用程序中可能集成有多个杀毒引擎。多个引擎之间,例如第一杀毒引擎和第二杀毒引擎之间可以采用并行查杀的方式,即当第一杀毒引擎在查杀过程中,可以将已查杀过的文件中的未确定文件输入到第二杀毒引擎中进行查杀,而不必等到第一杀毒引擎查杀完所有待查杀文件,再由第二杀毒引擎进行查杀。
第一杀毒引擎可以包括:用于查杀PE类型文件的云查杀引擎,和/或QVM引擎。
第二杀毒引擎是查杀非PE文件病毒的引擎。第二杀毒引擎主要指对除经过第一杀毒引擎查杀后的确定文件以外的其它文件进行扫描的杀毒引擎,需要说明的是,该第二杀毒引擎可以具有对所有类型文件进行查杀的能力,当本实施例中采用并行查杀的方式时,可以减少每一种杀毒引擎的查杀数量,从而提高查杀速度,以便有效利用系统资源。本实施例中第二杀毒引擎可以包括至少一个杀毒引擎,例如,该第二杀毒引擎可以为BitDefender杀毒引擎,和/或小红伞杀毒引擎,和/或其它现有已存在的杀毒引擎等。
步骤S210,通过监控技术,截获与文件有关的操作行为请求。
在本实施例及以下实施例中,以Windows系统提供的API函数为例,说明具体实施过程。本领域技术人员在不同的系统中可以采用其他方式或不同的函数实现相同的目的。
首先,该步骤中的监控技术包括文件监控技术。对于文件监控技术,能够监控的操作行为的对应动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件。通过捕获(hook)具体的API函数实现对文件的监控,例如,Windows系统通过WriteFile函数向文件指针指向位置的文件写数据,通过ReadFile函数从文件中读出数据,这两个函数不但可以读取写磁盘的文件,也可以接收和发送网络的数据,以及设备文件,例如读写串口、USB、并口等设备的数据。对删除文件、创建文件等操作行为的监控也以类似方式实现,此处不再赘述。
监控技术还包括注册表监控技术。具体地,对于注册表监控技术,监控的操作行为对应的动作包括:修改注册表中与文件的配置信息关联的表项。注册表中记录有应用程序的设置信息,注册表中与文件配置信息关联的表项包括:文件扩展名与应用程序的关联,即文件的默认打开程序,以及将可执行文件写入开机启动项等。应用程序对关联表项的修改通常是通过修改键值项数据实现。Windows系统中提供了多个操作注册表的API函数,例如RegSetValue函数,用于设置指定的表项和子项的默认值。与文件监控技术类似地,捕获(hook)该函数,分析其参数,得到需要的操作行为信息。
监控技术还包括网络监控技术。对于网络监控技术,监控的操作行为对应的动作包括:上传文件和/或下载文件。
监控技术还包括对程序的资源占用情况进行监控,监控的内容具体包括:当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息。
步骤S220,根据操作行为请求,进行行为识别,得到操作行为的信息。
这里,操作行为的信息包括:发起该行为的进程,操作行为对应的动作和/或行为对应的对象,具体地,该步骤可以包括:
在监控到有程序请求调用操作文件的API时,获取发起该请求的进程,即该操作行为的发起进程;
根据API的类型或名称得知该API对应的文件操作动作,即为该操作行为对应的动作。例如,某一程序请求调用CreateFile这个API函数,而该API函数是Windows系统用于创建文件的函数,则可以得知操作行为对应的动作是创建一个新文件;
解析该应用程序请求调用的API函数的参数,获取操作对象以及操作对象信息,操作对象信息包括:文件扩展名、文件路径、文件属性等。
对程序的资源占用情况进行监控时,该步骤中的行为识别还包括:获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
这可以针对客户端在没有病毒却由于资源占用导致行速度变慢或上网速度变慢的问题,自动识别资源占用率高的启动项进程,并主动向用户进行提示,使用户可以按照需求禁止这些资源占用率高的启动项随机启动,或者,直接禁止这些资源占用率高的启动项随机启动。
资源占用情况包括对网络带宽的占用情况。例如,假设通过计算Test.exe程序占用120K/s,若当前网络带宽占用率的预设阈值为90%,当前Test.exe程序占用120K/s满足124K/s*90%,于是查看Test.exe程序是否为启动项程序或者启动项的子进程,若是,则可以在后续步骤中提示用户Test.exe程序的启动项占用网络资源。用户根据提示选择禁止随机启动该启动项,于是该启动项会在在当前客户端下次启动时被阻止开启。
步骤S230,查询操作行为的信息所包含的行为发起进程是否属于操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定操作行为不是由病毒导致的异常行为,执行步骤S240,否则执行步骤S250。
进程白名单首先包括与操作行为对应的对象所对应的白名单。以文件监控技术为例,则该步骤中所说的操作行为对应的对象即是受监控的文件。其对应的进程白名单中的内容根据该文件的信息而定,主要是根据文件的类型。对于特定类型的文件,其对应的进程白名单中保存有服务器统计出的正常程序的进程,例如,对doc文件,其对应的进程白名单中应该包括word.exe以及wps.exe等常见文字处理软件的相应进程。
进程白名单还包括具有可信任的数字签名的软件及相关进程,还可以存储与各数字签名相关的信息,例如,由可信任的公司所颁布的数字签名的合法格式,当一软件或相关进程要在客户端设备上安装或运行时,判断该软件是否具有数字签名并且该数字签名是否与所述软件名单中某一数字签名的相关信息相一致,例如,判断该软件的数字签名的格式是否与所述软件名单中所记录的某一合法格式相同。如果该判断结果为是,则判断为该软件在所述进程白名单中。
例如,可信任的数字签名的判断处理可以分为三步:一是判断该软件是否有数字签名;二是判断该数字签名的完整性和一致性,即,是否由该签名人所持有的数字证书签发的;三是判断用于签名的数字证书是否为公认的合法者所持有;例如,如果签名人是微软公司,则判断其证书颁发人是否是“Microsoft Code Signing PCA”,证书持有人名称是否为“Microsoft Corporation”。如果这三个条件均满足,则判断为是可信任的数字签名,反之则一定是不可信任的数字签名。例如,条件一和二均满足,但证书信息中的公司名字与正常的不匹配或不一致,则判断为该数字签名是非法的(因为有社会工程(socialengineering)的欺骗已被广泛地采用)。
进程白名单还包括签名标识有效的进程。客户端根据本地下载的未知程序文件的签名相关信息,生成与未知程序文件唯一对应的签名标识。
签名标识文件特征的可计算字段,可计算字段包括PE文件中除去PE校验段、签名段以及签名内容剩余部分。其中,当获取的上述文件长度未达到8的整数倍时,将其所差的位数用0补齐,以便于对其进行计算。
再次,对可计算字段进行计算,将计算结果作为签名标识。
可选地,将可计算字段作为摘要值,采用SHA1算法对其进行计算,得到与未知程序文件唯一对应的签名标识。
客户端在生成未知程序文件的签名标识后,发送查询请求至服务器端。其中,查询请求携带有该未知程序文件的签名标识以及该未知程序文件的部分或全部文件特征。服务器端接收到查询请求后,在进程白名单中对查询请求中的签名标识进行匹配,获取与签名标识相对应的查杀方法。查杀主要是:扫描/判定动作和修复动作等。其中,扫描/判定动作包括对程序文件属性及程序文件的上下文环境的扫描和判定,并当判定为恶意程序时,执行相应的修复操作。
或者,分析该进程文件目录下的其他文件以及注册表信息,如果具有完整的配套文件,如常见的dll文件、dat文件等或者具有完整的注册表信息,可以认为该进程是正规软件的进程,将该进程加入到进程白名单中。
进程白名单还包括与操作行为对应动作所对应的白名单。例如,对于下载行为,与文件的进程白名单类似地,与下载动作对应的进程白名单中也包括已统计出的安全进程,例如浏览器进程,常见下载软件的进程等。或者,进一步地,对指定文件的指定操作设定进程白名单。
可选地,在该步骤中也可以通过查询进程黑名单的方式实现同样的目的。相应地,黑名单中保存的是非安全进程及可疑进程,例如,已知的病毒或恶意程序进程,不具有数字签名的进程,或者进程文件只是单独的一个可执行文件。则该步骤可以为:
查询操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若是,则判定所述操作行为是由病毒导致的异常行为,执行步骤S250,否则执行步骤S240。
上述查询过程可以在本地黑/白名单中完成,也可以在云端完成,其中,云端的黑/白名单数据库更为完整。一般地,白名单通常由用户在客户端进行维护,用户将确定为非恶意的进程加入到白名单中进行保存,白名单中可以记录进程相关的文件名、文件路径、签名及签名标识等信息;黑名单通常由杀毒软件提供方进行维护,根据监控将确定的恶意进程加入到黑名单中进行保存。一种查询方法是,先在本地白名单中查询,如果未取得查询结果,再向云端黑名单查询。云端的文件黑名单预先保存有进程信息,如进程文件的特征值和安全级别信息的对应关系,服务器端确定的安全级别信息可以自定义,例如包括安全、危险、未知等级别,也可以采用一级、二级、三级等方式来进行区分,只要能够体现出各模块是否安全状态即可。或者,所述安全级别信息包括:安全等级、未知等级、可疑等级、高度可疑等级和恶意等级,其中,恶意等级为最高等级,安全等级为最低等级。例如,可以设置等级为10-20时为安全等级,等级为30-40时为未知等级,等级为50-60时为可疑等级和高度可疑等级,等级大于70时为恶意等级。
步骤S240,执行操作行为请求包含的操作行为。
对于这种情况,在本发明实施例的钩子函数执行完毕后,跳转到该文件行为请求对应API的原始入口地址去执行相应的指令即可。
步骤S250,向用户发出提示信息或拦截操作行为。
可以在桌面指定区域弹出消息窗口的方式提示用户,例如,在病毒引擎的提示界面上显示消息。将步骤S220中获取的操作信息,如进程名称,进程路径,相应的可执行文件名称,以及具体动作等展示给用户,供用户分析以做出决定,还可以根据现有的统计结果,给出进程及相应的应用程序的危险等级、安全评分等信息并向用户提供相应的建议。向用户发出提示信息也提供了一种交互的手段,这可以用于黑/白名单的更新,将用户选择执行的进程加入本地白名单中,使用户可以定制个性化的本地白名单,或者在云端统计大量用户的选择,及时更新本地白名单。
图3示出了根据本发明另一实施例的文件病毒免疫方法的流程图,如图3所示,该方法包括如下步骤:
步骤S300,接收病毒检测引擎发出的检测通知任务。
步骤S310,通过监控技术,截获与文件有关的操作行为请求。
步骤S320,根据操作行为请求,进行行为识别,得到操作行为的信息。
关于步骤S300-S320的具体内容可参见相应的步骤S210和步骤S220的描述,此处不再赘述。
步骤S330,判断操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定操作行为是由病毒导致的异常行为。
正常进程的操作行为中也可能包含有危险动作,例如,进程的文件被病毒修改,执行了异常动作,这时,只通过进程信息无法实现免疫。异常动作包括:在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;或者,修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项。本实施例通过判断异常动作对能够导致这类行为的恶意程序或病毒进行免疫。
具体地,对于要免疫的文件病毒,分析这类病毒的动作特点,统计出其动作的规则,从监控的操作请求中发现符合规则的动作时,对操作行为进行拦截。下面以Office宏病毒为例,说明具体实施过程。
在实际应用中,可以对大量Microsoft Office的宏病毒样本的研究,收集得到如下已知宏病毒动作:
1、修改注册表的动作,目的:修改注册表中安全等级设置以降低安全等级设置,或修改注册表中开机启动项以将释放的可执行文件写入开机启动项等;
2、传播动作,其利用感染模板进行传播,例如向模板目录写文件等等;其中,不同的Microsoft office会有不同的感染模板,例如Windows7系统,默认情况下:
MicrosoftWord的感染模板文件是C:\Users\【用户名】\AppData\Roaming\Microsoft\Templates\normal.dot
Excel的感染模板目录:C:\Users\【用户名】\AppData\Roaming\Microsoft\Excel\xlstart和Excel安装目录\office11\xlstart
3、发作时动作,包括:
3.1、在某个时间段弹窗;
3.2、重复复制工作表,影响软件正常使用;
3.3、释放可执行文件,具体可以包括:创建文件、写文件、执行文件等等。
对于Office进程,上述动作都属于异常动作,相应的操作行为可能是病毒导致的异常行为。进一步地,还可以结合对应的对象来判定操作行为是否为由病毒导致的异常行为。表1示出了常见的宏病毒行为和该行为对应的对象。
以表1中的第1,2种情况为例,在实际应用中,可以预先读取注册表,获取Office的模板文件和模板目录,例如在win7系统,默认情况下Word的模板文件为:C:\Users\【用户名】\AppData\Roaming\Microsoft\Templates\normal.dot,Excel的模板目录为:C:\Users\【用户名】\AppData\Roaming\Microsoft\Excel\xlstart,或者Excel的安装目录\office11\xlstart。通常Excel的模板目录(xlstart目录)下是不允许存放文件的,故如果操作行为的信息表明相应文件行为是针对xlstart目录下文件的,故可以确定相应文件操作行为是宏病毒导致的异常行为。
表1
对于Office以外的其他类型的进程或文件,异常动作还包括:向在URL黑名单中的网址上传文件和/或下载文件等。
步骤S340,向用户发出提示信息或拦截操作行为。
关于该步骤可参见步骤S250的描述,此处不再赘述。
图4示出了根据本发明另一实施例的文件病毒免疫方法,如图4所示,该方法包括如下步骤:
步骤S400,接收病毒检测引擎发出的检测通知任务。
步骤S410,通过监控技术,截获与文件有关的操作行为请求。
步骤S420,根据操作行为请求,进行行为识别,得到操作行为的信息。
关于步骤S400-S420的具体内容可参见相应的步骤S210和步骤S220的描述,此处不再赘述。
步骤S430,判断操作行为的信息所包含的行为对应的对象是否属于文件黑名单,若是,则判定操作行为是由病毒导致的异常行为,执行步骤S440。
对于部分安全进程,其执行的正常行为也可能是具有威胁性的。本实施例适用于对这种情况进行免疫。例如,位于进程白名单中的某一进程执行了被病毒感染的可执行文件,进程本身及执行行为没有问题,但该文件运行后又可能访问其他文件,造成更多的文件被感染,形成了病毒的传播。类似地,读取陌生位置的脚本文件或向非指定目录写文件等行为也是潜在的危险行为。在本实施例中,文件黑名单中保存的是与特定进程的特定行为对应的非安全文件的信息,包括文件名、扩展名、文件路径等,这些信息通过步骤S420获取。下面以CAD脚本文件为例,详细说明文件病毒免疫的过程。
当CAD进程发起的脚本文件操作行为请求为读操作行为请求时,可以根据读请求对应的脚本文件所在的目录确定脚本文件操作请求是否合法。例如CAD进程所请求的文件如果是位于CAD软件的安装目录,则认为该操作请求合法,因为一般情况下,位于CAD软件安装目录下的脚本文件,是CAD软件运行所必须的支持性的脚本文件,CAD进程读取这些脚本文件的请求可以确定为合法;而如果CAD进程所请求的脚本文件位于图纸文件所在目录或者其他用户创建的目录,则认为该操作请求非法,这是因为,在图纸文件目录或其他用户创建目录下存在的脚本文件,可能是恶意的脚本文件,例如,以lsp为扩展名的脚本文件。则对应于CAD进程的该行为,文件黑名单中包括图纸文件目录或其他用户创建目录下存在的以lsp为扩展名的脚本文件。
当CAD进程发起的脚本文件操作请求为写操作请求时,可以根据写操作请求写入脚本文件的目录信息确定该请求是否合法,如果写入目录是CAD安装目录、用户配置目录或第三方插件的配置目录,则该认为该操作请求非法。则对于CAD进程的写操作,文件黑名单中应该包括上述配置目录。
与步骤S230中所述的进程白名单类似地,该步骤中的黑名单也可以包括本地文件黑名单和云端文件黑名单,其中,云端的黑名单数据库更为完整。一种查询方法是,先在本地查询,如果未取得查询结果,再向云端查询。其中,云端的黑名单预先保存有文件的特征值和安全级别信息的对应关系,服务器端确定的安全级别信息可以自定义,例如包括安全、危险、未知等级别,也可以采用一级、二级、三级等方式来进行区分,只要能够体现出各模块是否安全状态即可。或者,所述安全级别信息包括:安全等级、未知等级、可疑等级、高度可疑等级和恶意等级,其中,恶意等级为最高等级,安全等级为最低等级。例如,可以设置等级为10-20时为安全等级,等级为30-40时为未知等级,等级为50-60时为可疑等级和高度可疑等级,等级大于70时为恶意等级。
步骤S440,向用户发出提示信息或拦截操作行为。
该步骤可以通过步骤S250中描述的方式进行。对于向非指定目录写入文件的行为,拦截方式还可以包括:在该目录下创建与病毒或恶意程序数据中的目录名或文件名相同的安全目录或文件;为文件或目录添加拒绝访问的权限等。
根据本发明上述实施例提供的方法,在病毒检测引擎的检测通知任务发出后,监控到对文件的操作行为请求,得到该行为的发起进程、行为对应动作及行为对象等操作行为的信息,通过对发起进程,异常动作,以及可疑的对象文件进行综合的分析,判断出进程对特定文件的操作行为是否为病毒导致的异常行为,然后,拦截异常行为或通过病毒引擎提示界面等方式向用户提供提示信息。根据该方案,对待免疫的文件的监控不依赖与现有的特征库,具有实时性,并且对病毒行为的判断结合了文件信息、发起进程、动作特点,可以在本地和/或云端进行判断,为用户提供了更多的选择,有效提高了判断的效率和准确性。
图5示出了根据本发明另一实施例的文件病毒免疫装置的结构框图,如图5所示,该装置包括:监控模块510,识别模块520,判断模块530及处理模块540。
监控模块510适于接收病毒检测引擎的检测通知,通过监控技术截获与文件有关的操作行为请求。监控模块510具体适于:通过文件监控技术、注册表监控技术或网络监控技术截获与文件有关的操作行为请求。
对于文件监控技术,监控模块510能够监控的操作行为的对应动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件。监控模块510通过捕获(hook)具体的API函数实现对文件的监控,例如,Windows系统通过WriteFile函数向文件指针指向位置的文件写数据,通过ReadFile函数从文件中读出数据,这两个函数不但可以读取写磁盘的文件,也可以接收和发送网络的数据,以及设备文件,例如读写串口、USB、并口等设备的数据。对删除文件、创建文件等操作行为的监控也以类似方式实现,此处不再赘述。
对于注册表监控技术。监控模块510能监控的操作行为对应的动作包括:修改注册表中与文件的配置信息关联的表项。注册表中记录有应用程序的设置信息,注册表中与文件配置信息关联的表项包括:文件扩展名与应用程序的关联,即文件的默认打开程序,以及将可执行文件写入开机启动项等。应用程序对关联表项的修改通常是通过修改键值项数据实现。
Windows系统中提供了多个操作注册表的API函数,例如RegSetValue函数,用于设置指定的表项和子项的默认值。与文件监控技术类似地,监控模块510hook该函数,分析其参数,得到需要的操作行为信息。
对于网络监控技术,监控模块510监控的操作行为对应的动作包括:上传文件和/或下载文件。
监控模块510还适于对程序的资源占用情况进行监控。
识别模块520适于根据操作行为请求,进行行为识别,得到操作行为的信息,操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象。
具体地,在监控模块510监控到有程序请求调用操作文件的API时,识别模块520获取发起该请求的进程,即该操作行为的发起进程。识别模块520根据API的类型或名称得知该API对应的文件操作动作,即为该操作行为对应的动作。例如,某一程序请求调用CreateFile这个API函数,而该API函数是Windows系统用于创建文件的函数,则识别模块520可以得知操作行为对应的动作是创建一个新文件;识别模块520还可以解析该应用程序请求调用的API函数的参数,获取操作对象以及操作对象信息,操作对象信息包括:文件扩展名、文件路径、文件属性等。
若监控模块510通过文件监控技术截获与文件有关的操作行为请求,则识别模块520得到的所述行为对应的动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;
若监控模块510通过注册表监控技术截获与文件有关的操作行为请求,则识别模块520得到的行为对应的动作包括:修改注册表中与文件的配置信息关联的表项的动作;
若监控模块510通过网络监控技术截获与文件有关的操作行为请求,则识别模块520得到的行为对应的动作包括:上传文件和/或下载文件的动作。
若监控模块510对程序的资源占用情况进行监控,则识别模块520还适于:获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
判断模块530适于根据识别模块520得到的操作行为的信息,判断操作行为是否为由病毒导致的异常行为。
判断模块530具体适于:查询操作行为的信息所包含的行为发起进程是否属于操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定操作行为不是由病毒导致的异常行为。
判断模块530还可以通过查询进程黑名单的方式进行判定,具体地,判断模块530查询操作行为的信息所包含的行为发起进程是否属于操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若否,则判定操作行为是由病毒导致的异常行为。
判断模块530还适于:判断操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定操作行为是由病毒导致的异常行为。
具体地,这时判断模块530适于:判断行为对应的动作是否为在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;或者,判断行为对应的动作是否为修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项;或者,判断所述行为对应的动作是否向URL黑名单中的网址上传文件和/或下载文件。
判断模块530还适于:判断所述操作行为的信息所包含的行为对应的对象是否属于本地和/或云端保存的文件黑名单,若是,则判定所述操作行为是由病毒导致的异常行为。
处理模块540适于在判断模块530判断出操作行为是由病毒导致的异常行为的情况下,通过病毒引擎的提示界面向用户发出提示信息或拦截操作行为。
处理模块540可以在桌面指定区域弹出消息窗口,将识别模块520获取的操作信息,如进程名称,进程路径,相应的可执行文件名称,以及具体动作等展示给用户,供用户分析以做出决定,处理模块540还可以根据现有的统计结果,给出进程及相应的应用程序的危险等级、安全评分等信息并向用户提供相应的建议。处理模块540通过显示风险信息也提供了一种交互的手段,这可以用于黑/白名单的更新,将用户选择执行的进程加入本地白名单中,使用户可以定制个性化的本地白名单,或者在云端统计大量用户的选择,及时更新名单。
处理模块540还适于:在判断模块判断出所述操作行为不是由病毒导致的异常行为的情况下,执行操作行为。
根据本发明上述实施例提供的装置,监控模块在接收病毒检测引擎的检测通知后,监控到对文件的操作行为请求时,识别模块得到该行为的发起进程、行为对应动作及行为对象等操作行为的信息,判断模块通过对发起进程,异常动作,以及可疑的对象文件进行综合的分析,判断出进程对特定文件的操作行为是否为病毒导致的异常行为,然后,处理模块拦截异常行为或通过病毒引擎提示界面向用户提供提示信息。根据该方案,对待免疫文件的监控不依赖与现有的特征库,具有实时性,并且对病毒行为的判断结合了文件信息、发起进程、动作特点,可以在本地和/或云端进行判断,为用户提供了更多的选择,有效提高了判断的效率和准确性。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的文件病毒免疫装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:
A1、一种文件病毒免疫方法,包括:
在病毒检测引擎的检测通知任务发出后,通过监控技术,截获与文件有关的操作行为请求;
根据所述操作行为请求,进行行为识别,得到所述操作行为的信息,所述操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象;
根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为;
若所述操作行为是由病毒导致的异常行为,则向用户发出提示信息或拦截所述操作行为。
A2、根据A1所述的方法,所述监控技术包括:文件监控技术、注册表监控技术或网络监控技术。
A3、根据A2所述的方法,若所述监控技术为文件监控技术,所述行为对应的动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件;
若所述监控技术为注册表监控技术,所述行为对应的动作包括:修改注册表中与文件的配置信息关联的表项;
若所述监控技术为网络监控技术,所述行为对应的动作包括:上传文件和/或下载文件。
A4、根据A2所述的方法,所述监控技术还包括对程序的资源占用情况进行监控,所述根据操作行为请求,进行行为识别,得到所述操作行为的信息具体包括:
获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;
根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
A5、根据A1-A3任一项所述的方法,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程白名单;
所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定所述操作行为不是由病毒导致的异常行为;
所述方法还包括:若所述操作行为不是由病毒导致的异常行为,则执行所述操作行为。
A6、根据A1-A3任一项所述的方法,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程黑名单;
所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若否,则判定所述操作行为是由病毒导致的异常行为。
A7、根据A1-A3任一项所述的方法,所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
判断所述操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定所述操作行为是由病毒导致的异常行为。
A8、根据A7所述的方法,所述异常动作包括:
在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;
或者,修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项;
或者,向在URL黑名单中的网址上传文件和/或下载文件。
A9、根据A1-A3任一项所述的方法,所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
判断所述操作行为的信息所包含的行为对应的对象是否属于本地和/或云端保存的文件黑名单,若是,则判定所述操作行为是由病毒导致的异常行为。
B10、一种文件病毒免疫装置,包括:
监控模块,适于接收病毒检测引擎的检测通知,通过监控技术截获与文件有关的操作行为请求;
识别模块,适于根据所述操作行为请求,进行行为识别,得到所述操作行为的信息,所述操作行为的信息包括行为发起进程以及行为对应的动作和/或行为对应的对象;
判断模块,适于根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为;
处理模块,适于在所述判断模块判断出所述操作行为是由病毒导致的异常行为的情况下,通过病毒检测引擎的提示界面向用户发出提示信息或拦截所述操作行为。
B11、根据B10所述的装置,所述监控模块具体适于:通过文件监控技术、注册表监控技术或网络监控技术截获与文件有关的操作行为请求。
B12、根据B10所述的装置,若所述监控模块通过所述文件监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;
若所述监控模块通过所述注册表监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:修改注册表中与文件的配置信息关联的表项的动作;
若所述监控模块通过所述网络监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:上传文件和/或下载文件的动作。
B13、根据B11所述的装置,所述监控模块还适于对程序的资源占用情况进行监控,所述识别模块具体适于:
获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;
根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
B14、根据B10-B12任一项所述的装置,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程白名单;
所述判断模块具体适于:查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定所述操作行为不是由病毒导致的异常行为;
所述处理模块还适于:在所述判断模块判断出所述操作行为不是由病毒导致的异常行为的情况下,执行所述操作行为。
B15、根据B10-B12任一项所述的装置,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程黑名单;
所述判断模块具体适于:查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若否,则判定所述操作行为是由病毒导致的异常行为。
B16、根据B10-B12任一项所述的装置,所述判断模块具体适于:
判断所述操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定所述操作行为是由病毒导致的异常行为。
B17、根据B16所述的装置,所述判断模块具体适于:
判断所述行为对应的动作是否为在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;
或者,判断所述行为对应的动作是否为修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项;
或者,判断所述行为对应的动作是否向URL黑名单中的网址上传文件和/或下载文件。
B18、根据B10-B12任一项所述的装置,所述判断模块具体适于:判断所述操作行为的信息所包含的行为对应的对象是否属于本地和/或云端保存的文件黑名单,若是,则判定所述操作行为是由病毒导致的异常行为。
Claims (10)
1.一种文件病毒免疫方法,包括:
在病毒检测引擎的检测通知任务发出后,通过监控技术,截获与文件有关的操作行为请求;
根据所述操作行为请求,进行行为识别,得到所述操作行为的信息,所述操作行为的信息包括行为发起进程以及行为对应的动作和行为对应的对象,其中,所述监控技术包括:文件监控技术、注册表监控技术或网络监控技术;若所述监控技术为文件监控技术,所述行为对应的动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件;若所述监控技术为注册表监控技术,所述行为对应的动作包括:修改注册表中与文件的配置信息关联的表项;若所述监控技术为网络监控技术,所述行为对应的动作包括:上传文件和/或下载文件;
根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为;
若所述操作行为是由病毒导致的异常行为,则向用户发出提示信息或拦截所述操作行为;
其中,所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:判断所述操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定所述操作行为是由病毒导致的异常行为;所述异常动作包括:在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;或者,修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项;或者,向在URL黑名单中的网址上传文件和/或下载文件。
2.根据权利要求1所述的方法,所述监控技术还包括对程序的资源占用情况进行监控,所述根据操作行为请求,进行行为识别,得到所述操作行为的信息具体包括:
获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;
根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
3.根据权利要求1所述的方法,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程白名单;
所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定所述操作行为不是由病毒导致的异常行为;
所述方法还包括:若所述操作行为不是由病毒导致的异常行为,则执行所述操作行为。
4.根据权利要求1所述的方法,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程黑名单;
所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若否,则判定所述操作行为是由病毒导致的异常行为。
5.根据权利要求1所述的方法,所述根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为具体包括:
判断所述操作行为的信息所包含的行为对应的对象是否属于本地和/或云端保存的文件黑名单,若是,则判定所述操作行为是由病毒导致的异常行为。
6.一种文件病毒免疫装置,包括:
监控模块,适于接收病毒检测引擎的检测通知,通过监控技术截获与文件有关的操作行为请求;
识别模块,适于根据所述操作行为请求,进行行为识别,得到所述操作行为的信息,所述操作行为的信息包括行为发起进程以及行为对应的动作和行为对应的对象;
其中,所述监控模块具体适于:通过文件监控技术、注册表监控技术或网络监控技术截获与文件有关的操作行为请求;若所述监控模块通过所述文件监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;若所述监控模块通过所述注册表监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:修改注册表中与文件的配置信息关联的表项的动作;若所述监控模块通过所述网络监控技术截获与文件有关的操作行为请求,所述识别模块得到的所述行为对应的动作包括:上传文件和/或下载文件的动作;
判断模块,适于根据所述操作行为的信息,判断所述操作行为是否为由病毒导致的异常行为;
处理模块,适于在所述判断模块判断出所述操作行为是由病毒导致的异常行为的情况下,通过病毒检测引擎的提示界面向用户发出提示信息或拦截所述操作行为;
其中,所述判断模块具体适于:判断所述操作行为的信息所包含的行为对应的动作是否为异常动作,若是,则判定所述操作行为是由病毒导致的异常行为;
所述判断模块进一步具体适于:判断所述行为对应的动作是否为在不正确的安装目录或用户配置目录中执行的读文件、写文件、修改文件、删除文件、执行文件和/或创建文件的动作;或者,判断所述行为对应的动作是否为修改注册表中与文件的配置信息关联的表项以降低文件安全等级或将释放的可执行文件写入开机启动项;或者,判断所述行为对应的动作是否向URL黑名单中的网址上传文件和/或下载文件。
7.根据权利要求6所述的装置,所述监控模块还适于对程序的资源占用情况进行监控,所述识别模块具体适于:
获取当前客户端从启动开始至当前时间所运行过的各程序的资源占用信息;
根据各程序的资源占用信息和当前客户端的可用资源信息,分别计算各程序的资源占用率。
8.根据权利要求6所述的装置,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程白名单;
所述判断模块具体适于:查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程白名单,若是,则判定所述操作行为不是由病毒导致的异常行为;
所述处理模块还适于:在所述判断模块判断出所述操作行为不是由病毒导致的异常行为的情况下,执行所述操作行为。
9.根据权利要求6所述的装置,本地和/或云端保存有指定的行为对应的动作和/或行为对应的对象的进程黑名单;
所述判断模块具体适于:查询所述操作行为的信息所包含的行为发起进程是否属于所述操作行为的信息所包含的行为对应的动作和/或行为对应的对象对应的进程黑名单,若否,则判定所述操作行为是由病毒导致的异常行为。
10.根据权利要求6所述的装置,所述判断模块具体适于:判断所述操作行为的信息所包含的行为对应的对象是否属于本地和/或云端保存的文件黑名单,若是,则判定所述操作行为是由病毒导致的异常行为。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310683012.4A CN103679031B (zh) | 2013-12-12 | 2013-12-12 | 一种文件病毒免疫的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310683012.4A CN103679031B (zh) | 2013-12-12 | 2013-12-12 | 一种文件病毒免疫的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103679031A CN103679031A (zh) | 2014-03-26 |
CN103679031B true CN103679031B (zh) | 2017-10-31 |
Family
ID=50316541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310683012.4A Active CN103679031B (zh) | 2013-12-12 | 2013-12-12 | 一种文件病毒免疫的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103679031B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095741A (zh) * | 2014-05-13 | 2015-11-25 | 北京奇虎测腾科技有限公司 | 一种应用程序的行为监测方法和系统 |
US20160381051A1 (en) * | 2015-06-27 | 2016-12-29 | Mcafee, Inc. | Detection of malware |
CN106709334A (zh) * | 2015-11-17 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 检测入侵脚本文件的方法、装置及系统 |
CN105760759A (zh) * | 2015-12-08 | 2016-07-13 | 哈尔滨安天科技股份有限公司 | 一种基于进程监控的文档保护方法及系统 |
CN105389521B (zh) * | 2015-12-18 | 2019-08-23 | 北京金山安全管理系统技术有限公司 | 一种对计算机系统中文件进行安全保护的方法 |
CN105653974B (zh) * | 2015-12-23 | 2019-07-23 | 北京奇虎科技有限公司 | 一种文档防护方法及装置 |
CN107102937B (zh) * | 2016-02-19 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 一种用户界面测试方法和装置 |
CN105893846A (zh) * | 2016-04-22 | 2016-08-24 | 北京金山安全软件有限公司 | 一种保护目标应用程序的方法、装置及电子设备 |
CN106022118A (zh) * | 2016-05-20 | 2016-10-12 | 北京金山安全软件有限公司 | 安全保护处理方法及装置 |
CN106548070A (zh) * | 2016-07-18 | 2017-03-29 | 北京安天电子设备有限公司 | 一种在待机时间防御勒索者病毒的方法及系统 |
CN106874759B (zh) * | 2016-09-26 | 2020-04-28 | 深圳市安之天信息技术有限公司 | 一种木马随机化行为的识别方法及系统 |
CN106778232A (zh) * | 2016-12-26 | 2017-05-31 | 努比亚技术有限公司 | 一种信息分析方法及电子设备 |
EP3635603A4 (en) * | 2017-05-30 | 2021-03-03 | Cyemptive Technologies, Inc. | REAL TIME DETECTION AND PROTECTION AGAINST MALWARE AND STEGANOGRAPHY IN ONE CORE MODE |
CN108121913A (zh) * | 2017-09-26 | 2018-06-05 | 江苏神州信源系统工程有限公司 | 一种操作管理方法及装置 |
CN107871079A (zh) * | 2017-11-29 | 2018-04-03 | 深信服科技股份有限公司 | 一种可疑进程检测方法、装置、设备及存储介质 |
CN109472144B (zh) * | 2017-12-29 | 2021-09-28 | 北京安天网络安全技术有限公司 | 一种防御病毒对文件进行操作的方法、装置和存储介质 |
CN109241734A (zh) * | 2018-08-10 | 2019-01-18 | 航天信息股份有限公司 | 一种防护软件运行效率优化方法及系统 |
CN109492391B (zh) * | 2018-11-05 | 2023-02-28 | 腾讯科技(深圳)有限公司 | 一种应用程序的防御方法、装置和可读介质 |
CN109446030A (zh) * | 2018-11-12 | 2019-03-08 | 北京芯盾时代科技有限公司 | 一种行为监测方法以及装置 |
CN109815701B (zh) * | 2018-12-29 | 2022-04-22 | 奇安信安全技术(珠海)有限公司 | 软件安全的检测方法、客户端、系统及存储介质 |
CN115114622A (zh) * | 2021-03-23 | 2022-09-27 | 奇安信科技集团股份有限公司 | 病毒扫描与展示方法和系统 |
CN114900326B (zh) * | 2022-03-30 | 2024-08-27 | 深圳市国电科技通信有限公司 | 终端指令操作的监控和防护方法、系统及存储介质 |
CN114861183A (zh) * | 2022-06-07 | 2022-08-05 | 珠海豹好玩科技有限公司 | 一种文档宏安全检测方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917955B1 (en) * | 2005-01-14 | 2011-03-29 | Mcafee, Inc. | System, method and computer program product for context-driven behavioral heuristics |
CN102194072A (zh) * | 2011-06-03 | 2011-09-21 | 奇智软件(北京)有限公司 | 一种处理计算机病毒的方法、装置及系统 |
CN102629310A (zh) * | 2012-02-29 | 2012-08-08 | 卡巴斯基实验室封闭式股份公司 | 用于保护计算机系统免遭恶意对象活动侵害的系统和方法 |
CN102646173A (zh) * | 2012-02-29 | 2012-08-22 | 成都新云软件有限公司 | 基于黑白名单的安全防护控制方法及系统 |
CN102867146A (zh) * | 2012-09-18 | 2013-01-09 | 珠海市君天电子科技有限公司 | 一种防止计算机病毒反复感染系统的方法及系统 |
-
2013
- 2013-12-12 CN CN201310683012.4A patent/CN103679031B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917955B1 (en) * | 2005-01-14 | 2011-03-29 | Mcafee, Inc. | System, method and computer program product for context-driven behavioral heuristics |
CN102194072A (zh) * | 2011-06-03 | 2011-09-21 | 奇智软件(北京)有限公司 | 一种处理计算机病毒的方法、装置及系统 |
CN102629310A (zh) * | 2012-02-29 | 2012-08-08 | 卡巴斯基实验室封闭式股份公司 | 用于保护计算机系统免遭恶意对象活动侵害的系统和方法 |
CN102646173A (zh) * | 2012-02-29 | 2012-08-22 | 成都新云软件有限公司 | 基于黑白名单的安全防护控制方法及系统 |
CN102867146A (zh) * | 2012-09-18 | 2013-01-09 | 珠海市君天电子科技有限公司 | 一种防止计算机病毒反复感染系统的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103679031A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103679031B (zh) | 一种文件病毒免疫的方法和装置 | |
US11727333B2 (en) | Endpoint with remotely programmable data recorder | |
US11636206B2 (en) | Deferred malware scanning | |
Arshad et al. | SAMADroid: a novel 3-level hybrid malware detection model for android operating system | |
US10762206B2 (en) | Automated behavioral and static analysis using an instrumented sandbox and machine learning classification for mobile security | |
JP7073343B2 (ja) | 難読化されたウェブサイトコンテンツ内のセキュリティ脆弱性及び侵入検出及び修復 | |
US10419222B2 (en) | Monitoring for fraudulent or harmful behavior in applications being installed on user devices | |
KR101558715B1 (ko) | 서버 결합된 멀웨어 방지를 위한 시스템 및 방법 | |
US20110041179A1 (en) | Malware detection | |
CN110071924B (zh) | 基于终端的大数据分析方法及系统 | |
JP2020181567A (ja) | アクセス権に基づいてコンピューティングデバイス上でタスクを実行するシステムおよび方法 | |
US20220245249A1 (en) | Specific file detection baked into machine learning pipelines | |
US20220237289A1 (en) | Automated malware classification with human-readable explanations | |
Al Shamsi | Mapping, Exploration, and Detection Strategies for Malware Universe | |
Irolla | Formalization of Neural Network Applications to Secure 3D Mobile Applications | |
Marcelli et al. | Machine Learning and other Computational-Intelligence Techniques for Security Applications. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220725 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |