CN109711153B - 一种windows进程保护方法及系统 - Google Patents

一种windows进程保护方法及系统 Download PDF

Info

Publication number
CN109711153B
CN109711153B CN201811600359.7A CN201811600359A CN109711153B CN 109711153 B CN109711153 B CN 109711153B CN 201811600359 A CN201811600359 A CN 201811600359A CN 109711153 B CN109711153 B CN 109711153B
Authority
CN
China
Prior art keywords
hook module
protected process
hook
windows
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811600359.7A
Other languages
English (en)
Other versions
CN109711153A (zh
Inventor
林皓
石建春
毕永东
顾德仲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mixin (Beijing) Digital Technology Co.,Ltd.
Original Assignee
Beijing Beixinyuan Information Security Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Beixinyuan Information Security Technology Co ltd filed Critical Beijing Beixinyuan Information Security Technology Co ltd
Priority to CN201811600359.7A priority Critical patent/CN109711153B/zh
Publication of CN109711153A publication Critical patent/CN109711153A/zh
Application granted granted Critical
Publication of CN109711153B publication Critical patent/CN109711153B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Retry When Errors Occur (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供了一种windows进程保护方法及系统,方法包括:基于hook技术,在windows所有进程中注入预设的hook模块;当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。本发明实施例提供的一种windows进程保护方法及系统,能够通过在进程中注入hook模块,从而对进程进行轻量级保护,保护过程不会引起系统蓝屏并且实时阻断,响应时间短。

Description

一种windows进程保护方法及系统
技术领域
本发明实施例涉及系统安全技术领域,尤其涉及一种windows进程保护方法及系统。
背景技术
目前,大多数企业内部的办公系统主要采用的仍旧是windows操作系统,而对于重要的企事业单位对内部的电脑都有监控软件,那么如何防止监控软件被人杀死成为了一项亟待解决的任务。
现有技术中对于监控软件的防护工作主要采用了两种方式,一种是通过对进程进行驱动保护,在驱动层对终止软件的请求进行阻断实现保护。但是这种方案风险较高,一旦出现bug,将引起系统蓝屏等严重现象。第二种是通过一个守护进程或守护服务,检测监控软件是否允许,若进程被停止则重新启动,但是这种方案不能做到实时防护的效果。
因此,现在亟需一种windows进程保护方法来解决现有技术中存在的问题。
发明内容
为了解决上述问题,本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的一种windows进程保护方法及系统。
第一方面本发明实施例提供一种windows进程保护方法,包括:
基于hook技术,在windows所有进程中注入预设的hook模块;
当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
第二方面本发明实施例提供了一种windows进程保护系统,包括:
注入模块,用于基于hook技术,在windows所有进程中注入预设的hook模块;
保护模块,用于当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
第三方面本发明实施例提供了一种电子设备,包括:
处理器、存储器、通信接口和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述windows进程保护方法。
第四方面本发明实施例提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述的windows进程保护方法。
本发明实施例提供的一种windows进程保护方法及系统,能够通过在进程中注入hook模块,从而对进程进行轻量级保护,保护过程不会引起系统蓝屏并且实时阻断,响应时间短。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种windows进程保护方法流程示意图;
图2是本发明实施例提供的一种windows进程保护系统结构示意图;
图3是本发明实施例提供的电子设备的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,现有技术中在进行进程保护时,经常会出现不必要的系统蓝屏现象,又或者不能实时进行阻断,造成处理延时高。
针对上述问题,图1是本发明实施例提供的一种windows进程保护方法流程示意图,如图1所示,包括:
101、基于hook技术,在windows所有进程中注入预设的hook模块;
102、当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
需要说明的是,本发明实施例的应用场景可以是在对任意进程进行保护时实施。例如:在公司内部使用本发明实施例提供的方法能够防止用户通过外部软件如进程管理器、procnt等软件对进程进行杀死操作,从而有针对性的对windows进程进行保护。
具体的,在步骤101中,本发明实施例会在windows进程中注入一个hook模块,hook技术也可称为api hook技术,它可以改变一个系统api的原有功能,基本的思路是通过hook接触到需要修改的api函数入口点,然后改变它的地址指向新的自定义函数,从而改变api函数的目的。
进一步的,在步骤102中,可以理解的是,通过进程中注入的hook模块能够改变系统api函数的功能和权限,从而阻止受保护的进程被杀死。在本发明实施例中,把针对于受保护进程的结束、终端、删除等类似的指令统称为杀死请求,那么通过hook模块检测到有针对受保护进程发生的杀死请求时,能够及时将该杀死请求进行阻断,从而保护受保护进程,上述受保护进程可以实时进行识别也可以预先定义清楚,对此本发明实施例不作具体限定。
在上述实施例的基础上,在所述当检测到存在向受保护进程进行的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程之前,所述方法还包括:
遍历windows所有进程,确定所述受保护进程的ID。
由上述实施例的内容可知,本发明实施例会通过注入的hook模块来对受保护的进程进行实时保护。
那么实质上在保护的过程中,本发明实施例还需要对进程进行识别,从而分析出哪个进程是我们所需要的受保护的进程。具体的,本发明实施例在进程列表中进行遍历,获取受保护进程的ID号,从而根据该ID号能够比对出杀死请求所针对的进程是否为受保护进程。
在上述实施例的基础上,在所述遍历windows所有进程,确定所述受保护进程的ID之前,所述方法还包括:
将所述受保护进程加密存储于共享内存中。
由上述实施例的内容可知,本发明实施例会确定受保护进程的ID,可以理解的是,该受保护进程需要预先部署才能进行确定。本发明实施例采用的部署方案是通过共享内存将要保护的进程加密存储于共享内存中,之后在确定进程是否为受保护进程时即可直接通过共享内存检测进程ID。
还需要说明的是,本发明实施例会提前获取受保护进程的相关信息,例如进程名称、签名、厂商等,并将相关信息一并加密写入共享内存中。
在上述实施例的基础上,所述基于hook技术,在windows所有进程中注入预设的hook模块,包括:
通过消息注入方式,将所述hook模块注入windows所有进程中,并在所述hook模块中hook住openprocess api和terminateprocess api。
由上述实施例的内容可知,本发明实施例会在每个windows进程中进行hook模块的注入。
具体的,首先本发明实施例需要编写hook模块,并预先在hook模块中将其与openprocess,terminateprocess函数挂钩,即本发明实施例中的hook住openprocess api和terminateprocess api,接着在主调程序中通过调用setwindowshook、setwindowshookEx等消息注入方式将hook模块注入到相应进程中,需要说明的是,本发明实施例也可以通过驱动注入的方式将保护模块注入到特定一些进程中,对此本发明实施例不作具体限定。
在上述实施例的基础上,所述方法还包括:
对所述openprocess api函数进程进行处理,取消掉所述受保护进程的杀死权限,并增加所述受保护进程的查询权限。
由上述实施例的内容可知,本发明实施例需要对受保护进程进行保护,那么实质上本发明实施例的保护从两个方面进行,第一个方面即通过openprocess api函数进程进行处理,取消掉所述受保护进程的杀死权限,并增加所述受保护进程的查询权限。从而受保护程序在权限上不能被杀死,但是可以被查询,可以理解的是,当取消掉受保护进程的杀死权限后,一般该进程将无权终止该进程。
在上述实施例的基础上,所述当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程,包括:
当所述hook模块截取到所述terminateprocess api的调用是针对所述受保护进程时,阻断终止受保护进程的操作。
可以理解的是,本发明实施例对于进程的第二方面保护主要在于通过对terminateprocess的api函数进程处理。具体的,当用户下达对某一进程的终止指令,即本发明实施例中的杀死请求时,本发明实施例提供的hook模块会截取到terminateprocessapi的调用。
进一步的,如果调用GetProcessID获取当前进程的ID和受保护进程的ID相符,则证明该杀死请求是针对受保护进程的,那么本发明实施例需要及时阻断该杀死请求,从而实现对受保护进程的保护。
图2是本发明实施例提供的一种windows进程保护系统结构示意图,如图2所示,包括:注入模块201以及保护模块202,其中:
注入模块201用于基于hook技术,在windows所有进程中注入预设的hook模块;
保护模块202用于当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
具体的如何通过注入模块201以及保护模块202进行windows进程保护可用于执行图1所示的windows进程保护方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本发明实施例提供的一种windows进程保护系统,能够通过在进程中注入hook模块,从而对进程进行轻量级保护,保护过程不会引起系统蓝屏并且实时阻断,响应时间短。
在上述实施例的基础上,所述系统还包括:
受保护进程确定模块,用于遍历windows所有进程,确定所述受保护进程的ID。
在上述实施例的基础上,所述系统还包括:
加密保存模块,用于将所述受保护进程加密存储于共享内存中。
在上述实施例的基础上,所述注入模块包括:
消息注入单元,用于通过消息注入方式,将所述hook模块注入windows所有进程中,并在所述hook模块中hook住openprocess api和terminateprocess api。
在上述实施例的基础上,所述系统还包括:
权限取消模块,用于对所述openprocess api函数进程进行处理,取消掉所述受保护进程的杀死权限,并增加所述受保护进程的查询权限。
在上述实施例的基础上,所述保护模块包括:
截取单元,用于当所述hook模块截取到所述terminateprocess api的调用是针对所述受保护进程时,阻断终止受保护进程的操作。
本发明实施例提供一种电子设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:
图3是本发明实施例提供的电子设备的结构框图,参照图3,所述电子设备,包括:处理器(processor)301、通信接口(Communications Interface)302、存储器(memory)303和总线304,其中,处理器301,通信接口302,存储器303通过总线304完成相互间的通信。处理器301可以调用存储器303中的逻辑指令,以执行如下方法:基于hook技术,在windows所有进程中注入预设的hook模块;当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:基于hook技术,在windows所有进程中注入预设的hook模块;当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:基于hook技术,在windows所有进程中注入预设的hook模块;当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行每个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (5)

1.一种windows进程保护方法,其特征在于,包括:
基于hook技术,在windows所有进程中注入预设的hook模块;
当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程;在所述当检测到存在向受保护进程进行的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程之前,所述方法还包括:
遍历windows所有进程,确定所述受保护进程的ID;
对openprocess api函数进程进行处理,取消掉所述受保护进程的杀死权限,并增加所述受保护进程的查询权限;所述当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程,包括:当所述hook模块截取到terminateprocess api的调用是针对所述受保护进程时,阻断终止受保护进程的操作;
所述基于hook技术,在windows所有进程中注入预设的hook模块,包括:
通过消息注入方式,将所述hook模块注入windows所有进程中,并在所述hook模块中hook住openprocess api和terminateprocess api,
具体包括:
编写所述hook模块,并预先将所述hook模块中将其与
openprocess,terminateprocess函数挂钩;
在主调程序中通过调用setwindowshook、setwindowshookEx,实
现以消息注入方式将所述hook模块注入到各windows进程中。
2.根据权利要求1所述的方法,其特征在于,在所述遍历windows所有进程,确定所述受保护进程的ID之前,所述方法还包括:
将所述受保护进程加密存储于共享内存中。
3.一种windows进程保护系统,其特征在于,包括:
注入模块,用于基于hook技术,在windows所有进程中注入预设的hook模块;
保护模块,用于当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程;
在所述当检测到存在向受保护进程进行的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程之前,还包括:
遍历windows所有进程,确定所述受保护进程的ID;
对openprocess api函数进程进行处理,取消掉所述受保护进程的杀死权限,并增加所述受保护进程的查询权限;所述当检测到存在向受保护进程发出的杀死请求时,基于所述hook模块,截获所述杀死请求,以保护所述受保护进程,包括:当所述hook模块截取到terminateprocess api的调用是针对所述受保护进程时,阻断终止受保护进程的操作;
所述基于hook技术,在windows所有进程中注入预设的hook模块,包括:
通过消息注入方式,将所述hook模块注入windows所有进程中,并在所述hook模块中hook住openprocess api和terminateprocess api,
具体包括:
编写所述hook模块,并预先将所述hook模块中将其与
openprocess,terminateprocess函数挂钩;
在主调程序中通过调用setwindowshook、setwindowshookEx,实
现以消息注入方式将所述hook模块注入到各windows进程中。
4.一种电子设备,其特征在于,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至2任一所述的方法。
5.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至2任一项所述的方法。
CN201811600359.7A 2018-12-26 2018-12-26 一种windows进程保护方法及系统 Active CN109711153B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811600359.7A CN109711153B (zh) 2018-12-26 2018-12-26 一种windows进程保护方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811600359.7A CN109711153B (zh) 2018-12-26 2018-12-26 一种windows进程保护方法及系统

Publications (2)

Publication Number Publication Date
CN109711153A CN109711153A (zh) 2019-05-03
CN109711153B true CN109711153B (zh) 2021-03-19

Family

ID=66258384

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811600359.7A Active CN109711153B (zh) 2018-12-26 2018-12-26 一种windows进程保护方法及系统

Country Status (1)

Country Link
CN (1) CN109711153B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1605968A (zh) * 2004-11-15 2005-04-13 南京大学 基于程序内部行为监控的软件安全保障的方法
CN1624617A (zh) * 2003-12-03 2005-06-08 株式会社因卡网络 阻断对游戏进程非法访问以及操作游戏进程的方法
CN106648863A (zh) * 2016-12-08 2017-05-10 武汉斗鱼网络科技有限公司 一种安卓应用安装包、应用目标进程保活方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156834B (zh) * 2011-04-18 2013-04-24 北京思创银联科技股份有限公司 实现进程防杀的方法
CN103677978B (zh) * 2013-12-30 2018-04-10 Tcl集团股份有限公司 一种对进程进行保护的方法和电子设备
CN106682493B (zh) * 2015-11-06 2019-08-27 珠海豹趣科技有限公司 一种防止进程被恶意结束的方法、装置及电子设备
CN106228064A (zh) * 2016-07-27 2016-12-14 宇龙计算机通信科技(深圳)有限公司 一种应用进程的保护方法和装置
CN108446553B (zh) * 2018-03-22 2021-11-12 北京金山安全软件有限公司 一种进程保护的方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1624617A (zh) * 2003-12-03 2005-06-08 株式会社因卡网络 阻断对游戏进程非法访问以及操作游戏进程的方法
CN1605968A (zh) * 2004-11-15 2005-04-13 南京大学 基于程序内部行为监控的软件安全保障的方法
CN106648863A (zh) * 2016-12-08 2017-05-10 武汉斗鱼网络科技有限公司 一种安卓应用安装包、应用目标进程保活方法及系统

Also Published As

Publication number Publication date
CN109711153A (zh) 2019-05-03

Similar Documents

Publication Publication Date Title
US10623440B2 (en) Method and system for protecting web applications against web attacks
US11227053B2 (en) Malware management using I/O correlation coefficients
EP3225009B1 (en) Systems and methods for malicious code detection
US9990490B2 (en) Generic privilege escalation prevention
KR101700552B1 (ko) 보안 운영 체제 환경으로의 콘텍스트 기반 전환
US20150237070A1 (en) Systems and methods for applying data loss prevention policies to closed-storage portable devices
US20100306850A1 (en) Behavioral engine for identifying patterns of confidential data use
US9026801B2 (en) System call interception
US10867049B2 (en) Dynamic security module terminal device and method of operating same
US20200320203A1 (en) Continuous risk assessment for electronic protected health information
US10769275B2 (en) Systems and methods for monitoring bait to protect users from security threats
US9928373B2 (en) Technique for data loss prevention for a cloud sync application
US10339307B2 (en) Intrusion detection system in a device comprising a first operating system and a second operating system
JP6243479B2 (ja) コンピュータセキュリティのためのイノキュレータ及び抗体
CN110807191B (zh) 一种应用程序的安全运行方法及装置
US10826944B1 (en) Systems and methods for network security
CN111859379B (zh) 保护数据模型的处理方法和装置
CN109711153B (zh) 一种windows进程保护方法及系统
US20200218832A1 (en) Automatic Initiation of Execution Analysis
CN107819787B (zh) 一种防止局域网计算机非法外联系统及其方法
CN114417325A (zh) 基于注册表的防护方法及装置
CN105653939A (zh) 一种防御文档溢出的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 100195 Room 301, floor 3, building 103, No. 3, minzhuang Road, Haidian District, Beijing

Patentee after: Mixin (Beijing) Digital Technology Co.,Ltd.

Address before: 100093 301, 3rd floor, building 103, 3 minzhuang Road, Haidian District, Beijing

Patentee before: BEIJING BEIXINYUAN INFORMATION SECURITY TECHNOLOGY CO.,LTD.

CP03 Change of name, title or address