CN103077353B - 主动防御恶意程序的方法和装置 - Google Patents
主动防御恶意程序的方法和装置 Download PDFInfo
- Publication number
- CN103077353B CN103077353B CN201310027641.1A CN201310027641A CN103077353B CN 103077353 B CN103077353 B CN 103077353B CN 201310027641 A CN201310027641 A CN 201310027641A CN 103077353 B CN103077353 B CN 103077353B
- Authority
- CN
- China
- Prior art keywords
- file
- dll
- danger
- establishment
- dll file
- 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 685
- 230000007123 defense Effects 0.000 title claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 652
- 238000001514 detection method Methods 0.000 claims abstract description 34
- 230000006837 decompression Effects 0.000 claims description 38
- 241000700605 Viruses Species 0.000 claims description 22
- 230000008859 change Effects 0.000 claims description 7
- 230000002265 prevention Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 description 8
- 238000007689 inspection Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 239000000047 product Substances 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000001125 extrusion Methods 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000003612 virological effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及计算机网络安全领域,公开了主动防御恶意程序的方法和装置,该方法包括:在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果是,则拦截创建的进程加载该进程的动态链接库DLL文件的操作,并将该DLL文件记录到内存的进程信息中;在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程的操作。本发明能够解决恶意程序将恶意DLL文件与可信任的白程序打包在一起,当白程序被执行时,加载恶意DLL文件,从而突破主动防御的技术问题。
Description
技术领域
本发明涉及计算机网络安全领域,具体涉及一种主动防御恶意程序的方法和装置。
背景技术
恶意程序是一个概括性的术语,指任何故意创建用来执行未经授权并通常是有害行为的程序。恶意程序可以包括病毒、木马、恶意脚本、恶意插件、恶评软件或流氓软件等。计算机病毒、后门程序、键盘记录器、密码盗取者、Word和Excel宏病毒、引导区病毒、脚本病毒、木马、犯罪程序、间谍程序和广告程序等,都为恶意程序的例子。
现有技术中,恶意程序防杀主要依赖于特征库模式。特征库由杀毒产品提供商收集到的恶意程序样本的特征码组成,而特征码为分析工程师从恶意程序中找到的和正当程序的不同之处,截取一段类似于“搜索关键词”的程序代码。在查杀过程中,引擎会读取文件并与特征库中的所有特征码“关键词”进行匹配,如果发现文件程序代码被命中,则可以判定该文件程序为恶意程序。
特征库匹配是现有技术中查杀已知恶意程序的常用技术。但是现今全球恶意程序数量呈几何级增长,基于这种爆发式的增速,特征库的生成与更新相对于病毒的产生通常滞后,导致恶意程序防杀方式无法防杀不断产生的未知恶意程序。
现有技术中,随之出现了主动防御技术,其是基于程序行为自主分析判断的实时防护技术,不以特征码作为判断恶意程序的依据,而是从设置的规则出发,直接将程序的行为作为判断程序是否为恶意程序的依据,其中衍生出在本地使用特征库、在本地设置行为阈值以及在本地启发式杀毒的方式来判别、拦截恶意程序的行为,从而在一定程度上达到保护设备的目的。
在现有技术中,出于对性能的考虑,设备中的主动防御模块只检查程序的可执行文件(例如,exe文件)是否可以信任,而不检查程序加载的DLL(DynamicLinkLibrary,动态链接库)文件。现有技术中主动防御的上述特点被一些恶意程序所利用,恶意程序使用DLL劫持技术将木马DLL与可信任的白程序打包在一起,当白程序被执行时,木马DLL就会被加载,从而实现利用白程序突破主动防御的目的。
发明内容
鉴于上述问题,本发明提出了主动防御恶意程序的方法和装置。
依据本发明的一个方面,提供了一种主动防御恶意程序的方法,该方法包括:
在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果是,则拦截创建的进程加载该进程的动态链接库DLL文件的操作,并将该DLL文件记录到内存的进程信息中;
在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程。
其中,所述根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性具体包括:
查询该创建的进程所在进程链中各个进程的进程文件的来源,根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性;
所述创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
其中,所述根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性具体包括:
判断所述各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
其中,所述根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性具体包括:
判断所述各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
其中,所述判断所述各个进程的进程文件中是否存在来自压缩包的文件具体包括:
对于所述各个进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
其中,所述根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性具体包括:
判断创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性。
其中,所述检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程具体包括:
使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则阻止待保护的设备执行该进程。
其中,所述使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测后还包括:
如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
其中,所述使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测后还包括:
如果该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
其中,所述检测记录的该进程的DLL文件是否安全后还包括:
如果该进程的DLL文件为安全文件,则删除该DLL文件的记录,并在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。
其中,所述危险操作至少包括下列操作中的一种:
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
根据本发明的另一方面,本发明提供了一种主动防御恶意程序的装置,该装置包括:
危险判断单元,适于在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果判断结果为进程具有危险性,则指示加载拦截单元进行拦截操作;
加载拦截单元,适于在创建的进程具有危险性时,拦截创建的进程加载动态链接库DLL文件的操作;指示记录单元将该DLL文件记录到内存的进程信息中;
记录单元,适于根据指示将DLL文件记录到内存的进程信息中;
安全检测单元,适于在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果检测结果为进程的DLL文件不安全,则指示执行阻止单元进行阻止操作;
执行阻止单元,适于对于DLL文件不安全的进程,阻止待保护的设备执行该进程。
其中,所述危险判断单元,具体适于查询该创建的进程所在进程链中各个进程的进程文件的来源,根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性;
所述创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
其中,所述危险判断单元,具体适于判断所述各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
其中,所述危险判断单元,具体适于判断所述各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
其中,所述危险判断单元,具体适于对于所述进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
其中,所述危险判断单元,具体适于判断创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性。
其中,所述安全检测单元,具体适于使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则检测出记录的该进程的DLL文件不安全。
其中,所述安全检测单元,还适于如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
其中,所述安全检测单元,还适于如果检测出该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
其中,所述安全检测单元,还适于如果检测出该进程的DLL文件为安全文件,则指示记录单元删除该DLL文件的记录,并指示所述加载拦截单元在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。
其中,所述危险操作至少包括下列操作中的一种:
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
根据本发明的技术方案,在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果是,则拦截创建的进程加载该进程的DLL(动态链接库)文件的操作,并将该DLL文件记录到内存的进程信息中;在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程。
由上可见,通过在待保护的设备创建进程时,检查DLL文件,对危险的DLL文件进行拦截,阻止危险DLL文件加载,并且当进程启动后执行危险操作时,对DLL文件进行检测,当DLL文件不安全时阻止进行执行,因此解决了恶意程序将恶意DLL文件与可信任的白程序打包在一起,当白程序被执行时,加载恶意DLL文件,从而突破主动防御的技术问题。
取得了能够对使用白程序加载恶意DLL文件的恶意程序进行主动防御的有益效果。并且,因为在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,对危险的DLL文件进行拦截,减小了拦截的范围,提高了对待保护的设备进行保护的运行效率。此外,在进程执行危险操作时,才对DLL文件进行检查,减少了DLL文件的检查概率,进一步提高了对待保护的设备进行保护的运行效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的主动防御恶意程序的装置的结构图;
图2示出了根据本发明一个实施例的主动防御恶意程序的方法的流程图;
图3示出了根据本发明一个实施例的主动防御恶意程序的方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参见图1,示出了根据本发明一个实施例的主动防御恶意程序的装置的结构图。该装置100可以位于单独的物理设备,也可以位于待保护的设备中,例如作为PC(个人电脑)等终端的主动防御恶意程序的安全检测模块,在此没有特别限制。该装置100包括危险判断单元110、加载拦截单元120、记录单元130、安全检测单元140和执行阻止单元150。
危险判断单元110,适于在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果判断结果为进程具有危险性,则指示加载拦截单元120进行拦截操作。
举例而言,危险判断单元110查询该创建的进程所在进程链中各个进程的进程文件的来源,根据各个进程的进程文件的来源判断该创建的进程是否具有危险性。对进程间的父子关系进行记录,形成进程树,进程树中记录各个进程的信息,例如创建时间、进程名称等,创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
通常情况下,恶意程序来源于网络,包括网络下载及即时通讯工具中传输到终端等情况,另外使用白程序的恶意程序多采用压缩包的形式进行传播,因此,在一实施例中将进程文件来源于网络下载或压缩包解压的进程判定为具有危险性,具体判断如下所述。
例如,危险判断单元110判断该创建的进程所在进程链中各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
又例如,危险判断单元110判断该创建的进程所在进程链中各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
进一步地,危险判断单元110对于进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
例如,进程链中进程A的父进程A1为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含进程A的进程文件,则判定进程A的进程文件为来自压缩包的文件。如果创建的进程所在进程链中某个进程的进程文件为来自压缩包的文件,则该创建的进程具有危险性。
因为,在本实施例中仅针对来自网络下载或压缩包解压的进程进行拦截,降低了拦截DLL加载的范围,避免了对待保护的设备中执行的其他进程的干扰,不会影响非危险性进程的运行性能。
此外,本实施例中还支持使用匹配规则,判断进程是否具有危险性。
例如,危险判断单元110判断创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性。
通过匹配规则,例如云规则,对特定程序拦截DLL文件加载,以弥补对网络下载及压缩包监控的遗漏。例如,对待保护的设备中各种浏览器、即时通讯工具,以及迅雷等下载工具进行监控,但是无法覆盖所有的下载方式;对待保护的设备中解压缩的监控同样受限在常用压缩工具范围内。通过使用匹配规则,对监控查找到的下载或解压缩程序进行补充,进一步提高发现具有危险性的程序的概率,进而提高拦截加载恶意DLL文件的概率。
加载拦截单元120,适于在创建的进程具有危险性时,拦截创建的进程加载DLL文件的操作,并指示记录单元130将该DLL文件记录到内存的进程信息中。
记录单元130,适于根据指示将DLL文件记录到内存的进程信息中。
安全检测单元140,适于在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果检测结果为进程的DLL文件不安全,则指示执行阻止单元150进行阻止操作。
举例而言,危险操作至少包括下列操作中的一种。
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
具体而言,安全检测单元140使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则检测出记录的该进程的DLL文件不安全。
安全检测单元140还适于如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
进一步地,安全检测单元140如果检测出该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
安全检测单元140还适于如果检测出该进程的DLL文件为安全文件,则指示记录单元130删除该DLL文件的记录,并指示加载拦截单元120在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。这样,对于通过检查确定为安全的DLL文件不再进行拦截处理,进一步提高了对待保护的设备进行恶意程序拦截的运行效率。
执行阻止单元150,适于对于DLL文件不安全的进程,阻止待保护的设备执行该进程。
由上可见,通过在待保护的设备创建进程时,检查DLL文件,对危险的DLL文件进行拦截,阻止危险DLL文件加载,并且当进程启动后执行危险操作时,对DLL文件进行检测,当DLL文件不安全时阻止进行执行,本实施例解决了恶意程序将恶意DLL文件与可信任的白程序打包在一起,当白程序被执行时,加载恶意DLL文件,从而突破主动防御的技术问题。
并且,本实施例取得了能够对使用白程序加载恶意DLL文件的恶意程序进行主动防御的有益效果。因为在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,对危险的DLL文件进行拦截,减小了拦截的范围,本实施能够提高对待保护的设备进行保护的运行效率。此外,在进程执行危险操作时,才对DLL文件进行检查,本实施例能够减少DLL文件的检查概率,进一步提高了对待保护的设备进行保护的运行效率。
以下结合具体实例对本发明中主动防御恶意程序的装置进行详细说明。
待保护的设备为PC,装置为PC中主动防御恶意程序的安全检测模块。装置在内存中存储数据库,数据库中记录所有待保护的设备下载的文件,如果下载的是压缩包,则数据库中还记录压缩包中包含的文件。当通过压缩工具对压缩包解压时,记录压缩包的解压路径,如果是在压缩工具中直接执行压缩包中的可执行文件,也记录压缩包的临时解压路径。此外,数据库中还记录有表示进程间父子关系的进程树。
危险判断单元110判断待保护的设备创建的进程所在进程链中各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。其中,创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
具体而言,危险判断单元110在待保护的设备创建进程时,在数据库中查询进程链上的各个进程是否来自网络下载,如果进程链上某个进程来自网络下载,则通知加载拦截单元120拦截当前进程的DLL加载操作。该加载拦截单元120为驱动程序中操作单元。当加载进程所在目录及子目录中的DLL时,交由记录单元130处理,记录单元130为应用层的操作单元。所述目录为本地目录,即可执行文件(exe文件)所在目录。
危险判断单元110判断该创建的进程所在进程链中各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
具体而言,危险判断单元110在待保护的设备中创建进程时,检查进程链上的各个进程是否来自压缩包,如果进程链上某个进程是解压执行的,指示加载拦截单元120拦截当前进程的DLL加载操作。加载拦截单元120为驱动程序中操作单元。当加载进程所在目录及子目录中的DLL时,交由记录单元130处理,记录单元130为应用层的操作单元。
其中,通过如下操作检查进程链上的各个进程是否来自压缩包。
如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件,则判定该进程的进程文件为来自压缩包的文件,例如,对于进程链中的某个进程,在创建该进程时,如果该进程的父进程为解压工具,检查是否从解压工具中直接执行压缩包中的可执行文件,如果是,则进程链中的该进程来自压缩包。
如果该进程的父进程为解压缩应用,并且该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。例如,对于进程链中的某个进程(即上述父进程)为解压应用,通过分析命令行参数检查是否在对压缩包进行解压,如果是,则加载拦截单元120记录该压缩包解压出的文件。加载拦截单元120为驱动程序中操作单元。对于进程链中的另一个进程(即上述该进程),在上述记录中查询进程文件是否为从压缩包解压而得,如果是,则该进程来自压缩包。
危险判断单元110判断待保护的设备创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性。
例如,在待保护的设备创建进程时,查询云服务器获取文件等级等信息,该信息即为匹配条件,如果返回的信息中指定对目标进程拦截DLL加载,指示加载拦截单元120拦截目标进程的DLL加载操作,加载拦截单元120为驱动程序中操作单元。当加载任意非系统DLL时,交由记录单元130处理,记录单元130为应用层的操作单元。
查询云服务器为云查询,云查询支持云规则支持的匹配信息,云规则可以包括下列信息的一个或多个:文件名称,文件大小,文件特征信息文件图标信息,产品名称,内部名称,原始文件名,进程命令行,进程路径,父进程路径等。例如,匹配信息包含:进程路径(hi.DST)、父进程路径(hi.SRC)、命令行(hi.CLE)、文件大小(hi.DSI)、产品名称(hi.GEN)、内部名称(hi.ITN)、原始文件名(hi.ORN),以及图标和文件的特征信息等。
云端规则的每个条件是一个表达式,满足条件后的返回内容里面包含<hips>DLL:*,kdump.dll,irrlicht.dll</hips>,其中“DLL:”后指定待检查的DLL文件名,如果检查多个DLL,则以逗号隔开,DLL文件名为“*”表示拦截DLL加载。使用表达式条件对上传的可执行文件信息进行匹配。
文件等级可以包括:可疑,未知,白,黑等四种情况。第一等级:10和20,其是白文件;第二等级:30和40,其是灰文件;第三等级:50和60,其是可疑文件;第四等级:70,其是病毒。只有第一等级,10和20,是可以信任的。
记录单元130接收到进程的DLL加载消息时,将DLL文件的路径及MD5数据记录到内存的进程信息中。该进程信息可以为进程关联的数据结构,例如,使用进程树,该进程树为内存中维护的数据,记录了所有进程的信息,以及进程之间的创建关系,每个进程有一个可扩展的数据结构用于记录进程相关信息。
安全检测单元140,适于在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果检测结果为进程的DLL文件不安全,则指示执行阻止单元150进行阻止操作;
执行阻止单元150,适于对于DLL文件不安全的进程,阻止待保护的设备执行该进程。
举例而言,当进程执行危险操作时,将记录的DLL文件安全引擎和/或云安全引擎进行检查。
危险操作包括某些恶意程序可能自动启动的拦截点,例如包括下列操作。
写入注册表进行自动加载,以及修改注册表。因为通过改变注册表可以破坏注册表,本实施例中对所有的可能自动启动的DLL进行监控,并且对特定注册表进行监控,由此实现对注册表的保护。
修改系统文件,以及修改指定的应用文件。由此,通过将该些操作列为危险操作,保证待保护的设备的操作系统相关的文件不被篡改,以及一些装载量比较大的应用文件不被篡改,例如qq,阿里旺旺等应用不被篡改。此外,还可以对桌面快捷方式等进行监控保护。
执行进程间注入。该进程间注入为一个进程在另一个进程中插入并执行一些代码,通过将该注入列为危险操作,来对进程进行保护。
结束进程。因为有些恶意程序会结束掉即时通讯进程,通过重新登录来截取到密码,或者进程后续的一些操作,因此通过将该操作列为危险操作,对防止恶意病毒获得即时通讯工具中信息。
修改浏览器中网页内容。因为恶意程序可以通过修改网页将网页中链接指向钓鱼网页,或者将病毒DLL加载如浏览器中。通过将该操作列为危险操作,
以及记录键盘操作。
安全检测单元140使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测。
如果DLL文件是病毒文件,则弹出木马窗口,呈现危险提示,并指示执行阻止单元150阻止待保护的设备执行该进程,隔离该病毒文件。
如果可执行文件和DLL都是安全文件,即白文件,检查安全,可以进行正常的执行操作。
如果有DLL文件的等级(危险程度)高于可执行文件,以DLL文件等级修正可执行文件的等级,对阻止执行进程的操作,并弹出风险窗口。风险窗口中显示的风险文件为等级最高的DLL文件。
如果存在不可信任的DLL文件,将该进程设置为不可信任,从而阻止执行该进程。
对于可信任的DLL文件,指示记录单元130从记录的中删除该DLL文件,同时指示加载拦截单元120在DLL文件未变化的情况下不再拦截该DLL加载,以提高性能。
参见图2,示出了根据本发明一个实施例的主动防御恶意程序的方法的流程图。该方法包括如下步骤。
步骤S210,在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果是,则执行步骤S220,否则,执行步骤S250。
所述步骤S210具体包括:查询该创建的进程所在进程链中各个进程的进程文件的来源,根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性。对进程间的父子关系进行记录,形成进程树,进程树中记录各个进程的信息,例如创建时间、进程名称等,创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
通常情况下,恶意程序来源于网络,包括网络下载及即时通讯工具中传输到终端等情况,另外使用白程序的恶意程序多采用压缩包的形式进行传播,因此,在一实施例中将进程文件来源于网络下载或压缩包解压的进程判定为具有危险性,具体判断如下所述。
例如,在步骤S210中判断该创建的进程所在进程链中各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
又例如,在步骤S210中判断该创建的进程所在进程链中各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
进一步地,在步骤S210中对于进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
例如,进程链中进程A的父进程A1为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含进程A的进程文件,则判定进程A的进程文件为来自压缩包的文件。如果创建的进程所在进程链中某个进程的进程文件为来自压缩包的文件,则该创建的进程具有危险性。
因为,在本实施例中仅针对来自网络下载或压缩包解压的进程进行拦截,降低了拦截DLL加载的范围,避免了对待保护的设备中执行的其他进程的干扰,不会影响非危险性进程的运行性能。
此外,本实施例中还支持使用匹配规则,判断进程是否具有危险性。
例如,在步骤S210中判断创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性。
通过匹配规则,例如云规则,对特定程序拦截DLL文件加载,以弥补对网络下载及压缩包监控的遗漏。例如,对待保护的设备中各种浏览器、即时通讯工具,以及迅雷等下载工具进行监控,但是无法覆盖所有的下载方式;对解压缩的监控同样受限在常用压缩工具范围内。通过使用匹配规则,对监控查找到的下载或解压缩程序进行补充,进一步提高发现具有危险性的程序的概率,进而提高对待保护的设备进行加载恶意DLL文件拦截的概率。
步骤S220,拦截待保护的设备所创建的进程加载该进程的动态链接库DLL文件的操作,并将该DLL文件记录到内存的进程信息中。
步骤S230,在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果不安全,则执行步骤S240,如果安全,则执行步骤S250。
举例而言,危险操作至少包括下列操作中的一种。
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
具体而言,在步骤S230中使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则检测出记录的该进程的DLL文件不安全。
步骤S230后还包括如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
进一步地,在步骤S230中,如果检测出该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
步骤S230后还包括如果检测出该进程的DLL文件为安全文件,则删除该DLL文件的记录,并在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。这样,对于通过检查确定为安全的DLL文件不再进行拦截处理,进一步提高了对待保护的设备进行恶意程序拦截的运行效率。
步骤S240,阻止待保护的设备执行该进程。
步骤S250,主动防御操作结束,使待保护的设备执行正常操作。
由上可见,通过在使待保护的设备创建进程时,检查DLL文件,对危险的DLL文件进行拦截,阻止危险DLL文件加载,并且当进程启动后执行危险操作时,对DLL文件进行检测,当DLL文件不安全时阻止进行执行,本实施例解决了恶意程序将恶意DLL文件与可信任的白程序打包在一起,当白程序被执行时,加载恶意DLL文件,从而突破主动防御的技术问题。
并且,本实施例取得了能够对使用白程序加载恶意DLL文件的恶意程序进行主动防御的有益效果。因为在创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,对危险的DLL文件进行拦截,减小了拦截的范围,本实施能够提高对待保护的设备进行主动防御的运行效率。此外,在进程执行危险操作时,才对DLL文件进行检查,本实施例能够减少DLL文件的检查概率,进一步提高了对待保护的设备进行主动防御的运行效率。
参见图3,示出了根据本发明一个实施例的主动防御恶意程序的方法的流程图。以下结合具体实例对本发明中主动防御恶意程序的方法进行详细说明。
存储数据库,数据库中记录所有下载的文件,如果下载的是压缩包,则数据库中还记录压缩包中包含的文件。当通过压缩工具对压缩包解压时,记录压缩包的解压路径,如果是在压缩工具中直接执行压缩包中的可执行文件,也记录压缩包的临时解压路径。此外,数据库中还记录有表示进程间父子关系的进程树。
步骤S310,判断待保护的设备创建的进程所在进程链中各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性,执行步骤S340,否则,执行步骤S320。其中,创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链。
具体而言,在待保护的设备创建进程时,在数据库中查询进程链上的各个进程是否来自网络下载,如果进程链上某个进程来自网络下载,则通过步骤S340拦截当前进程的DLL加载操作。此处通过驱动程序实现拦截。当加载进程所在目录及子目录中的DLL时,交由应用层处理,执行步骤S350。所述目录为本地目录,即可执行文件(exe文件)所在目录。
步骤S320,判断待保护的设备创建的进程所在进程链中各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性,执行步骤S340,否则,执行步骤S330。
具体而言,在待保护的设备创建进程时,检查进程链上的各个进程是否来自压缩包,如果进程链上某个进程是解压执行的,拦截当前进程的DLL加载操作。此处通过驱动程序实现拦截。当加载进程所在目录及子目录中的DLL时,交由应用层处理,执行步骤S350。
其中,通过如下操作检查进程链上的各个进程是否来自压缩包。
如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件,则判定该进程的进程文件为来自压缩包的文件,例如,对于进程链中的某个进程,在创建该进程时,如果该进程的父进程为解压工具,检查是否从解压工具中直接执行压缩包中的可执行文件,如果是,则进程链中的该进程来自压缩包。
如果该进程的父进程为解压缩应用,并且该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。例如,对于进程链中的某个进程(即上述父进程)为解压应用,通过分析命令行参数检查是否在对压缩包进行解压,如果是,则通过驱动程序记录该压缩包解压出的文件。对于进程链中的另一个进程(即上述该进程),在上述记录中查询进程文件是否为从压缩包解压而得,如果是,则该进程来自压缩包。
步骤S330,判断创建的进程的进程文件是否满足预设的匹配条件,如果满足,则创建的进程具有危险性,执行步骤S340,否则,执行步骤S380。
例如,在进程被创建时,查询云服务器获取文件等级等信息,该信息即为匹配条件,如果返回的信息中指定对目标进程拦截DLL加载,则执行步骤S340,通过驱动程序拦截目标进程的DLL加载操作。当加载任意非系统DLL时,交由应用层处理,执行步骤S350。
查询云服务器为云查询,云查询支持云规则支持的匹配信息,云规则可以包括下列信息的一个或多个:文件名称,文件大小,文件特征信息文件图标信息,产品名称,内部名称,原始文件名,进程命令行,进程路径,父进程路径等。例如,匹配信息包含:进程路径(hi.DST)、父进程路径(hi.SRC)、命令行(hi.CLE)、文件大小(hi.DSI)、产品名称(hi.GEN)、内部名称(hi.ITN)、原始文件名(hi.ORN),以及图标和文件的特征信息等。
云端规则的每个条件是一个表达式,满足条件后的返回内容里面包含<hips>DLL:*,kdump.dll,irrlicht.dll</hips>,其中“DLL:”后指定待检查的DLL文件名,如果检查多个DLL,则以逗号隔开,DLL文件名为“*”表示拦截DLL加载。使用表达式条件对上传的可执行文件信息进行匹配。
文件等级可以包括:可疑,未知,白,黑等四种情况。第一等级:10和20,其是白文件;第二等级:30和40,其是灰文件;第三等级:50和60,其是可疑文件;第四等级:70,其是病毒。只有第一等级,10和20,是可以信任的。
步骤S340,拦截创建的进程加载该进程的动态链接库DLL文件的操作。
步骤S350,接收到进程的DLL加载消息时,将DLL文件的路径及MD5数据记录到内存的进程信息中。该进程信息可以为进程关联的数据结构,例如,使用进程树,该进程树为内存中维护的数据,记录了所有进程的信息,以及进程之间的创建关系,每个进程有一个可扩展的数据结构用于记录进程相关信息。
步骤S360,在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果检测结果为进程的DLL文件不安全,则执行步骤S370,否则,执行步骤S380。
举例而言,当进程执行危险操作时,将记录的DLL文件安全引擎和/或云安全引擎进行检查。
危险操作包括某些恶意程序可能自动启动的拦截点,例如包括下列操作。
写入注册表进行自动加载,以及修改注册表。因为通过改变注册表可以破坏注册表,本实施例中对所有的可能自动启动的DLL进行监控,并且对特定注册表进行监控,由此实现对注册表的保护。
修改系统文件,以及修改指定的应用文件。由此,通过将该些操作列为危险操作,保证待保护的设备的操作系统相关的文件不被篡改,以及一些装载量比较大的应用文件不被篡改,例如qq,阿里旺旺等应用不被篡改。此外,还可以对桌面快捷方式等进行监控保护。
执行进程间注入。该进程间注入为一个进程在另一个进程中插入并执行一些代码,通过将该注入列为危险操作,来对进程进行保护。
结束进程。因为有些恶意程序会结束掉即时通讯进程,通过重新登录来截取到密码,或者进程后续的一些操作,因此通过将该操作列为危险操作,对防止恶意病毒获得即时通讯工具中信息。
修改浏览器中网页内容。因为恶意程序可以通过修改网页将网页中链接指向钓鱼网页,或者将病毒DLL加载如浏览器中。通过将该操作列为危险操作,
以及记录键盘操作。
在步骤S360中使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测。
如果DLL文件是病毒文件,则弹出木马窗口,呈现危险提示,并执行步骤S370阻止待保护的设备执行该进程,隔离该病毒文件。
如果可执行文件和DLL都是安全文件,即白文件,检查安全,可以进行正常的执行操作。
如果有DLL文件的等级(危险程度)高于可执行文件,以DLL文件等级修正可执行文件的等级,对阻止执行进程的操作,并弹出风险窗口。风险窗口中显示的风险文件为等级最高的DLL文件。
如果存在不可信任的DLL文件,将该进程设置为不可信任,执行步骤S370从而阻止执行该进程。
对于可信任的DLL文件,还可以从记录的中删除该DLL文件,并在DLL文件未变化的情况下不再拦截该DLL加载,以提高性能。
步骤S370,对于DLL文件不安全的进程,阻止待保护的设备执行该进程。
步骤S380,主动防御操作结束,使待保护的设备执行正常操作。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的主动防御恶意程序的设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (18)
1.一种主动防御恶意程序的方法,该方法包括:
在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果是,则拦截创建的进程加载该进程的动态链接库DLL文件的操作,并将该DLL文件记录到内存的进程信息中;
在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程的操作;
其中,所述根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性具体包括:
查询该创建的进程所在进程链中各个进程的进程文件的来源,根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性;所述创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链;
当判断出该创建的进程不具有危险性时,查询云服务器获取匹配信息,根据返回的匹配信息判断该创建的进程是否具有危险性。
2.根据权利要求1所述的方法,其中,
所述根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性具体包括:
判断所述各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
3.根据权利要求1所述的方法,其中,
所述根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性具体包括:
判断所述各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
4.根据权利要求3所述的方法,其中,
所述判断所述各个进程的进程文件中是否存在来自压缩包的文件具体包括:
对于所述各个进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
5.根据权利要求1至4任一项所述的方法,其中,
所述检测记录的该进程的DLL文件是否安全,如果不安全,则阻止待保护的设备执行该进程的操作具体包括:
使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则阻止待保护的设备执行该进程。
6.根据权利要求5所述的方法,其中,
所述使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测后还包括:
如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
7.根据权利要求6所述的方法,其中,
所述使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测后还包括:
如果该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
8.根据权利要求1所述的方法,其中,
所述检测记录的该进程的DLL文件是否安全后还包括:
如果该进程的DLL文件为安全文件,则删除该DLL文件的记录,并在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。
9.根据权利要求1所述的方法,其中,
所述危险操作至少包括下列操作中的一种:
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
10.一种主动防御恶意程序的装置,该装置包括:
危险判断单元,适于在待保护的设备创建进程时,根据与该创建的进程相关的进程文件判断该创建的进程是否具有危险性,如果判断结果为进程具有危险性,则指示加载拦截单元进行拦截操作;
加载拦截单元,适于在创建的进程具有危险性时,拦截创建的进程加载动态链接库DLL文件的操作,指示记录单元将该DLL文件记录到内存的进程信息中;
记录单元,适于根据指示将DLL文件记录到内存的进程信息中;
安全检测单元,适于在待保护的设备启动进程后,当进程执行的操作为危险操作时,检测记录的该进程的DLL文件是否安全,如果检测结果为进程的DLL文件不安全,则指示执行阻止单元进行阻止操作;
执行阻止单元,适于对于DLL文件不安全的进程,阻止待保护的设备执行该进程的操作其中,
所述危险判断单元,具体适于查询该创建的进程所在进程链中各个进程的进程文件的来源,根据所述各个进程的进程文件的来源判断该创建的进程是否具有危险性;所述创建的进程所在进程链为进程树中从该创建的进程到根进程的进程链;当判断出该创建的进程不具有危险性时,查询云服务器获取匹配信息,根据返回的匹配信息判断该创建的进程是否具有危险性。
11.根据权利要求10所述的装置,其中,
所述危险判断单元,具体适于判断所述各个进程的进程文件中是否存在来自网络下载的文件,如果存在,则该创建的进程具有危险性。
12.根据权利要求10所述的装置,其中,
所述危险判断单元,具体适于判断所述各个进程的进程文件中是否存在来自压缩包的文件,如果存在,则该创建的进程具有危险性。
13.根据权利要求12所述的装置,其中,
所述危险判断单元,具体适于对于所述进程链中每个进程进行判定,如果该进程的父进程为解压缩应用,并且该解压缩应用直接执行压缩包中的可执行文件或者该解压缩应用解压缩的压缩包中包含该进程的进程文件,则判定该进程的进程文件为来自压缩包的文件。
14.根据权利要求10至13任一项所述的装置,其中,
所述安全检测单元,具体适于使用本地安全引擎和/或云安全引擎对该进程的DLL文件进行检测,如果DLL文件为病毒文件,则检测出记录的该进程的DLL文件不安全。
15.根据权利要求14所述的装置,其中,
所述安全检测单元,还适于如果该进程的可执行文件和DLL文件都为安全文件,则确定该进程安全。
16.根据权利要求15所述的装置,其中,
所述安全检测单元,还适于如果检测出该进程的DLL文件的危险等级高于该进程的可执行文件的危险等级,则修改该进程的可执行文件的危险等级为所述DLL文件的危险等级,并呈现危险提示。
17.根据权利要求10所述的装置,其中,
所述安全检测单元,还适于如果检测出该进程的DLL文件为安全文件,则指示记录单元删除该DLL文件的记录,并指示所述加载拦截单元在该DLL文件没有发生变化的情况下,不进行拦截创建的进程加载该DLL文件的操作。
18.根据权利要求10所述的装置,其中,
所述危险操作至少包括下列操作中的一种:
写入注册表进行自动加载;
修改注册表;
修改系统文件;
修改指定的应用文件;
执行进程间注入;
结束进程;
修改浏览器中网页内容;以及
记录键盘操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310027641.1A CN103077353B (zh) | 2013-01-24 | 2013-01-24 | 主动防御恶意程序的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310027641.1A CN103077353B (zh) | 2013-01-24 | 2013-01-24 | 主动防御恶意程序的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103077353A CN103077353A (zh) | 2013-05-01 |
CN103077353B true CN103077353B (zh) | 2015-12-02 |
Family
ID=48153880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310027641.1A Active CN103077353B (zh) | 2013-01-24 | 2013-01-24 | 主动防御恶意程序的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103077353B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103279707B (zh) * | 2013-06-08 | 2016-07-13 | 北京奇虎科技有限公司 | 一种用于主动防御恶意程序的方法、设备 |
CN103473501B (zh) * | 2013-08-22 | 2016-05-25 | 北京奇虎科技有限公司 | 一种基于云安全的恶意软件追踪方法 |
CN104462956B (zh) * | 2013-09-23 | 2017-07-25 | 安一恒通(北京)科技有限公司 | 一种获得操作系统控制权的方法和装置 |
CN103793649A (zh) * | 2013-11-22 | 2014-05-14 | 北京奇虎科技有限公司 | 通过云安全扫描文件的方法和装置 |
CN103617395B (zh) * | 2013-12-06 | 2017-01-18 | 北京奇虎科技有限公司 | 一种基于云安全拦截广告程序的方法、装置和系统 |
CN104123489A (zh) * | 2014-07-02 | 2014-10-29 | 珠海市君天电子科技有限公司 | 可执行程序的监控方法和装置 |
CN104539585B (zh) * | 2014-12-05 | 2017-12-05 | 北京奇虎科技有限公司 | 浏览器防注入的方法、浏览器客户端和装置 |
CN105488385A (zh) * | 2014-12-31 | 2016-04-13 | 哈尔滨安天科技股份有限公司 | 一种用于穿戴式智能设备的模拟监测方法与系统 |
CN105224871B (zh) * | 2015-09-22 | 2018-09-25 | 北京金山安全软件有限公司 | 一种病毒清除方法及装置 |
CN106778234A (zh) * | 2015-11-19 | 2017-05-31 | 珠海市君天电子科技有限公司 | 应用程序的防护方法及装置 |
CN105631331B (zh) * | 2015-12-24 | 2018-12-07 | 北京奇虎科技有限公司 | 安全防护方法及装置 |
CN105631334A (zh) * | 2015-12-25 | 2016-06-01 | 北京奇虎科技有限公司 | 应用的安全检测处理方法和系统 |
CN105653961B (zh) * | 2015-12-31 | 2019-07-23 | 北京元心科技有限公司 | 一种提高移动终端应用加载安全性的方法和装置 |
WO2017135249A1 (ja) * | 2016-02-05 | 2017-08-10 | 株式会社ラック | アイコン診断装置、アイコン診断方法およびプログラム |
CN107330320B (zh) * | 2016-04-29 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 应用进程监控的方法和装置 |
CN105956470A (zh) * | 2016-05-03 | 2016-09-21 | 北京金山安全软件有限公司 | 一种拦截应用程序行为的方法及终端 |
CN105956475A (zh) * | 2016-05-17 | 2016-09-21 | 北京金山安全软件有限公司 | Dll文件的拦截处理方法、装置及电子设备 |
CN107665306B (zh) * | 2017-09-06 | 2019-12-03 | 武汉斗鱼网络科技有限公司 | 一种检测非法文件注入的方法、装置、客户端及服务器 |
CN111027062A (zh) * | 2019-03-29 | 2020-04-17 | 哈尔滨安天科技集团股份有限公司 | 一种靶场应用失陷状态的评估方法及装置 |
CN110955894B (zh) * | 2019-11-22 | 2022-09-30 | 深信服科技股份有限公司 | 一种恶意内容检测方法、装置、电子设备及可读存储介质 |
CN111786964B (zh) * | 2020-06-12 | 2022-09-30 | 深信服科技股份有限公司 | 网络安全检测方法、终端及网络安全设备 |
CN113760393A (zh) * | 2021-09-22 | 2021-12-07 | 杭州安恒信息技术股份有限公司 | 一种动态链接库的防护方法、装置、设备和介质 |
CN115906066B (zh) * | 2023-03-09 | 2023-06-23 | 天翼云科技有限公司 | 进程观测方法、装置、电子设备和可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1983296A (zh) * | 2005-12-12 | 2007-06-20 | 北京瑞星国际软件有限公司 | 用于防止非法程序窃取用户信息的方法及装置 |
CN102663288A (zh) * | 2012-03-22 | 2012-09-12 | 奇智软件(北京)有限公司 | 病毒查杀方法及装置 |
CN102736978A (zh) * | 2012-06-26 | 2012-10-17 | 奇智软件(北京)有限公司 | 一种检测应用程序的安装状态的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959624B2 (en) * | 2007-10-31 | 2015-02-17 | Bank Of America Corporation | Executable download tracking system |
-
2013
- 2013-01-24 CN CN201310027641.1A patent/CN103077353B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1983296A (zh) * | 2005-12-12 | 2007-06-20 | 北京瑞星国际软件有限公司 | 用于防止非法程序窃取用户信息的方法及装置 |
CN102663288A (zh) * | 2012-03-22 | 2012-09-12 | 奇智软件(北京)有限公司 | 病毒查杀方法及装置 |
CN102736978A (zh) * | 2012-06-26 | 2012-10-17 | 奇智软件(北京)有限公司 | 一种检测应用程序的安装状态的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103077353A (zh) | 2013-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103077353B (zh) | 主动防御恶意程序的方法和装置 | |
CN103001947B (zh) | 一种程序处理方法和系统 | |
US10291634B2 (en) | System and method for determining summary events of an attack | |
CN102902919B (zh) | 一种可疑操作的识别处理方法、装置和系统 | |
CN102999720B (zh) | 程序鉴别方法和系统 | |
CN102982281B (zh) | 程序状况检测方法和系统 | |
CN103279707B (zh) | 一种用于主动防御恶意程序的方法、设备 | |
KR101265173B1 (ko) | 비실행 파일 검사 장치 및 방법 | |
Dahse et al. | Code reuse attacks in php: Automated pop chain generation | |
CN103473501B (zh) | 一种基于云安全的恶意软件追踪方法 | |
KR101212553B1 (ko) | 악성 파일 검사 장치 및 방법 | |
US20160119375A1 (en) | Cloud security-based file processing method and apparatus | |
EP1760620A2 (en) | Methods and Systems for Detection of Forged Computer Files | |
Singh et al. | Malware detection in pdf and office documents: A survey | |
CN103049695B (zh) | 一种计算机病毒的监控方法和装置 | |
CN102882875B (zh) | 主动防御方法及装置 | |
CN104517054A (zh) | 一种检测恶意apk的方法、装置、客户端和服务器 | |
CN104268476A (zh) | 一种运行应用程序的方法 | |
CN103793649A (zh) | 通过云安全扫描文件的方法和装置 | |
CN102999721B (zh) | 一种程序处理方法和系统 | |
CN103970574B (zh) | office程序的运行方法及装置、计算机系统 | |
CN102857519B (zh) | 主动防御系统 | |
Yan et al. | DitDetector: Bimodal learning based on deceptive image and text for macro malware detection | |
CN102982280B (zh) | 阻止计算机辅助设计cad病毒感染的方法及装置 | |
Falah et al. | Towards enhanced PDF maldocs detection with feature engineering: design challenges |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220714 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. |
|
TR01 | Transfer of patent right |