CN106096391B - 一种进程控制方法及用户终端 - Google Patents
一种进程控制方法及用户终端 Download PDFInfo
- Publication number
- CN106096391B CN106096391B CN201610388463.9A CN201610388463A CN106096391B CN 106096391 B CN106096391 B CN 106096391B CN 201610388463 A CN201610388463 A CN 201610388463A CN 106096391 B CN106096391 B CN 106096391B
- Authority
- CN
- China
- Prior art keywords
- function
- target
- user terminal
- path
- target process
- 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
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/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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种进程控制方法及用户终端,其中,用户终端中包括目标进程,目标进程包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数,具体地,用户终端获取目标进程的进程路径;检测目标进程的进程路径是否属于预设恶意进程路径集合;若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数中的进程信息分类值;检测进程信息分类值是否为预设值;若检测进程信息分类值为预设值,则禁止执行第一目标函数。由此可见,实施该发明实施例,能够提高用户终端系统的安全性。
Description
技术领域
本发明涉及电子技术领域,尤其涉及一种进程控制方法及用户终端。
背景技术
随着电子技术的快速发展以及互联网技术的迅速普及,病毒,木马等恶意进程技术层出不穷,因此,安全应用程序对应的技术也需不断更新,以提高用户终端的安全性。在实际应用中发现,非法用户可以在恶意进程中设置结束蓝屏标识,也即,当恶意进程在执行过程中被迫结束时,则恶意进程会通过控制用户终端蓝屏重启,从而可以避免安全应用程序对恶意进程的监控。然而,当安全应用程序不能监控恶意进程时,则恶意进程会攻击、窃取甚至破坏用户终端系统中的数据,从而降低了用户终端系统的安全性。
发明内容
本发明实施例提供了一种进程控制方法及用户终端,能够提高用户终端系统的安全性。
第一方面,本发明实施例公开了一种进程控制方法,应用于目标进程,所述目标进程中包括第一目标函数以及第二目标函数,其中,所述第一目标函数为原函数,所述第二目标函数为与所述第一目标函数对应的钩子函数,所述方法包括:
获取所述目标进程的进程路径;
检测所述目标进程的进程路径是否属于预设恶意进程路径集合;
若检测所述目标进程的进程路径属于所述预设恶意进程路径集合,则获取所述第二目标函数的进程信息分类值;
检测所述进程信息分类值是否为预设值;
若检测所述进程信息分类值为所述预设值,则禁止执行所述第一目标函数。
结合第一方面的实现方式,在第一方面的第一种可能的实现方式中,所述获取所述目标进程的进程路径,包括:
获取所述目标进程的进程参数;
根据所述进程参数确定所述目标进程的进程路径。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述进程参数包括句柄参数,所述根据所述进程参数确定所述目标进程的进程路径,包括:
根据所述句柄参数从预设的映射表中获取与所述句柄参数匹配的进程路径,其中,所述映射表用于描述进程路径与句柄关系的对应关系。
结合第一方面的实现方式、第一方面的第一种可能的实现方式以及第一方面的第二种可能的实现方式中的任意一种实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:
若检测所述目标进程的进程路径不属于所述预设恶意进程路径集合,则结束本次进程控制操作。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括:
从系统服务描述符表中获取所述第一目标函数的地址,并存储所述第一目标函数的地址;
根据所述第一目标函数的地址定义所述第二目标函数。
第二方面,本发明实施例还公开了一种用户终端,所述用户终端包括目标进程,所述目标进程中包括第一目标函数以及第二目标函数,其中,所述第一目标函数为原函数,所述第二目标函数为与所述第一目标函数对应的钩子函数,所述用户终端包括:
获取模块,用于获取所述目标进程的进程路径;
检测模块,用于检测所述目标进程的进程路径是否属于预设恶意进程路径集合;
所述获取模块,还用于若所述检测模块检测所述目标进程的进程路径属于所述预设恶意进程路径集合,则获取所述第二目标函数的进程信息分类值;
所述检测模块,还用于检测所述进程信息分类值是否为预设值;
控制模块,用于若所述检测模块检测所述进程信息分类值为所述预设值,则禁止执行所述第一目标函数。
结合第二方面的用户终端,在第二方面的第一种可能的用户终端中,所述获取模块包括:
获取单元,用于获取所述目标进程的进程参数;
确定单元,用于根据所述进程参数确定所述目标进程的进程路径。
结合第二方面的第一种可能的用户终端,在第二方面的第三种可能的用户终端中,所述进程参数包括句柄参数,所述确定单元根据所述进程参数确定所述目标进程的进程路径的具体实施方式为根据所述句柄参数从预设的映射表中获取与所述句柄参数匹配的进程路径,其中,所述映射表用于描述进程路径与句柄关系的对应关系。
结合第二方面的用户终端、第二方面的第一种可能的用户终端以及第二方面的第二种可能的用户终端中的任意一种用户终端,在第二方面的第三种可能的用户终端中,所述控制模块,还用于若所述检测模块检测所述目标进程的进程路径不属于所述预设恶意进程路径集合,则控制所述用户终端结束本次进程控制操作。
结合第二方面的第三种可能的用户终端,在第二方面的第四种可能的用户终端中,所述获取模块,还用于从系统服务描述符表中获取所述第一目标函数的地址;
所述用户终端还包括:
存储模块,用于存储所述第一目标函数的地址;
定义模块,用于根据所述第一目标函数的地址定义所述第二目标函数。
本发明实施例中,用户终端中包括目标进程,目标进程包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数,具体地,用户终端获取目标进程的进程路径;检测目标进程的进程路径是否属于预设恶意进程路径集合;若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数中的进程信息分类值;检测进程信息分类值是否为预设值;若检测进程信息分类值为预设值,则禁止执行第一目标函数。由此可见,实施该发明实施例,能够提高用户终端系统的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种进程控制方法的流程示意图;
图2是本发明实施例公开的另一种进程控制方法的流程示意图;
图3是本发明实施例公开的一种用户终端的结构示意图;
图4是本发明实施例公开的另一种用户终端的结构示意图;
图5是本发明实施例公开的又一种用户终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种进程控制方法及用户终端,能够提高用户终端系统的安全性。以下分别进行详细描述。
本发明实施例中,上述进程控制方法应用于目标进程,目标进程中包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数。举例来说,当第一目标函数为NtSetInformationProcess函数时,则用户终端可以从系统服务描述符表中查找到NtSetInformationProcess函数的地址,并根据NtSetInformationProcess函数的地址定义一个NewNtSetInformationProcess函数,用于替换系统服务描述符表中NtSetInformationProcess函数的地址,也即,NtSetInformationProcess函数与NewNtSetInformationProcess函数的地址相同。其中,NtSetInformationProcess函数为原函数,NewNtSetInformationProcess函数则为NtSetInformationProcess函数的钩子函数,主要用于阻止恶意进程设置进程结束蓝屏标识。
其中,恶意进程在设置进程结束蓝屏标识的流程主要是恶意进程使用ProcessBreakOnTermination函数标记,先调用应用程的RtlSetProcessIsCritical函数,再调用内核层的NtSetInformationProcess函数,再在系统写入进程结束蓝屏标识,最后在进程退出时检测进程结束蓝屏标识,如果有进程结束蓝屏标识就抛出系统异常,也即,控制用户终端蓝屏重启。实施该发明实施例时,主要是在检测到RtlSetProcessIsCritical函数被调用时,不是继续调用内核层的NtSetInformationProcess函数,而是调用内核层的NtSetInformationProcess函数对应的钩子函数NewNtSetInformationProcess函数,则可以实现拦截恶意进程设置进程结束蓝屏标识。详细过程请参阅以下描述。
请参阅图1,图1是本发明实施例公开的一种进程控制方法的流程示意图。其中,图1所示的方法可以适用于智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)等用户终端中。如图1所示,该进程控制方法可以包括以下步骤:
101、获取目标进程的进程路径。
本发明实施例中,目标进程是用户终端中程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是用户终端的操作系统结构的基础。在早期面向进程设计的计算机结构中,目标进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,目标进程是线程的容器;程序是指令、数据及其组织形式的描述,目标进程是程序的实体。目标进程是具有一定独立功能的程序关于一个数据集合的一次运行活动。目标进程具有以下主要特性:并发性:可以与其它进程一道在宏观上同时向前推进。动态性:目标进程是执行中的程序。此外目标进程的动态性还体现在如下两个方面:首先,目标进程是动态产生、动态消亡的;其次,在目标进程的生存期内,其状态处于经常性的动态变化之中。独立性:目标进程是调度的基本单位,它可以获得处理机并参与并发执行。交往性:目标进程在运行过程中可能会与其它进程发生直接或间接的相互作用。异步性:每个进程都以其相对独立、不可预知的速度向前推进。结构性:每个进程有一个控制块。
其中,进程和程序的相同点:程序是构成进程的组成部分之一,一个进程存在的目的就是执行其所对应的程序,如果没有程序,进程就失去了其存在的意义。进程与程序的差别:程序是静态的,而进程是动态的;程序可以写在纸上或在某一存储介质上长期保存,而进程具有生存期,创建后存在,撤销后消亡。
具体地,在检测到应用程的RtlSetProcessIsCritical函数被调用之后,可以获取当前正在执行的且包含RtlSetProcessIsCritical函数的目标进程的进程路径。
102、检测目标进程的进程路径是否属于预设恶意进程路径集合。
本发明实施例中,可以在用户终端中预先设置一个恶意进程路径集合,其中,该恶意进程路径集合可以是用户根据需要设置,并可以实时更新,也可以是用户终端根据用户的历史设定记录进行设定,还可以是用户终端中系统默认的,本发明实施例不作限定。
本发明实施例中,在获取目标进程的进程路径之后,则可以检测目标进程的进程路径是否属于预设恶意进程路径集合,若检测目标进程的进程路径属于预设恶意进程路径集合,则说明该目标进程为恶意进程,若检测目标进程的进程路径不属于预设恶意进程路径集合,则说明该目标进程不为恶意进程。举例来说,若预设恶意进程路径集合为{aedf.exe,3828.exe,aedx.exe,aedg.exe},目标进程的进程路径为aedf.exe,则说明目标进程的进程路径属于预设恶意进程路径集合,则说明目标进程为恶意进程。
103、若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数对应的进程信息分类值。
本发明实施例中,若检测目标进程的进程路径属于预设恶意进程路径集合,则说明该目标进程为恶意进程,则可以进一步获取第二目标函数对应的进程信息分类值。其中,进程信息分类值为第二目标函数(钩子函数)中用于描述是否携带进程结束蓝屏标识的值。
104、检测进程信息分类值是否为预设值。
本发明实施例中,在获取第二目标函数对应的进程信息分类值之后,则可以进一步检测进程信息分类值是否为预设值。其中,上述预设值是与进程信息分类值对应的值,且该预设值可以是用户根据需要进行设定,也可以是用户终端中系统默认的值,本发明实施例不作限定。
具体地,若检测进程信息分类值为预设值,则说明该目标进程携带结束蓝屏标识,也即,当该目标进程被迫结束时,会导致用户终端蓝屏重启。举例来说,若进程信息分类值ProcessInformationClass为ProcessBreakOnTermination,则可以将其视为该目标进程携带结束蓝屏标识。
105、若检测进程信息分类值为预设值,则禁止执行第一目标函数。
本发明实施例中,若检测进程信息分类值为预设值,则说明该目标进程携带结束蓝屏标识,也即,当该目标进程被迫结束时,会导致用户终端蓝屏重启,且根据恶意进程设置自身进程结束蓝屏标识的流程,则可以在调用应用程的RtlSetProcessIsCritical函数被调用之后,不调用内核层的NtSetInformationProcess函数,而是调用钩子函数NewNtSetInformationProcess函数,从而可以禁止执行第一目标函数NtSetInformationProcess函数,以达到恶意进程在被迫结束时,触发用户终端蓝屏重启。
在图1中,详细描述了用户终端中包括目标进程,目标进程包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数,具体地,用户终端获取目标进程的进程路径;检测目标进程的进程路径是否属于预设恶意进程路径集合;若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数中的进程信息分类值;检测进程信息分类值是否为预设值;若检测进程信息分类值为预设值,则禁止执行第一目标函数。在本发明实施例中,根据恶意进程设置自身进程蓝屏标识的设置过程,则可以进一步根据进程信息分类值可以确定该目标进程中是否携带进程结束蓝屏标识,且在检测目标进程中携带进程结束蓝屏标识时,禁止执行第一目标函数(原函数),则可以避免用户终端蓝屏重启,从而可以监控该目标进程,以提高用户终端系统的安全性。
请参阅图2,图2是本发明实施例公开的另一种进程控制方法的流程示意图。该进程控制方法应用于目标进程,目标进程中包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数。举例来说,当第一目标函数为NtSetInformationProcess函数时,则用户终端可以从系统服务描述符表中查找到NtSetInformationProcess函数的地址,并根据NtSetInformationProcess函数的地址定义一个NewNtSetInformationProcess函数,用于替换系统服务描述符表中NtSetInformationProcess函数的地址,也即,NtSetInformationProcess函数与NewNtSetInformationProcess函数的地址相同。其中,NtSetInformationProcess函数为原函数,NewNtSetInformationProcess函数则为NtSetInformationProcess函数的钩子函数,主要用于阻止恶意进程设置进程结束蓝屏标识。如图2所示,该进程控制方法可以包括以下步骤:
201、获取目标进程的进程参数。
本发明实施例中,目标进程的进程参数可以包括但不限于进程标识、进程名称、进程句柄以及线程数等参数中的一种或多种。
本发明实施例中,在获取目标进程的进程参数之前,用户终端还应从系统服务描述符表中获取第一目标函数的地址,并存储第一目标函数的地址;并根据第一目标函数的地址定义第二目标函数。
举例来说,当第一目标函数为NtSetInformationProcess函数时,则用户终端可以从系统服务描述符表中查找到NtSetInformationProcess函数的地址,并根据NtSetInformationProcess函数的地址定义一个NewNtSetInformationProcess函数,用于替换系统服务描述符表中NtSetInformationProcess函数的地址,也即,NtSetInformationProcess函数与NewNtSetInformationProcess函数的地址相同。其中,NtSetInformationProcess函数为原函数,NewNtSetInformationProcess函数则为NtSetInformationProcess函数的钩子函数,主要用于阻止恶意进程设置自身进程结束时蓝屏。
202、根据进程参数确定目标进程的进程路径。
本发明实施例中,进程路径主要是用于描述进程执行的位置,也即,进程对应的程序的存储位置。
具体地,在获取目标进程的进程参数之后,则可以根据进程参数确定目标进程的进程路径。
进一步,当进程参数包括句柄参数时,用户终端在根据进程参数确定目标进程的进程路径主要是根据句柄参数从预设的映射表中获取与句柄参数匹配的进程路径,其中,映射表用于描述进程路径与句柄关系的对应关系。
具体地,预设的映射表用于描述进程路径与句柄关系的对应关系,也即,根据目标进程的句柄参数可以在预设的映射表中查找到目标进程的进程路径。
其中,该预设的映射表可以是用户根据需要进行设定,也可以是用户终端根据用户的历史设定记录进行设定,还可以是用户终端系统默认的,本发明实施例不作限定。
其中,句柄参数是WINDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例、窗口、控制以及位图等等。WINDOWS句柄有点像C语言中的文件句柄。句柄是一个标识符,是拿来标识对象或者项目的,它就像我们的姓名一样,每个人都会有一个,不同的人的姓名不一样,但是,也可能有一个名字和你一样的人,而句柄则是唯一的。从数据类型上来看它只是一个32位的无符号整数(16位机是16位)。应用程序几乎总是通过调用一个WINDOWS函数来获得一个句柄,之后其他的WINDOWS函数就可以使用该句柄,以引用相应的对象。
203、检测目标进程的进程路径是否属于预设恶意进程路径集合。
本发明实施例中,可以在用户终端中预先设置一个恶意进程路径集合,其中,该恶意进程路径集合可以是用户根据需要设置,并可以实时更新,也可以是用户终端根据用户的历史设定记录进行设定,还可以是用户终端中系统默认的,本发明实施不作限定。
本发明实施例中,在获取目标进程的进程路径之后,则可以检测目标进程的进程路径是否属于预设恶意进程路径集合,若检测目标进程的进程路径属于预设恶意进程路径集合,则说明该目标进程为恶意进程,若检测目标进程的进程路径不属于预设恶意进程路径集合,则说明该目标进程不为恶意进程。举例来说,若预设恶意进程路径集合为{aedf.exe,3828.exe,aedx.exe,aedg.exe},目标进程的进程路径为aedf.exe,则说明目标进程的进程路径属于预设恶意进程路径集合,则说明目标进程为恶意进程。
进一步,若检测目标进程的进程路径不属于预设恶意进程路径集合,则说明该目标进程可能不是恶意进程,或者说,即使该目标进程为恶意进程,该进程也不会设置有结束蓝屏标识的进程,或者说,该目标进程可能是调试器进程,则用户终端可以结束本次进程控制操作,也即,不强制该目标进程结束,而是继续执行。
204、若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数对应的进程信息分类值。
205、检测进程信息分类值是否为预设值。
206、若检测进程信息分类值为预设值,则禁止执行第一目标函数。
在图2中,详细描述了用户终端根据恶意进程设置自身进程蓝屏标识的设置过程,可以进一步根据进程信息分类值可以确定该目标进程中是否携带进程结束蓝屏标识,且在检测目标进程中携带进程结束蓝屏标识时,禁止执行第一目标函数(原函数),则可以避免用户终端蓝屏重启,从而可以监控该目标进程,以提高用户终端系统的安全性;且用户终端在确定目标进程的进程路径时,主要是根据预设的映射表来选取与目标进程的句柄参数对应的进程路径,则无需根据其他参数来确定目标进程的路径,从而可以减少目标进程的进程路径的确定时间,以提高整个进程控制的效率。
请参阅图3,图3是本发明实施例公开的一种用户终端的结构示意图,用于执行上述进程控制方法,其中,图3所示的用户终端可以包括但不限于智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)等用户终端。如图3所示,该用户终端可以包括:获取模块301、检测模块302以及控制模块303,其中,
获取模块301,用于获取目标进程的进程路径。
本发明实施例中,目标进程是用户终端中程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是用户终端的操作系统结构的基础。在早期面向进程设计的计算机结构中,目标进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,目标进程是线程的容器;程序是指令、数据及其组织形式的描述,目标进程是程序的实体。目标进程是具有一定独立功能的程序关于一个数据集合的一次运行活动。目标进程具有以下主要特性:并发性:可以与其它进程一道在宏观上同时向前推进。动态性:目标进程是执行中的程序。此外目标进程的动态性还体现在如下两个方面:首先,目标进程是动态产生、动态消亡的;其次,在目标进程的生存期内,其状态处于经常性的动态变化之中。独立性:目标进程是调度的基本单位,它可以获得处理机并参与并发执行。交往性:目标进程在运行过程中可能会与其它进程发生直接或间接的相互作用。异步性:每个进程都以其相对独立、不可预知的速度向前推进。结构性:每个进程有一个控制块。
其中,进程和程序的相同点:程序是构成进程的组成部分之一,一个进程存在的目的就是执行其所对应的程序,如果没有程序,进程就失去了其存在的意义。进程与程序的差别:程序是静态的,而进程是动态的;程序可以写在纸上或在某一存储介质上长期保存,而进程具有生存期,创建后存在,撤销后消亡。
具体地,在检测到应用程的RtlSetProcessIsCritical函数被调用之后,获取模块301可以获取当前正在执行的且包含RtlSetProcessIsCritical函数的目标进程的进程路径。
检测模块302,用于检测目标进程的进程路径是否属于预设恶意进程路径集合。
本发明实施例中,可以在用户终端中预先设置一个恶意进程路径集合,其中,该恶意进程路径集合可以是用户根据需要设置,并可以实时更新,也可以是用户终端根据用户的历史设定记录进行设定,还可以是用户终端中系统默认的,本发明实施不作限定。
本发明实施例中,在获取模块301获取目标进程的进程路径之后,则检测模块302可以检测目标进程的进程路径是否属于预设恶意进程路径集合,若检测模块302检测目标进程的进程路径属于预设恶意进程路径集合,则说明该目标进程为恶意进程,若检测模块302检测目标进程的进程路径不属于预设恶意进程路径集合,则说明该目标进程不为恶意进程。举例来说,若预设恶意进程路径集合为{aedf.exe,3828.exe,aedx.exe,aedg.exe},目标进程的进程路径为aedf.exe,则说明目标进程的进程路径属于预设恶意进程路径集合,则说明目标进程为恶意进程。
获取模块301,还用于若检测模块302检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数对应的进程信息分类值。
本发明实施例中,若检测模块302检测目标进程的进程路径属于预设恶意进程路径集合,则说明该目标进程为恶意进程,则获取模块301可以进一步获取第二目标函数对应的进程信息分类值。其中,进程信息分类值为第二目标函数(钩子函数)中用于描述是否携带进程结束蓝屏标识的值。
检测模块302,还用于检测进程信息分类值是否为预设值。
本发明实施例中,在获取模块301获取第二目标函数对应的进程信息分类值之后,则检测模块302可以进一步检测进程信息分类值是否为预设值。其中,上述预设值是与进程信息分类值对应的值,且该预设值可以是用户根据需要进行设定,也可以是用户终端中系统默认的值,本发明实施例不作限定。
具体地,若检测模块302检测进程信息分类值为预设值,则说明该目标进程携带结束蓝屏标识,也即,当该目标进程被迫结束时,会导致用户终端蓝屏重启。举例来说,若进程信息分类值ProcessInformationClass为ProcessBreakOnTermination,则可以将其视为该目标进程携带结束蓝屏标识。
控制模块303,用于若检测模块302检测进程信息分类值为预设值,则禁止执行第一目标函数。
本发明实施例中,若检测模块302检测进程信息分类值为预设值,则说明该目标进程携带结束蓝屏标识,也即,当该目标进程被迫结束时,会导致用户终端蓝屏重启,且控制模块303根据恶意进程设置自身进程结束蓝屏标识的流程,则可以在调用应用程的RtlSetProcessIsCritical函数被调用之后,不调用内核层的NtSetInformationProcess函数,而是调用钩子函数NewNtSetInformationProcess函数,从而可以禁止执行第一目标函数NtSetInformationProcess函数,以达到恶意进程在被迫结束时,触发用户终端蓝屏重启。
在图3中,详细描述了用户终端中包括目标进程,目标进程包括第一目标函数以及第二目标函数,其中,第一目标函数为原函数,第二目标函数为与第一目标函数对应的钩子函数,具体地,获取模块301获取目标进程的进程路径;检测模块302检测目标进程的进程路径是否属于预设恶意进程路径集合;若检测模块302检测目标进程的进程路径属于预设恶意进程路径集合,则获取模块301获取第二目标函数中的进程信息分类值;检测模块302检测进程信息分类值是否为预设值;若检测模块302检测进程信息分类值为预设值,则控制模块控制用户终端禁止执行第一目标函数。在本发明实施例中,根据恶意进程设置自身进程蓝屏标识的设置过程,则可以进一步根据进程信息分类值可以确定该目标进程中是否携带进程结束蓝屏标识,且在检测模块302检测目标进程中携带进程结束蓝屏标识时,控制模块303可以控制用户终端禁止执行第一目标函数(原函数),则可以避免用户终端蓝屏重启,从而可以监控该目标进程,以提高用户终端系统的安全性。
请参阅图4,图4是本发明实施例公开的另一种用户终端的结构示意图,用于执行上述进程控制方法。其中,图4是在图3的基础上进一步细化得到,除包括图3所示的所有模块以外,还可以包括:存储模块304以及定义模块305,其中,
获取模块301,还用于从系统服务描述符表中获取第一目标函数的地址。
存储模块304,用于存储第一目标函数的地址。
定义模块305,用于根据第一目标函数的地址定义第二目标函数。
进一步,获取模块301可以进一步细化包括:获取单元3010以及确定单元3011,其中,
获取单元3010,用于获取目标进程的进程参数。
确定单元3011,用于根据进程参数确定目标进程的进程路径。
其中,当进程参数包括句柄参数时,确定单元3011根据进程参数确定目标进程的进程路径的具体实施方式为根据句柄参数从预设的映射表中获取与句柄参数匹配的进程路径,其中,映射表用于描述进程路径与句柄关系的对应关系。
本发明实施例中,控制模块303还用于若检测模块302检测目标进程的进程路径不属于预设恶意进程路径集合,则控制用户终端结束本次进程控制操作。
通过实施图4所示的实施例,可以避免用户终端蓝屏重启,从而可以监控该目标进程,以提高用户终端系统的安全性。
请参阅图5,图5是本发明实施例公开的又一种用户终端的结构示意图,用于执行上述进程控制方法。其中,如图5所示,该用户终端可以包括:壳体501、处理器502,存储器503,显示屏504,电路板505和电源电路506等组件。其中,电路板505安置在壳体501围成的空间内部,处理器502和存储器503设置在电路板505上,显示屏504外嵌于壳体501上且连接电路板505。本领域技术人员可以理解,图5中示出的用户终端的结构并不构成对本发明实施例的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器502为用户终端的控制中心,利用各种接口和线路连接整个用户终端的各个部分,通过运行或执行存储在存储器503内的程序和/或模块,以及调用存储在存储器503内的数据,以执行用户终端的各种功能和处理数据。处理器502可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器502可以仅包括中央处理器(Central Processing Unit,简称CPU),也可以是CPU、数字信号处理器(digital signalprocessor,简称DSP)、图形处理器(Graphic Processing Unit,简称GPU)及各种控制芯片的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
显示屏504可以包括触控面板、触摸屏等,可以用于输出提醒消息、图片等信息,也可以接收用户触发的各项触控操作。
电源电路506,用于为用户终端的各个电路或器件供电。
存储器503可用于存储软件程序以及模块,处理器502通过调用存储在存储器503中的软件程序以及模块,从而执行用户终端的各项功能应用以及实现数据处理。存储器503主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等;数据存储区可存储根据用户终端的使用所创建的数据等。在本发明实施例中,操作系统可以是Android系统、iOS系统或Windows操作系统等等。
在图5所示的用户终端中,处理器502调用存储在存储器503中的应用程序,用于执行以下操作:
获取目标进程的进程路径;
检测目标进程的进程路径是否属于预设恶意进程路径集合;
若检测目标进程的进程路径属于预设恶意进程路径集合,则获取第二目标函数对应的进程信息分类值;
检测进程信息分类值是否为预设值;
若检测进程信息分类值为预设值,则禁止执行第一目标函数。
本发明实施例中,处理器502调用存储在存储器503中的应用程序,执行步骤获取目标进程的进程路径,包括:
获取目标进程的进程参数;
根据进程参数确定目标进程的进程路径。
本发明实施例中,进程参数包括句柄参数,处理器502调用存储在存储器503中的应用程序,执行步骤根据进程参数确定目标进程的进程路径,包括:
根据句柄参数从预设的映射表中获取与句柄参数匹配的进程路径,其中,映射表用于描述进程路径与句柄关系的对应关系。
本发明实施例中,处理器502调用存储在存储器503中的应用程序,还可以执行以下步骤:
若检测目标进程的进程路径不属于预设恶意进程路径集合,则结束本次进程控制操作。
本发明实施例中,处理器502调用存储在存储器503中的应用程序,还可以执行以下步骤:
从系统服务描述符表中获取第一目标函数的地址,并存储第一目标函数的地址;
根据第一目标函数的地址定义第二目标函数。
具体的,本发明实施例中介绍的用户终端可以实施本发明结合图1、图2介绍的进程控制方法实施例中的部分或全部流程。
本发明所有实施例中的模块或子模块,可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application Specific IntegratedCircuit,专用集成电路)来实现。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例用户终端中的单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种进程控制方法,其特征在于,应用于目标进程,所述目标进程中包括第一目标函数以及第二目标函数,其中,所述第一目标函数为原函数,所述第二目标函数为与所述第一目标函数对应的钩子函数,所述方法包括:
获取所述目标进程的进程路径;
检测所述目标进程的进程路径是否属于预设恶意进程路径集合;
若检测所述目标进程的进程路径属于所述预设恶意进程路径集合,则获取所述第二目标函数的进程信息分类值,所述进程信息分类值用于描述是否携带进程结束蓝屏标识的值;
检测所述进程信息分类值是否为预设值;
若检测所述进程信息分类值为所述预设值,则禁止执行所述第一目标函数。
2.根据权利要求1所述的方法,其特征在于,所述获取所述目标进程的进程路径,包括:
获取所述目标进程的进程参数;
根据所述进程参数确定所述目标进程的进程路径。
3.根据权利要求2所述的方法,其特征在于,所述进程参数包括句柄参数,所述根据所述进程参数确定所述目标进程的进程路径,包括:
根据所述句柄参数从预设的映射表中获取与所述句柄参数匹配的进程路径,其中,所述映射表用于描述进程路径与句柄关系的对应关系。
4.根据权利要求1~3中任意一项所述的方法,其特征在于,所述方法还包括:
若检测所述目标进程的进程路径不属于所述预设恶意进程路径集合,则结束本次进程控制操作。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
从系统服务描述符表中获取所述第一目标函数的地址,并存储所述第一目标函数的地址;
根据所述第一目标函数的地址定义所述第二目标函数。
6.一种用户终端,其特征在于,所述用户终端包括目标进程,所述目标进程中包括第一目标函数以及第二目标函数,其中,所述第一目标函数为原函数,所述第二目标函数为与所述第一目标函数对应的钩子函数,所述用户终端包括:
获取模块,用于获取所述目标进程的进程路径;
检测模块,用于检测所述目标进程的进程路径是否属于预设恶意进程路径集合;
所述获取模块,还用于若所述检测模块检测所述目标进程的进程路径属于所述预设恶意进程路径集合,则获取所述第二目标函数的进程信息分类值,所述进程信息分类值用于描述是否携带进程结束蓝屏标识的值;
所述检测模块,还用于检测所述进程信息分类值是否为预设值;
控制模块,用于若所述检测模块检测所述进程信息分类值为所述预设值,则禁止执行所述第一目标函数。
7.根据权利要求6所述的用户终端,其特征在于,所述获取模块包括:
获取单元,用于获取所述目标进程的进程参数;
确定单元,用于根据所述进程参数确定所述目标进程的进程路径。
8.根据权利要求7所述的用户终端,其特征在于,所述进程参数包括句柄参数,所述确定单元根据所述进程参数确定所述目标进程的进程路径的具体实施方式为根据所述句柄参数从预设的映射表中获取与所述句柄参数匹配的进程路径,其中,所述映射表用于描述进程路径与句柄关系的对应关系。
9.根据权利要求6~8中任意一项所述的用户终端,其特征在于,
所述控制模块,还用于若所述检测模块检测所述目标进程的进程路径不属于所述预设恶意进程路径集合,则控制所述用户终端结束本次进程控制操作。
10.根据权利要求9所述的用户终端,其特征在于,
所述获取模块,还用于从系统服务描述符表中获取所述第一目标函数的地址;
所述用户终端还包括:
存储模块,用于存储所述第一目标函数的地址;
定义模块,用于根据所述第一目标函数的地址定义所述第二目标函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610388463.9A CN106096391B (zh) | 2016-06-02 | 2016-06-02 | 一种进程控制方法及用户终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610388463.9A CN106096391B (zh) | 2016-06-02 | 2016-06-02 | 一种进程控制方法及用户终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106096391A CN106096391A (zh) | 2016-11-09 |
CN106096391B true CN106096391B (zh) | 2019-05-03 |
Family
ID=57448246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610388463.9A Active CN106096391B (zh) | 2016-06-02 | 2016-06-02 | 一种进程控制方法及用户终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106096391B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055982B (zh) * | 2016-06-29 | 2019-11-12 | 珠海豹趣科技有限公司 | 一种恶意程序触发蓝屏的拦截方法、装置及电子设备 |
CN108984212B (zh) * | 2017-05-31 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 一种关闭进程的方法以及电子设备 |
CN107479953B (zh) * | 2017-07-31 | 2020-08-25 | Oppo广东移动通信有限公司 | 进程管理方法、装置、存储介质及电子设备 |
CN109145590B (zh) * | 2018-07-27 | 2023-04-07 | 平安科技(深圳)有限公司 | 一种函数hook检测方法、检测设备及计算机可读介质 |
CN109918907B (zh) * | 2019-01-30 | 2021-05-25 | 国家计算机网络与信息安全管理中心 | Linux平台进程内存恶意代码取证方法、控制器及介质 |
CN110598410B (zh) * | 2019-09-16 | 2021-11-16 | 腾讯科技(深圳)有限公司 | 一种恶意进程的确定方法、装置、电子设备及存储介质 |
CN113209630B (zh) * | 2021-05-14 | 2022-09-30 | 上海完美时空软件有限公司 | 游戏应用的抓帧防御方法及装置、存储介质、计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489049A (zh) * | 2002-10-11 | 2004-04-14 | 华为技术有限公司 | 一种对后台程序进行监控的方法 |
CN101414339A (zh) * | 2007-10-15 | 2009-04-22 | 北京瑞星国际软件有限公司 | 保护进程内存及确保驱动程序加载的安全性的方法 |
CN102147845A (zh) * | 2011-04-18 | 2011-08-10 | 北京思创银联科技股份有限公司 | 进程监控方法 |
CN102737198A (zh) * | 2011-04-13 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 对象保护方法及装置 |
CN102902913A (zh) * | 2012-09-19 | 2013-01-30 | 无锡华御信息技术有限公司 | 防止恶意破坏计算机内的软件的保全方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959639B2 (en) * | 2007-06-18 | 2015-02-17 | Symantec Corporation | Method of detecting and blocking malicious activity |
-
2016
- 2016-06-02 CN CN201610388463.9A patent/CN106096391B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489049A (zh) * | 2002-10-11 | 2004-04-14 | 华为技术有限公司 | 一种对后台程序进行监控的方法 |
CN101414339A (zh) * | 2007-10-15 | 2009-04-22 | 北京瑞星国际软件有限公司 | 保护进程内存及确保驱动程序加载的安全性的方法 |
CN102737198A (zh) * | 2011-04-13 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 对象保护方法及装置 |
CN102147845A (zh) * | 2011-04-18 | 2011-08-10 | 北京思创银联科技股份有限公司 | 进程监控方法 |
CN102902913A (zh) * | 2012-09-19 | 2013-01-30 | 无锡华御信息技术有限公司 | 防止恶意破坏计算机内的软件的保全方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106096391A (zh) | 2016-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106096391B (zh) | 一种进程控制方法及用户终端 | |
CN110046101B (zh) | 页面自动化测试方法、装置及计算机存储介质 | |
CN106445292B (zh) | 应用程序的分身管理方法及系统 | |
CN108376094B (zh) | 通知消息显示方法、装置、计算机设备和存储介质 | |
WO2016033966A1 (zh) | 应用数据的保护方法及装置 | |
CN109726067B (zh) | 一种进程监控方法以及客户端设备 | |
CN106681811A (zh) | 基于线程池的多线程调度方法及装置 | |
WO2017049893A1 (zh) | 一种应用程序的测试方法、测试装置及移动终端 | |
US10943160B2 (en) | Dynamic graphic code implementation method and apparatus | |
CN110795172B (zh) | 前台进程控制方法、装置、电子设备以及存储介质 | |
CN105847319A (zh) | 一种移动终端网络请求方法及系统 | |
CN106155870B (zh) | 一种终端的优化处理方法、装置及终端 | |
CN108664389B (zh) | 一种测试方法、装置及终端 | |
CN111901318A (zh) | 一种命令注入攻击检测的方法、系统及设备 | |
CN104750553A (zh) | 应用运行方法和装置 | |
CN106055935A (zh) | 一种进程控制方法、装置及电子设备 | |
US9348667B2 (en) | Apparatus for managing application program and method therefor | |
CN112631949B (zh) | 一种调试方法、装置、计算机设备及存储介质 | |
CN106022149B (zh) | 一种进程控制方法及用户终端 | |
WO2022237083A1 (zh) | 信息显示方法、装置、终端、存储介质及计算机程序产品 | |
CN115688102A (zh) | 窗口的处理方法、装置、处理器及电子设备 | |
CN106708737B (zh) | 一种测试方法及装置 | |
CN111352793A (zh) | 一种监测应用使用数据的方法及装置 | |
WO2022193142A1 (zh) | 行为监控方法、装置、终端设备及计算机可读存储介质 | |
CN112463626B (zh) | 内存泄漏定位方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20181203 Address after: Room 105-53811, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province Applicant after: Zhuhai Leopard Technology Co.,Ltd. Address before: 100085 East District, Second Floor, 33 Xiaoying West Road, Haidian District, Beijing Applicant before: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |