CN105631334A - 应用的安全检测处理方法和系统 - Google Patents
应用的安全检测处理方法和系统 Download PDFInfo
- Publication number
- CN105631334A CN105631334A CN201510996466.6A CN201510996466A CN105631334A CN 105631334 A CN105631334 A CN 105631334A CN 201510996466 A CN201510996466 A CN 201510996466A CN 105631334 A CN105631334 A CN 105631334A
- Authority
- CN
- China
- Prior art keywords
- information
- file
- application program
- pending application
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
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
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- 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/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/031—Protect user input by software means
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种应用的安全检测处理方法和系统,其中,方法包括:检测到待执行应用程序创建目标进程,在目标进程完成登录之前,实时监测目标进程的状态;监测到目标进程的状态异常,获取待执行应用程序的特征信息上传至服务器,服务器将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,根据匹配结果查询待执行应用程序是否存在被劫持的程序文件信息;若存在,由服务器对被劫持的程序文件进行查杀,获得查杀结果;根据服务器返回的查杀结果对待执行应用程序执行相应操作。本发明实施例可以避免登录信息被盗用。
Description
技术领域
本发明涉及互联网技术,尤其是一种应用的安全检测处理方法和系统。
背景技术
目前。诸多互联网业务都需要通过输入登录信息进行登录,然后连接互联网才能进行相关的操作。但是若用户的登录信息被黑客等非法人员获知,就有可能以该用户的名义发布或进行一些非法活动,因此如何防止登录信息被盗取也越来越引起人们的重视。
非法人员可以通过在用户终端设备中植入恶意软件,例如盗取登录信息的木马,来盗取用户的登录信息。其中恶意软件通常都是采取欺骗的方法获取用户登录信息的,盗取手段可能是通过伪造一个虚假的窗口来代替真实的信息输入窗口。可以将需要登录信息进行登录的客户端和网页看作目标进程,用户启动目标进程后,看到的是虚假窗口,因此当登录信息输入到虚假登录信息输入框中,使非法人员获取了该用户的登录信息。恶意软件获取登录信息后,再将其输入到真实的登录信息输入框中,使用户可以正常的登录,因此用户并不知道登录信息已经被盗取的事件。
例如,恶意软件在真实的登录信息输入框上方覆盖一层透明窗口,让用户在启动目标进程输入登录信息时以为是将登录信息输入了真实的登录信息输入框中,而实际上却是输入到了恶意软件所创建的透明窗口中,从而使非法人员获取了该用户的账号和密码。又如,恶意软件首先将包含登录信息输入框的真实主窗口移到用户看不到的位置,然后在原本真实主窗口的位置创建一个虚假主窗口。用户启动目标进程后,看到的就是虚假主窗口,因此也就将登录信息输入了虚假登录信息输入框中,从而使非法人员获取了该用户的登录信息。
针对上述问题,现有技术中,通常采取的方法是,采用杀毒软件在恶意软件进入终端设备的系统时进行特征查杀。
在实现本发明的过程中,发明人发现,现有技术采用杀毒软件在恶意软件进入系统时进行特征查杀的方法至少存在以下问题:
杀毒软件需要获得恶意软件的特征才能进行病毒查杀,非法人员只要监控杀毒软件的更新,发现目前的样本特征已经被杀毒软件盯上,知道了杀毒软件查杀的特征,不需要更新病毒本体,只要更新一下样本特征,使用不同的特征,相同的手法,便可以避免该恶意软件被杀毒软件被查杀,可以继续进行登录信息的盗取,反应成本极小。由于恶意软件的特征可以是千变万化的,因此上述现有技术进行特征查杀的方法,无法及时、有效的对变化后的恶意软件进行查杀。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种应用的安全检测处理方法和系统,以避免登录信息被盗用。
根据本发明实施例的一个方面,提供的一种应用的安全检测处理方法,包括:
响应于检测到待执行应用程序创建目标进程,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;
响应于监测到目标进程的状态异常,获取所述待执行应用程序的特征信息;
将所述待执行应用程序的特征信息上传至服务器,由服务器将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,所述匹配结果为所述待执行应用程序需检查的程序文件信息;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;
接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息;
若所述待执行应用程序存在被劫持的程序文件信息,由服务器对所述被劫持的程序文件进行查杀,获得查杀结果;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作。
基于本发明上述实施例方法的另一实施例中,所述监测所述目标进程的状态包括:
通过调用系统接口获取目标进程的状态;其中所述目标进程的状态包括:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点;
检测主窗口的大小是否小于预设大小范围、主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及所述基准点上是否存在其他窗口。
基于本发明上述实施例方法的另一实施例中,满足以下任意一项或多项条件时,所述目标进程的状态异常:
登录信息输入框上覆盖有其他窗口;主窗口的大小小于预设大小范围;主窗口的透明度为完全透明;主窗口的坐标超过预设位置范围。
基于本发明上述实施例方法的另一实施例中,将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配包括:
将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;
获取所述待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;
将所述需检查的程序文件信息作为匹配结果。
基于本发明上述实施例方法的另一实施例中,所述云端数据库中的特征匹配条件包括以下任意一项或多项信息的匹配条件:文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及进程的命令行信息、进程路径信息和父进程路径信息;
所述待执行应用程序的特征信息包括以下任意一项或多项:待执行应用程序的文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及待执行应用程序创建的进程的命令行信息、进程路径信息和父进程路径信息。
基于本发明上述实施例方法的另一实施例中,所述文件特征值信息包括文件的下载URL、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
基于本发明上述实施例方法的另一实施例中,所述服务器对所述被劫持的程序文件进行查杀之前,还包括:
获取所述待执行应用程序对应的EXE文件;
将所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息上传至服务器;
所述服务器对所述被劫持的程序文件进行查杀包括:
服务器获取所述EXE文件的等级和所述被劫持的程序文件的安全等级,所述安全等级包括安全级别、未知级别、可疑级别和恶意级别;
根据所述EXE文件的安全等级和所述被劫持的程序文件的安全等级对所述被劫持的程序文件进行查杀。
基于本发明上述实施例方法的另一实施例中,根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
获取所述待执行应用程序对应的应用类型;
根据所述待执行应用程序对应的应用类型、所述EXE文件的安全等级和所述被劫持的程序文件的安全等级,阻止或允许所述待执行应用程序的运行。
基于本发明上述实施例方法的另一实施例中,所述被劫持的程序文件为一个或多个;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
在所述EXE文件的安全等级和所述被劫持的程序文件的等级中至少一个为恶意级别时,阻止所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级均为安全级别时,允许所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于所述EXE文件的安全等级时,获取EXE文件和所述被劫持的程序文件中最高的安全等级,将所述EXE文件的安全等级修改为所述最高的安全等级,允许所述待执行应用程序的执行,并阻止所述待执行应用程序执行后发起的可疑操作。
根据本发明实施例的另一个方面,提供的一种应用程序的安全检测处理系统,包括:
客户端,用于在检测到待执行应用程序创建目标进程时,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;在监测到目标进程的状态异常时,获取所述待执行应用程序的特征信息并上传给服务器;以及接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息,所述匹配结果为所述待执行应用程序需检查的程序文件信息;以及根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作;
服务器,用于将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果并返回客户端;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;以及在所述待执行应用程序存在被劫持的程序文件信息时,对所述被劫持的程序文件进行查杀,获得查杀结果并返回客户端。
基于本发明上述实施例提供的应用的安全检测处理方法和系统,客户端可以检测到待执行应用程序创建用于输入登录信息完成登录的目标进程时,在目标进程完成登录之前,实时监测所述目标进程的状态;当监测到目标进程的状态异常时,获取待执行应用程序的特征信息,由服务器将该待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,即待执行应用程序需检查的程序文件信息;客户端根据匹配结果查询待执行应用程序是否存在被劫持的程序文件信息,若存在,由服务器对被劫持的程序文件进行查杀,获得查杀结果,客户端查杀结果对待执行应用程序执行相应操作。
由此,本发明实施例具有以下有益技术效果:
由于恶意软件通常都是采取欺骗的方法获取登录信息的,无论何种欺骗手法都会导致目标进程的状态出现异常,本发明实施例在创建目标进程时,直到目标进程完成登录之前,实时监测目标进程的状态,例如主窗口的大小、主窗口的透明度和主窗口的坐标,登录信息输入框上是否覆盖其他窗口,只要目标进程状态出现异常,即与服务器交互对恶意软件进行清理。本发明实施例由侦测盗取登录信息的手法下手,可以检测到多种不同的欺骗盗取用户登录信息的手法,对恶意软件完全抛弃了特征查杀,恶意软件开发者要想绕开本发明实施例必须更新盗取登录信息的手法,需要时间长、成本高,因此针对恶意软件使用不同的特征但相同的获取方法来非法获取用户登录信息的特点,从根本上起到防御的作用,防止了用户登录信息被盗取;
本发明实施例对恶意软件进行清理时,通过服务器预先设置的云端数据库检查所述待执行应用程序是否存在被劫持的程序文件,如存在,则通过服务器进行查杀,并根据服务器的查杀结果对待执行应用程序执行相应的操作。由此,解决了恶意程序利用可信的白名单中的程序加载恶意程序文件而导致主动防御无法正常拦截恶意程序的问题,取得了更加有效地拦截恶意程序的有益效果;
本发明实施例的云端数据库设置在服务器中,可以及时进行存储信息的升级、更新,从而对各种突发的恶意程序实现拦截效果,从而避免用户损失。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明应用程序的安全检测处理方法一个实施例的流程图。
图2为本发明应用程序的安全检测处理方法另一个实施例的流程图。
图3为本发明应用程序的安全检测处理方法又一个实施例的流程图。
图4为本发明应用程序的安全检测处理系统一个实施例的结构示意图。
图5为本发明应用程序的安全检测处理系统一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
目前,互联网上的许多业务都需要通过客户端(例如即时通讯软件)、某些网页(例如社交网站、购物网站等),输入登录信息进行登录,然后连接互联网才能进行相关的操作。非法人员通过在用户终端设备中植入恶意软件,例如盗取登录信息的木马,来盗取用户登录信息。其中,恶意软件通常都是采取欺骗的方法获取用户登录信息的。本发明实施例中的恶意软件,包括任何故意在用户终端设备的操作系统中执行恶意任务的病毒、蠕虫和木马等,特别地,本发明实施例的恶意软件,包括任意意图盗取用户登录信息的程序。
本发明实施例中,将通过输入登录信息进行登录的进程称为目标进程;将目标进程创建的窗口称为主窗口,主窗口中包含目标进程的标识(例如,即时通讯软件名称、某些交友网站或团购网站名称等)、登录信息输入框等。
图1为本发明应用程序的安全检测处理方法一个实施例的流程图。该实施例的操作可以示例性地由一个客户端实现。如图1所示,该实施例方法包括:
102,响应于检测到待执行应用程序创建目标进程,在该目标进程完成登录之前,实时监测目标进程的状态。
其中,目标进程为用于输入登录信息完成登录的进程。目标进程的启动时,即:当用户点击需要登录信息进行登录的目标进程时,通过注册系统回调接口可以得知检测到目标进程创建的消息。
本发明实施例中的目标进程可以包括需要通过登录信息登录的客户端和网页进程。其中的登录信息可以包括登录账号和登录密码。
从目标进程启动直到目标进程完成登录的时间段,也是恶意软件盗取用户登录信息的时间段,因此在用户完成登录之前,实时监测检测目标进程的状态,监控目标进程在用户完成登录之前状态是否出现异常。
104,响应于监测到目标进程的状态异常,获取待执行应用程序的特征信息。
该操作104为基于监测到目标进程的状态异常这一触发条件触发执行的操作,即:在监测到目标进程的状态异常时,触发执行操作104及其后续操作;若未监测到目标进程的状态异常,则不执行操作104及其后续操作。
106,将待执行应用程序的特征信息上传至服务器,由服务器将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,即:待执行应用程序需检查的程序文件信息。
其中,云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息。
108,接收服务器返回的匹配结果,并根据该匹配结果查询待执行应用程序是否存在被劫持的程序文件。
一般来说,特定的程序文件,例如DLL文件,会存储在系统目录中,如果在待执行应用程序执行时需要调用某些程序文件,则将这些程序文件存储在指定目录下,因此存储在指定目录下的程序文件即为该待执行应用程序所调用的程序文件。具体地,指定目录可以为当前目录或者指定的相对目录。接收到服务器返回的匹配结果后,可以查询指定目录下是否存在所述需要检查的程序文件信息,若存在,则确定所述待执行应用程序存在被劫持的程序文件。
若待执行应用程序存在被劫持的程序文件信息,执行操作110。否则,若待执行应用程序不存在被劫持的程序文件信息,不执行本实施例的后续流程,允许待执行应用程序的执行。
本发明实施例在待执行应用程序创建目标进程时,增加对程序文件(例如DLL文件)的查询过程,检查待执行应用程序是否存在被劫持的程序文件,如果存在,则说明该待执行应用程序可能被恶意程序利用,因此要进一步检查这些被劫持的程序文件是否安全。本发明实施例中,通过服务器预先设置的云端数据库检查待执行应用程序是否存在需要检测的程序文件。云端数据库存储在服务器中,在云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息,将待执行应用程序的一些特征信息与云端数据库进行匹配,然后再根据匹配结果查询待执行应用程序是否存在被劫持的程序文件。
110,由服务器对被劫持的程序文件进行查杀,获得查杀结果。
112,根据服务器返回的查杀结果对待执行应用程序执行相应操作。
本发明上述实施例应用程序的安全检测处理方法,在创建目标进程时,直到目标进程完成登录之前,实时监测目标进程的状态,只要目标进程状态出现异常,即与服务器交互对恶意软件进行清理。本发明实施例由侦测盗取登录信息的手法下手,可以检测到多种不同的欺骗盗取用户登录信息的手法,对恶意软件完全抛弃了特征查杀,恶意软件开发者要想绕开本发明实施例必须更新盗取登录信息的手法,需要时间长、成本高,因此针对恶意软件使用不同的特征但相同的获取方法来非法获取用户登录信息的特点,从根本上起到防御的作用,防止了用户登录信息被盗取;对恶意软件进行清理时,通过服务器预先设置的云端数据库检查所述待执行应用程序是否存在被劫持的程序文件,如存在,则通过服务器进行查杀,并根据服务器的查杀结果对待执行应用程序执行相应的操作。由此,解决了恶意程序利用可信的白名单中的程序加载恶意程序文件而导致主动防御无法正常拦截恶意程序的问题,取得了更加有效地拦截恶意程序的有益效果;云端数据库设置在服务器中,可以及时进行存储信息的升级、更新,从而对各种突发的恶意程序实现拦截效果,从而避免用户损失。
在本发明各实施例的一个具体示例中,待执行应用程序具体为白名单中的应用程序。在本发明各实施例的另一个具体示例中,上述需要检查的或被劫持的程序文件,具体是程序加载的动态链接库(DynamicLinkLibrary,DLL)文件。
为了尽可能减小对程序性能的影响,现有技术中,主动防御技术只对程序的EXE文件进行检测,而不检查程序加载的DLL文件。因此,一些恶意程序就利用这一点,通过DLL劫持技术将该恶意程序的DLL文件与可信任的白名单中的应用程序(例如操作系统自带的程序)打包在一起,当用户选择执行该白名单中的应用程序时,其中的恶意程序的DLL文件就会被加载,从而使主动防御技术不能成功拦截该恶意程序。
基于本发明上述实施例的方法,可以利用服务器中的云端数据库检测待执行应用程序是否存在被劫持的DLL文件,通过检测结果对待执行应用程序进行处理。如果检测到待执行应用程序存在被劫持的DLL文件,通过服务器对被劫持的DLL文件进行查杀,然后根据服务器查杀结果对待执行应用程序执行相应的操作。由此,解决了恶意程序利用可信的白名单中的应用程序加载恶意DLL文件而导致主动防御无法正常拦截恶意程序的问题,有效地拦截了恶意程序。
通常目标进程在运行时,目标进程创建主窗口,主窗口内可以显示该目标进程的标识,例如即时通讯软件的客户端主窗口中会显示其标识为即时通讯软件名称,社交网站(例如某些交友网站或团购网站、新浪微博等)的主窗口中会显示其标识。主窗口可以创建子窗口,例如登录信息输入框,可用以输入登录信息,该登录信息通过验证后用户就可以使用目标进程。
在图1所示方法实施例的一个具体示例中,操作102中,监测目标进程的状态时,具体可以通过调用系统接口获取目标进程的状态,并检测目标进程的状态是否异常。
其中,目标进程的状态例如可以包括但不限于:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点。本发明实施例可以在登录信息输入框中任取一个基准点,例如基准点(x0,y0),来表征登录信息输入框的位置;另外,登录信息输入框通常是一个四边形,四边形包含四个顶点,因此也可以获取登录信息输入框的四个顶点作为基准点。
获取到目标进程的状态后,便可以对目标进程的状态是否异常进行判断。在一个具体示例中,检测目标进程的状态是否异常,具体是检测:主窗口的大小是否小于预设大小范围、主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及基准点上是否存在其他窗口。在出现以下任意一种或多种情况时,认为目标进程的状态异常:
登录信息输入框上覆盖有其他窗口;
主窗口的大小小于预设大小范围;
主窗口的透明度为完全透明;
主窗口的坐标超过预设位置范围。
具体地,检测主窗口的大小是否小于预设大小范围前,可以预先设置目标进程的主窗口的大小范围,为登录信息输入框的最小显示范围。检测主窗口的大小小于预设大小范围时,可以将获取的目标进程的主窗口的大小与预设大小范围进行比较,若目标进程的主窗口的大小小于预设大小范围,可能无法正常输入登录信息,因此可能存在登录信息被盗取的风险,认为目标进程的状态异常。例如,恶意软件盗取登录信息的一种方法是将真实主窗口缩的极小,用户可能会看不到,然后在原本真实主窗口的位置创建一个虚假主窗口来盗取用户的登录信息,此时若主窗口的大小小于认为目标进程的状态异常,就可能存在登录信息被盗取的风险。
检测主窗口的透明度是否为完全透明时,完全透明可以指主窗口在系统桌面上但用户看不到。例如,恶意软件盗取用户登录信息的一种方式是将真实主窗口修改成透明的,然后在上面覆盖一层虚假主窗口来盗取用户的登录信息。此若主窗口的透明度为完全透明,则可能存在登录信息被盗取的风险。
检测主窗口的坐标超过预设位置范围时,可以预先设置目标进程主窗口的位置范围,该位置范围可以是系统桌面的坐标范围。将获取的主窗口的坐标与预设位置范围进行比较,若主窗口的坐标超过该位置范围,则可能存在登录信息被盗取的风险。例如,主窗口通常是四边形,四边形包含四个顶点,若主窗口中的任意两个顶点坐标在系统桌面坐标外,则可以认为主窗口的坐标超过预设位置范围。例如,恶意软件盗取用户登录信息的一种方式是将包含登录信息输入窗口的真实主窗口移到用户看不到的位置,如系统桌面外,然后在原本真实主窗口的位置创建一个虚假主窗口,此时可以设置上述预设位置范围为系统桌面所在的范围,若主窗口的坐标超过位置范围,则可能存在登录信息被盗取的风险。
例如,恶意软件盗取用户登录信息的一种方式是在真实的登录信息输入框上方覆盖一层虚假的登录信息输入框,其中,该虚假的登录信息输入框是透明的窗口,因此就可以让用户在启动目标进程输入登录信息时,以为是将登录信息输入了真实的登录信息输入框中,实际上却是输入到了恶意软件所创建的透明窗口中,从而使得非法人员获取了该用户的账号和密码。因此,若登录信息输入框上是否覆盖有其他窗口,则能存在登录信息被盗取的风险。此时,通过在登录信息输入框上覆盖其他窗口来获取登录信息时,该其他窗口即为虚假的登录信息输入窗口,其中虚假的登录信息输入窗口将登录信息输入到真实的登录信息输入窗口的方式有两种:一种是通过调用某些系统接口输入登录信息;一种是通过父子窗口进行传递。其中通过父子窗口进行传递时,会将虚假的登录信息输入窗口设置为父窗口,真实的登录信息输入窗口设置为子窗口,在父窗口输入登录信息时,可以在子窗口中进行输入并登录,因此用户不会察觉到登录信息被盗取的事件。
上述获取到登录信息输入框内的基准点后,可以调用系统接口检测该基准点上是否还覆盖有其他窗口,即检测在基准点对应坐标位置上存在几个窗口,若只存在一个窗口,则该窗口为目标进程的主窗口,若存在多余的窗口,则说明目标进程的主窗口上方覆盖有其他窗口。例如,可以通过调用系统接口检测基准点上是否存在其他窗口;又如,还可以获取登录信息输入框的四个顶点坐标,通过该四个顶点坐标标识登录信息输入窗口的位置,判断在登录信息输入框内是否覆盖有其他窗口。
在图1所示方法实施例的另一个具体示例中,操作106中,将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,具体可以通过以下方式实现:
将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;
获取待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;
将需检查的程序文件信息作为匹配结果。
示例性地,本发明各实施例中,云端数据库中的特征匹配条件可以不限于包括以下任意一项或多项具体信息的匹配条件,即与以下任意一项或多项信息的具体内容匹配的待执行应用程序需检查的程序文件信息:文件名称信息、文件大小信息(hi.DSI)、文件特征值信息、文件图标信息、产品名称信息(hi.GEN)、内部名称信息(hi.ITN)、原始文件名信息(hi.ORN),以及进程的命令行信息(hi.CLE)、进程路径信息(hi.DST)和父进程路径信息(hi.SRC)等。其中的文件特征值信息,例如可以包括文件的下载统一资源定位符(URL)、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
同样,待执行应用程序的特征信息也可以包括但不限于以下任意一项或多项:文件名称信息、文件大小信息(hi.DSI)、文件特征值信息、文件图标信息、产品名称信息(hi.GEN)、内部名称信息(hi.ITN)、原始文件名信息(hi.ORN),以及进程的命令行信息(hi.CLE)、进程路径信息(hi.DST)和父进程路径信息(hi.SRC)等。其中的文件特征值信息,例如可以包括文件的下载统一资源定位符(URL)、文件类型、文件DNA、文件的哈希值、下载工具、存储位置和下载时间中的任意一项或多项。
在本发明的一种应用示例中,文件特征值信息表示为:www.abc.com:\1.txt:下载工具,其中,www.abc.com用于表示下载链接,1.txt用于表示文件名称,下载工具即表示对应的下载工具。其中,文件名称可以直接根据下载文件本身的名称得到,文件类型可以根据下载文件的文件名后缀等信息得到(也通过其他的类型分析方式得到),对应的下载工具即为该下载文件在下载时所采用的下载工具,存储位置可以根据下载路径得到,下载时间可以根据下载文件下载完成时的系统时间得到。
云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息,操作106中,服务器将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配时,是将客户端上传的待执行应用程序的每一条特征信息分别与云端数据库中的特征匹配条件匹配,获取待执行应用程序的特征信息匹配的所有特征匹配条件对应的需检查的程序文件信息,以便由客户端分别检查这些程序文件,查询待执行应用程序是否存在被劫持的程序文件。
例如,在一个示例中,程序文件信息为DLL文件的名称。则操作108中,服务器返回的匹配结果可以是一列字符串,其中包括多个需要检查的特定DLL文件信息,每个DLL文件信息之间可以逗号相隔。
假设,操作104中获取到待执行应用程序的特征信息为产品名称信息“金山重装高手”,然后将该产品名称信息与云端数据库中的特征匹配条件进行匹配,经过匹配,特征匹配条件中的“(hi.GEN:like,金山重装高手)”与产品名称信息“金山重装高手”相匹配,因此,可以从该匹配的特征匹配条件对应的返回值“(return_extinfo:<hips>DLL:kdump.dll,irrlicht.dll</hips>)”中获取需要检查的DLL文件名称为“kdump.dll”和“irrlicht.dll”。
图2为本发明应用程序的安全检测处理方法另一个实施例的流程图。如图2所示,与图1所示的实施例相比,该实施例中,在操作110之前,还包括:
202,获取待执行应用程序对应的可执行文件,即:EXE文件。
204,将待执行应用程序对应的EXE文件的信息和被劫持的程序文件(例如DLL文件)的信息上传至服务器。
相应地,该实施例中,操作110具体可以通过如下方式实现:
206,服务器获取EXE文件的等级和被劫持的程序文件的安全等级,其中的安全等级,例如可以分为:安全级别、未知级别、可疑级别和恶意级别。
208,根据EXE文件的安全等级和被劫持的程序文件的安全等级对被劫持的程序文件进行查杀。
具体的,可以通过用于查杀可移植执行体(PortableExecute,PE)类型文件的云查杀引擎,或者人工智能引擎(QihooVirtualMachine,QVM)对EXE文件和被劫持的DLL文件进行查杀。其中,PE类型文件通常指Windows操作系统上的程序文件,常见的PE类型文件包括EXE、DLL、OCX、SYS、COM等类型文件。
杀毒引擎可以根据对文件安全等级的识别结果,按照杀毒引擎中保存的黑名单和/或白名单对相应文件进行查杀。对于具体的查杀过程,本领域技术人员根据实际经验进行相应处理即可,本实施例在此不再详细论述。
服务器在获取到EXE文件和被劫持的程序文件的安全等级之后,将获取到的安全等级下发给客户端,由客户端根据服务器查杀结果对待执行应用程序执行相应的操作。
图3为本发明应用程序的安全检测处理方法又一个实施例的流程图。如图3所示,与本发明上述各实施例的方法相比,该实施例中,操作112具体可以通过如下方式实现:
302,获取待执行应用程序对应的应用类型。
304,根据待执行应用程序对应的应用类型、EXE文件的安全等级和被劫持的程序文件的安全等级,阻止或允许待执行应用程序的运行。
对于不同应用类型的应用程序,用户登录信息被盗取给用户带来损失程度是不一样的。对于第一类应用,例如网银等支付类应用,如果用户登录信息被盗取,可能会直接给用户造成巨大的经济损失;相比之下,对于第二类应用,例如有些网站,仅提供一些资源的浏览,用户登录信息仅用于识别注册用户有发表发表评论的资格,这类应用如果用户登录信息被盗取,给用户造成的损失相对较小;而对于损失程度介于上述两类之间的第三类应用,例如QQ,如果用户登录信息被盗取,不会造成经济上的损失,且QQ被盗密码是可以找回的,一般不会有不可挽回的损失,但可能会泄露个人信息和隐私,被不法分子利用发送广告和恶意信息,这类应用,如果用户登录信息被盗取,损失程度的大小介于第一类应用和第二类应用之间。
本发明实施例可以预先设置应用程序的应用类型、EXE文件的安全等级和被劫持的程序文件的安全等级对应的操作处理规则,客户端在服务器返回EXE文件的安全等级和被劫持的程序文件的安全等级后,可以根据待执行应用程序对应的应用类型、EXE文件的安全等级和被劫持的程序文件的安全等级,对待执行应用程序执行相应的操作,例如允许或拦截待执行应用程序的执行。
例如,对于第一类(支付类软件)应用,为保护用户利益的绝对安全,查询到EXE文件的等级和被劫持的程序文件的安全等级中较低的安全等级为未知、可疑或恶意级别时,拦截待执行应用程序的执行;
对于第二类(浏览类网站)应用,为不干扰正常程序的操作,查询到EXE文件的等级和被劫持的程序文件的安全等级为安全、未知或可疑级别时,允许待执行应用程序的执行;EXE文件的等级和被劫持的程序文件的安全等级中有任一安全等级为恶意时,拦截待执行应用程序的执行;
对于第三类(QQ)应用,采用折衷的策略,查询到EXE文件的等级和被劫持的程序文件的安全等级为安全或未知级别时允许程序的执行;查询到EXE文件的等级和被劫持的程序文件的安全等级为可疑或恶意级别时,拦截待执行应用程序的执行。
基于上述实施例,即保证了用户重要利益的绝对安全,又较少地干扰正常应用程序的执行。针对不同情况进行智能化地操作处理,获得了良好的用户体验效果。
另外,本发明应用程序的安全检测处理方法再一个实施例中,被劫持的程序文件为一个或多个。则操作112具体也可以通过如下方式实现:
在EXE文件的安全等级和被劫持的程序文件的等级中至少一个为恶意级别时,阻止待执行应用程序的执行;
在EXE文件的安全等级和被劫持的程序文件的安全等级均为安全级别时,允许待执行应用程序的执行;
在EXE文件的安全等级和被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于EXE文件的安全等级时,获取EXE文件和被劫持的程序文件中最高的安全等级,将EXE文件的安全等级修改为最高的安全等级,允许待执行应用程序的执行,并阻止待执行应用程序执行后发起的可疑操作,例如,文件操作、注册表操作、进程操作和网络操作等。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图4为本发明应用程序的安全检测处理系统一个实施例的结构示意图。该实施例的系统可用于实现本发明上述各方法实施例。如图4所示,该实施例应用程序的安全检测处理系统包括客户端和服务器。其中:
客户端,用于在检测到待执行应用程序创建目标进程时,在目标进程完成登录之前,实时监测目标进程的状态;其中,目标进程为用于输入登录信息完成登录的进程;在监测到目标进程的状态异常时,获取待执行应用程序的特征信息并上传给服务器;以及接收服务器返回的匹配结果,并根据匹配结果查询待执行应用程序是否存在被劫持的程序文件信息,匹配结果为待执行应用程序需检查的程序文件信息;以及根据服务器返回的查杀结果对待执行应用程序执行相应操作。
服务器,用于将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果并返回客户端;其中,云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;以及在待执行应用程序存在被劫持的程序文件信息时,对被劫持的程序文件进行查杀,获得查杀结果并返回客户端。
本发明上述实施例应用程序的安全检测处理系统,在创建目标进程时,直到目标进程完成登录之前,实时监测目标进程的状态,只要目标进程状态出现异常,即与服务器交互对恶意软件进行清理。本发明实施例由侦测盗取登录信息的手法下手,可以检测到多种不同的欺骗盗取用户登录信息的手法,对恶意软件完全抛弃了特征查杀,恶意软件开发者要想绕开本发明实施例必须更新盗取登录信息的手法,需要时间长、成本高,因此针对恶意软件使用不同的特征但相同的获取方法来非法获取用户登录信息的特点,从根本上起到防御的作用,防止了用户登录信息被盗取;对恶意软件进行清理时,通过服务器预先设置的云端数据库检查所述待执行应用程序是否存在被劫持的程序文件,如存在,则通过服务器进行查杀,并根据服务器的查杀结果对待执行应用程序执行相应的操作。由此,解决了恶意程序利用可信的白名单中的程序加载恶意程序文件而导致主动防御无法正常拦截恶意程序的问题,取得了更加有效地拦截恶意程序的有益效果;云端数据库设置在服务器中,可以及时进行存储信息的升级、更新,从而对各种突发的恶意程序实现拦截效果,从而避免用户损失。
在本发明各实施例的一个具体示例中,待执行应用程序具体为白名单中的应用程序。在本发明各实施例的另一个具体示例中,上述需要检查的或被劫持的程序文件,具体是程序加载的DLL文件。
图5为本发明应用程序的安全检测处理系统一个实施例的结构示意图。如图5所示,与图4所示的实施例相比,该实施例中,客户端包括:监测单元,第一获取单元,查询单元,处理单元,和第一信息收发单元;服务器包括:云端数据库,匹配单元,查杀单元,和第二信息收发单元。其中:
监测单元,用于在检测到待执行应用程序创建目标进程时,在目标进程完成登录之前,实时监测目标进程的状态。其中,目标进程为用于输入登录信息完成登录的进程。
第一获取单元,用于在监测单元监测到目标进程的状态异常时,获取待执行应用程序的特征信息。
第一信息收发单元,用于待执行应用程序的特征信息上传给服务器;接收服务器针对待执行应用程序的特征信息返回的匹配结果,即:待执行应用程序需检查的程序文件信息;请求服务器对被劫持的程序文件进行查杀,并接收服务器对被劫持的程序文件进行查杀后返回的查杀结果。
查询单元,用于根据第一信息收发单元接收到的匹配结果查询待执行应用程序是否存在被劫持的程序文件信息。
处理单元,用于根据服务器返回的查杀结果对待执行应用程序执行相应操作。
云端数据库,用于存储多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息。
匹配单元,用于将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果。
第二信息收发单元,用于将匹配结果返回客户端;以及接收客户端对被劫持的程序文件进行查杀的请求,并向客户端返回查杀结果。
查杀单元,用于对被劫持的程序文件进行查杀,获得查杀结果并通过第二信息收发单元返回客户端。
在上述应用程序的安全检测处理系统实施例的一个具体示例中,监测单元具体用于:通过调用系统接口获取目标进程的状态;其中目标进程的状态包括:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点;以及检测主窗口的大小是否小于预设大小范围、若主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及基准点上是否存在其他窗口。
其中,出现以下任意一种或多种情况时,目标进程的状态异常:登录信息输入框上覆盖有其他窗口;主窗口的大小小于预设大小范围;主窗口的透明度为完全透明;主窗口的坐标超过预设位置范围。
在上述应用程序的安全检测处理系统实施例的另一个具体示例中,匹配单元具体用于:将待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;获取待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;将需检查的程序文件信息作为匹配结果。
示例性地,本发明各系统实施例中,云端数据库中的特征匹配条件可以不限于包括以下任意一项或多项具体信息的匹配条件,即与以下任意一项或多项信息的具体内容匹配的待执行应用程序需检查的程序文件信息:文件名称信息、文件大小信息(hi.DSI)、文件特征值信息、文件图标信息、产品名称信息(hi.GEN)、内部名称信息(hi.ITN)、原始文件名信息(hi.ORN),以及进程的命令行信息(hi.CLE)、进程路径信息(hi.DST)和父进程路径信息(hi.SRC)等。其中的文件特征值信息,例如可以包括文件的下载统一资源定位符(URL)、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
同样,待执行应用程序的特征信息也可以包括但不限于以下任意一项或多项:文件名称信息、文件大小信息(hi.DSI)、文件特征值信息、文件图标信息、产品名称信息(hi.GEN)、内部名称信息(hi.ITN)、原始文件名信息(hi.ORN),以及进程的命令行信息(hi.CLE)、进程路径信息(hi.DST)和父进程路径信息(hi.SRC)等。其中的文件特征值信息,例如可以包括文件的下载统一资源定位符(URL)、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
进一步地,再参见图5,在本发明应用程序的安全检测处理系统又一个实施例中,客户端还包括第二获取单元:相应地,服务器还包括第三获取单元。其中:
第二获取单元,用于根据查询单元的查询结果,在待执行应用程序存在被劫持的程序文件信息时,获取待执行应用程序对应的EXE文件。相应地:
第一信息收发单元,请求服务器对被劫持的程序文件进行查杀时,具体将待执行应用程序对应的EXE文件的信息和被劫持的程序文件的信息上传至服务器。
第二信息收发单元,接收客户端对被劫持的程序文件进行查杀的请求时,具体接收待执行应用程序对应的EXE文件的信息和被劫持的程序文件的信息。
第三获取单元,用于根据待执行应用程序对应的EXE文件的信息和被劫持的程序文件的信息,获取EXE文件的等级和被劫持的程序文件的安全等级,该安全等级可以分为:安全级别、未知级别、可疑级别和恶意级别。
查杀单元,具体用于根据EXE文件的安全等级和被劫持的程序文件的安全等级对被劫持的程序文件进行查杀。
在上述应用程序的安全检测处理系统实施例的又一个具体示例中,处理单元具体用于:
获取待执行应用程序对应的应用类型;以及
根据待执行应用程序对应的应用类型、EXE文件的安全等级和被劫持的程序文件的安全等级,阻止或允许待执行应用程序的运行。
或者,在上述应用程序的安全检测处理系统实施例的再一个具体示例中,处理单元具体用于:
在EXE文件的安全等级和被劫持的程序文件的等级中至少一个为恶意级别时,阻止待执行应用程序的执行;
在EXE文件的安全等级和被劫持的程序文件的安全等级均为安全级别时,允许待执行应用程序的执行;
在EXE文件的安全等级和被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于EXE文件的安全等级时,获取EXE文件和被劫持的程序文件中最高的安全等级,将EXE文件的安全等级修改为最高的安全等级,允许待执行应用程序的执行,并阻止待执行应用程序执行后发起的可疑操作。
本发明实施例提供了以下技术方案:
1、一种应用程序的安全检测处理方法,包括:
响应于检测到待执行应用程序创建目标进程,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;
响应于监测到目标进程的状态异常,获取所述待执行应用程序的特征信息;
将所述待执行应用程序的特征信息上传至服务器,由服务器将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,所述匹配结果为所述待执行应用程序需检查的程序文件信息;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;
接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息;
若所述待执行应用程序存在被劫持的程序文件信息,由服务器对所述被劫持的程序文件进行查杀,获得查杀结果;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作。
2、根据1所述的方法,所述监测所述目标进程的状态包括:
通过调用系统接口获取目标进程的状态;其中所述目标进程的状态包括:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点;
检测主窗口的大小是否小于预设大小范围、主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及所述基准点上是否存在其他窗口。
3、根据2所述的方法,满足以下任意一项或多项条件时,所述目标进程的状态异常:
登录信息输入框上覆盖有其他窗口;主窗口的大小小于预设大小范围;主窗口的透明度为完全透明;主窗口的坐标超过预设位置范围。
4、根据1至3任意一项所述的方法,将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配包括:
将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;
获取所述待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;
将所述需检查的程序文件信息作为匹配结果。
5、根据4所述的方法,所述云端数据库中的特征匹配条件包括以下任意一项或多项信息的匹配条件:文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及进程的命令行信息、进程路径信息和父进程路径信息;
所述待执行应用程序的特征信息包括以下任意一项或多项:待执行应用程序的文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及待执行应用程序创建的进程的命令行信息、进程路径信息和父进程路径信息。
6、根据5所述的方法,所述文件特征值信息包括文件的下载URL、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
7、根据1至6任意一项所述的方法,所述服务器对所述被劫持的程序文件进行查杀之前,还包括:
获取所述待执行应用程序对应的EXE文件;
将所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息上传至服务器;
所述服务器对所述被劫持的程序文件进行查杀包括:
服务器获取所述EXE文件的等级和所述被劫持的程序文件的安全等级,所述安全等级包括安全级别、未知级别、可疑级别和恶意级别;
根据所述EXE文件的安全等级和所述被劫持的程序文件的安全等级对所述被劫持的程序文件进行查杀。
8、根据7所述的方法,根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
获取所述待执行应用程序对应的应用类型;
根据所述待执行应用程序对应的应用类型、所述EXE文件的安全等级和所述被劫持的程序文件的安全等级,阻止或允许所述待执行应用程序的运行。
9、根据7所述的方法,所述被劫持的程序文件为一个或多个;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
在所述EXE文件的安全等级和所述被劫持的程序文件的等级中至少一个为恶意级别时,阻止所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级均为安全级别时,允许所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于所述EXE文件的安全等级时,获取EXE文件和所述被劫持的程序文件中最高的安全等级,将所述EXE文件的安全等级修改为所述最高的安全等级,允许所述待执行应用程序的执行,并阻止所述待执行应用程序执行后发起的可疑操作。
10、根据1至9任意一项所述的方法,所述待执行应用程序为白名单中的应用程序。
11、一种应用程序的安全检测处理系统,包括:
客户端,用于在检测到待执行应用程序创建目标进程时,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;在监测到目标进程的状态异常时,获取所述待执行应用程序的特征信息并上传给服务器;以及接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息,所述匹配结果为所述待执行应用程序需检查的程序文件信息;以及根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作;
服务器,用于将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果并返回客户端;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;以及在所述待执行应用程序存在被劫持的程序文件信息时,对所述被劫持的程序文件进行查杀,获得查杀结果并返回客户端。
12、根据11所述的系统,所述客户端包括:
监测单元,用于在检测到待执行应用程序创建目标进程时,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;
第一获取单元,用于在监测单元监测到目标进程的状态异常时,获取所述待执行应用程序的特征信息;
第一信息收发单元,用于所述待执行应用程序的特征信息上传给服务器;接收所述服务器针对所述待执行应用程序的特征信息返回的匹配结果;请求服务器对所述被劫持的程序文件进行查杀,并接收所述服务器对所述被劫持的程序文件进行查杀后返回的查杀结果;
查询单元,用于根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息,所述匹配结果为所述待执行应用程序需检查的程序文件信息;
处理单元,用于根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作;
所述服务器包括:
云端数据库,用于存储多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;
匹配单元,用于将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果;
第二信息收发单元,用于将所述匹配结果返回客户端;接收客户端对所述被劫持的程序文件进行查杀的请求,并向客户端返回查杀结果;
查杀单元,用于对所述被劫持的程序文件进行查杀,获得查杀结果并通过第二信息收发单元返回客户端。
13、根据12所述的系统,所述监测单元具体用于:
通过调用系统接口获取目标进程的状态;其中所述目标进程的状态包括:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点;以及
检测主窗口的大小是否小于预设大小范围、主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及所述基准点上是否存在其他窗口。
14、根据13所述的系统,满足以下任意一项或多项条件时,所述目标进程的状态异常:
登录信息输入框上覆盖有其他窗口;主窗口的大小小于预设大小范围;主窗口的透明度为完全透明;主窗口的坐标超过预设位置范围。
15、根据12至14任意一项所述的系统,所述匹配单元具体用于:
将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;
获取所述待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;
将所述需检查的程序文件信息作为匹配结果。
16、根据15所述的系统,所述云端数据库中的特征匹配条件包括以下任意一项或多项信息的匹配条件:文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及进程的命令行信息、进程路径信息和父进程路径信息;
所述待执行应用程序的特征信息包括以下任意一项或多项:待执行应用程序的文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及待执行应用程序创建的进程的命令行信息、进程路径信息和父进程路径信息。
17、根据16所述的系统,所述文件特征值信息包括文件的下载URL、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
18、根据12至17任意一项所述的系统,所述客户端还包括:
第二获取单元,用于根据查询单的查询结果,在所述待执行应用程序存在被劫持的程序文件信息时,获取所述待执行应用程序对应的EXE文件;
所述第一信息收发单元,还用于将所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息上传至服务器;
所述第二信息收发单元,接收客户端对所述被劫持的程序文件进行查杀的请求时,具体接收所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息;
所述服务器还包括:
第三获取单元,用于根据所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息,获取所述EXE文件的等级和所述被劫持的程序文件的安全等级,所述安全等级包括安全级别、未知级别、可疑级别和恶意级别;
所述查杀单元,具体用于根据所述EXE文件的安全等级和所述被劫持的程序文件的安全等级对所述被劫持的程序文件进行查杀。
19、根据18所述的系统,所述处理单元,具体用于:
获取所述待执行应用程序对应的应用类型;
根据所述待执行应用程序对应的应用类型、所述EXE文件的安全等级和所述被劫持的程序文件的安全等级,阻止或允许所述待执行应用程序的运行。
20、根据18所述的系统,所述被劫持的程序文件为一个或多个;
所述处理单元,具体用于:
在所述EXE文件的安全等级和所述被劫持的程序文件的等级中至少一个为恶意级别时,阻止所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级均为安全级别时,允许所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于所述EXE文件的安全等级时,获取EXE文件和所述被劫持的程序文件中最高的安全等级,将所述EXE文件的安全等级修改为所述最高的安全等级,允许所述待执行应用程序的执行,并阻止所述待执行应用程序执行后发起的可疑操作。
21、根据11至20任意一项所述的系统,所述待执行应用程序为白名单中的应用程序。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种应用程序的安全检测处理方法,其特征在于,包括:
响应于检测到待执行应用程序创建目标进程,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;
响应于监测到目标进程的状态异常,获取所述待执行应用程序的特征信息;
将所述待执行应用程序的特征信息上传至服务器,由服务器将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果,所述匹配结果为所述待执行应用程序需检查的程序文件信息;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;
接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息;
若所述待执行应用程序存在被劫持的程序文件信息,由服务器对所述被劫持的程序文件进行查杀,获得查杀结果;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作。
2.根据权利要求1所述的方法,其特征在于,所述监测所述目标进程的状态包括:
通过调用系统接口获取目标进程的状态;其中所述目标进程的状态包括:主窗口的大小、主窗口的透明度、主窗口的坐标,以及主窗口中登录信息输入框内的一个以上基准点;
检测主窗口的大小是否小于预设大小范围、主窗口的透明度是否为完全透明、主窗口的坐标是否超过预设位置范围,以及所述基准点上是否存在其他窗口。
3.根据权利要求2所述的方法,其特征在于,满足以下任意一项或多项条件时,所述目标进程的状态异常:
登录信息输入框上覆盖有其他窗口;主窗口的大小小于预设大小范围;主窗口的透明度为完全透明;主窗口的坐标超过预设位置范围。
4.根据权利要求1至3任意一项所述的方法,其特征在于,将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配包括:
将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配;
获取所述待执行应用程序的特征信息匹配的特征匹配条件需检查的程序文件信息;
将所述需检查的程序文件信息作为匹配结果。
5.根据权利要求4所述的方法,其特征在于,所述云端数据库中的特征匹配条件包括以下任意一项或多项信息的匹配条件:文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及进程的命令行信息、进程路径信息和父进程路径信息;
所述待执行应用程序的特征信息包括以下任意一项或多项:待执行应用程序的文件名称信息、文件大小信息、文件特征值信息、文件图标信息、产品名称信息、内部名称信息、原始文件名信息,以及待执行应用程序创建的进程的命令行信息、进程路径信息和父进程路径信息。
6.根据权利要求5所述的方法,其特征在于,所述文件特征值信息包括文件的下载URL、文件类型、文件DNA、下载工具、存储位置和下载时间中的任意一项或多项。
7.根据权利要求1至6任意一项所述的方法,其特征在于,所述服务器对所述被劫持的程序文件进行查杀之前,还包括:
获取所述待执行应用程序对应的EXE文件;
将所述待执行应用程序对应的EXE文件的信息和所述被劫持的程序文件的信息上传至服务器;
所述服务器对所述被劫持的程序文件进行查杀包括:
服务器获取所述EXE文件的等级和所述被劫持的程序文件的安全等级,所述安全等级包括安全级别、未知级别、可疑级别和恶意级别;
根据所述EXE文件的安全等级和所述被劫持的程序文件的安全等级对所述被劫持的程序文件进行查杀。
8.根据权利要求7所述的方法,其特征在于,根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
获取所述待执行应用程序对应的应用类型;
根据所述待执行应用程序对应的应用类型、所述EXE文件的安全等级和所述被劫持的程序文件的安全等级,阻止或允许所述待执行应用程序的运行。
9.根据权利要求7所述的方法,其特征在于,所述被劫持的程序文件为一个或多个;
根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作包括:
在所述EXE文件的安全等级和所述被劫持的程序文件的等级中至少一个为恶意级别时,阻止所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级均为安全级别时,允许所述待执行应用程序的执行;
在所述EXE文件的安全等级和所述被劫持的程序文件的安全等级中没有恶意级别,并且至少一个被劫持的程序文件的安全等级高于所述EXE文件的安全等级时,获取EXE文件和所述被劫持的程序文件中最高的安全等级,将所述EXE文件的安全等级修改为所述最高的安全等级,允许所述待执行应用程序的执行,并阻止所述待执行应用程序执行后发起的可疑操作。
10.一种应用程序的安全检测处理系统,其特征在于,包括:
客户端,用于在检测到待执行应用程序创建目标进程时,在所述目标进程完成登录之前,实时监测所述目标进程的状态;其中,所述目标进程为用于输入登录信息完成登录的进程;在监测到目标进程的状态异常时,获取所述待执行应用程序的特征信息并上传给服务器;以及接收所述服务器返回的匹配结果,并根据所述匹配结果查询所述待执行应用程序是否存在被劫持的程序文件信息,所述匹配结果为所述待执行应用程序需检查的程序文件信息;以及根据所述服务器返回的查杀结果对所述待执行应用程序执行相应操作;
服务器,用于将所述待执行应用程序的特征信息与云端数据库中的特征匹配条件进行匹配,获得匹配结果并返回客户端;其中,所述云端数据库中包括多个特征匹配条件和满足各特征匹配条件需检查的程序文件信息;以及在所述待执行应用程序存在被劫持的程序文件信息时,对所述被劫持的程序文件进行查杀,获得查杀结果并返回客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510996466.6A CN105631334A (zh) | 2015-12-25 | 2015-12-25 | 应用的安全检测处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510996466.6A CN105631334A (zh) | 2015-12-25 | 2015-12-25 | 应用的安全检测处理方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105631334A true CN105631334A (zh) | 2016-06-01 |
Family
ID=56046258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510996466.6A Pending CN105631334A (zh) | 2015-12-25 | 2015-12-25 | 应用的安全检测处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105631334A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372509A (zh) * | 2016-09-30 | 2017-02-01 | 北京奇虎科技有限公司 | 一种查杀未知可疑应用程序的方法及装置 |
CN106650436A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇虎科技有限公司 | 一种基于局域网的安全检测方法和装置 |
CN106919488A (zh) * | 2016-07-21 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 应用程序的响应状态的确定方法及装置 |
CN107085685A (zh) * | 2017-05-16 | 2017-08-22 | 成都汇智远景科技有限公司 | 一种平台数据的操作方法 |
CN107220546A (zh) * | 2017-06-27 | 2017-09-29 | 广东欧珀移动通信有限公司 | 应用运行方法、装置及终端设备 |
CN107277037A (zh) * | 2017-07-14 | 2017-10-20 | 北京安数云信息技术有限公司 | 基于插件的任意文件操作检测方法和装置 |
CN108280346A (zh) * | 2017-01-05 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 一种应用防护监控方法、装置以及系统 |
CN111563257A (zh) * | 2020-04-15 | 2020-08-21 | 成都欧珀通信科技有限公司 | 数据检测方法及装置、计算机可读介质及终端设备 |
CN112099882A (zh) * | 2020-09-11 | 2020-12-18 | 杭州海康威视数字技术股份有限公司 | 一种业务处理方法、装置及设备 |
CN112162913A (zh) * | 2020-10-30 | 2021-01-01 | 珠海格力电器股份有限公司 | 操作的执行方法和装置、存储介质、电子装置 |
CN113296654A (zh) * | 2021-05-27 | 2021-08-24 | 深信服科技股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113452718A (zh) * | 2021-07-07 | 2021-09-28 | 北京泰立鑫科技有限公司 | 一种专属存储空间主动防御方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102629308A (zh) * | 2012-03-09 | 2012-08-08 | 奇智软件(北京)有限公司 | 一种防止登录信息被盗取的方法及装置 |
CN103001947A (zh) * | 2012-11-09 | 2013-03-27 | 北京奇虎科技有限公司 | 一种程序处理方法和系统 |
CN103077353A (zh) * | 2013-01-24 | 2013-05-01 | 北京奇虎科技有限公司 | 主动防御恶意程序的方法和装置 |
CN103795684A (zh) * | 2012-10-26 | 2014-05-14 | 珠海市君天电子科技有限公司 | 一种防止透明窗体类病毒盗取即时通讯工具账号密码的方法及系统 |
CN104598806A (zh) * | 2014-11-24 | 2015-05-06 | 北京奇虎科技有限公司 | 一种进行登录检测的方法和装置 |
-
2015
- 2015-12-25 CN CN201510996466.6A patent/CN105631334A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102629308A (zh) * | 2012-03-09 | 2012-08-08 | 奇智软件(北京)有限公司 | 一种防止登录信息被盗取的方法及装置 |
CN103795684A (zh) * | 2012-10-26 | 2014-05-14 | 珠海市君天电子科技有限公司 | 一种防止透明窗体类病毒盗取即时通讯工具账号密码的方法及系统 |
CN103001947A (zh) * | 2012-11-09 | 2013-03-27 | 北京奇虎科技有限公司 | 一种程序处理方法和系统 |
CN103077353A (zh) * | 2013-01-24 | 2013-05-01 | 北京奇虎科技有限公司 | 主动防御恶意程序的方法和装置 |
CN104598806A (zh) * | 2014-11-24 | 2015-05-06 | 北京奇虎科技有限公司 | 一种进行登录检测的方法和装置 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106919488A (zh) * | 2016-07-21 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 应用程序的响应状态的确定方法及装置 |
CN106919488B (zh) * | 2016-07-21 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 应用程序的响应状态的确定方法及装置 |
CN106372509A (zh) * | 2016-09-30 | 2017-02-01 | 北京奇虎科技有限公司 | 一种查杀未知可疑应用程序的方法及装置 |
CN106372509B (zh) * | 2016-09-30 | 2019-08-23 | 北京奇虎科技有限公司 | 一种查杀未知可疑应用程序的方法及装置 |
CN106650436A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇虎科技有限公司 | 一种基于局域网的安全检测方法和装置 |
CN106650436B (zh) * | 2016-12-29 | 2019-09-27 | 北京奇虎科技有限公司 | 一种基于局域网的安全检测方法和装置 |
CN108280346B (zh) * | 2017-01-05 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 一种应用防护监控方法、装置以及系统 |
CN108280346A (zh) * | 2017-01-05 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 一种应用防护监控方法、装置以及系统 |
CN107085685A (zh) * | 2017-05-16 | 2017-08-22 | 成都汇智远景科技有限公司 | 一种平台数据的操作方法 |
CN107085685B (zh) * | 2017-05-16 | 2020-06-30 | 华讯高科股份有限公司 | 一种平台数据的操作方法 |
CN107220546A (zh) * | 2017-06-27 | 2017-09-29 | 广东欧珀移动通信有限公司 | 应用运行方法、装置及终端设备 |
CN107220546B (zh) * | 2017-06-27 | 2020-01-10 | Oppo广东移动通信有限公司 | 应用运行方法、装置及终端设备 |
CN107277037A (zh) * | 2017-07-14 | 2017-10-20 | 北京安数云信息技术有限公司 | 基于插件的任意文件操作检测方法和装置 |
CN111563257A (zh) * | 2020-04-15 | 2020-08-21 | 成都欧珀通信科技有限公司 | 数据检测方法及装置、计算机可读介质及终端设备 |
CN112099882A (zh) * | 2020-09-11 | 2020-12-18 | 杭州海康威视数字技术股份有限公司 | 一种业务处理方法、装置及设备 |
CN112099882B (zh) * | 2020-09-11 | 2023-08-25 | 杭州海康威视数字技术股份有限公司 | 一种业务处理方法、装置及设备 |
CN112162913A (zh) * | 2020-10-30 | 2021-01-01 | 珠海格力电器股份有限公司 | 操作的执行方法和装置、存储介质、电子装置 |
CN113296654A (zh) * | 2021-05-27 | 2021-08-24 | 深信服科技股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113296654B (zh) * | 2021-05-27 | 2023-12-29 | 深信服科技股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113452718A (zh) * | 2021-07-07 | 2021-09-28 | 北京泰立鑫科技有限公司 | 一种专属存储空间主动防御方法和系统 |
CN113452718B (zh) * | 2021-07-07 | 2022-07-01 | 何小林 | 一种专属存储空间主动防御方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105631334A (zh) | 应用的安全检测处理方法和系统 | |
US9596257B2 (en) | Detection and prevention of installation of malicious mobile applications | |
Konoth et al. | How anywhere computing just killed your phone-based two-factor authentication | |
US9686303B2 (en) | Web page vulnerability detection method and apparatus | |
US8893286B1 (en) | Systems and methods for preventing fraudulent activity associated with typo-squatting procedures | |
US9348980B2 (en) | Methods, systems and application programmable interface for verifying the security level of universal resource identifiers embedded within a mobile application | |
US20140317733A1 (en) | Method and client for ensuring user network security | |
US20140380478A1 (en) | User centric fraud detection | |
US20100083383A1 (en) | Phishing shield | |
CN103473501B (zh) | 一种基于云安全的恶意软件追踪方法 | |
CN110417718B (zh) | 处理网站中的风险数据的方法、装置、设备及存储介质 | |
CN111614624B (zh) | 风险检测方法、装置、系统及存储介质 | |
US10505736B1 (en) | Remote cyber security validation system | |
CN103793649A (zh) | 通过云安全扫描文件的方法和装置 | |
CN103279707A (zh) | 一种用于主动防御恶意程序的方法、设备及系统 | |
CN111163095A (zh) | 网络攻击分析方法、网络攻击分析装置、计算设备和介质 | |
WO2017190436A1 (zh) | 一种数据处理方法及装置 | |
US10826901B2 (en) | Systems and method for cross-channel device binding | |
US11082437B2 (en) | Network resources attack detection | |
US10275596B1 (en) | Activating malicious actions within electronic documents | |
US20170070460A1 (en) | Controlling Access to Web Resources | |
US11257061B2 (en) | Performing transactions when device has low battery | |
US8935784B1 (en) | Protecting subscribers of web feeds from malware attacks | |
US20160132687A1 (en) | Securing data on a computing system | |
US10846395B2 (en) | Detecting suspicious application overlays on a device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160601 |