[发明专利]一种Windows的进程保护方法在审
申请号: | 201410347284.1 | 申请日: | 2014-07-21 |
公开(公告)号: | CN104123492A | 公开(公告)日: | 2014-10-29 |
发明(设计)人: | 柯宗贵;杨育斌;梁永秋 | 申请(专利权)人: | 蓝盾信息安全技术有限公司 |
主分类号: | G06F21/51 | 分类号: | G06F21/51 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 510665 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 windows 进程 保护 方法 | ||
技术领域
本发明涉及网络安全技术领域,尤其涉及一种Windows的进程保护方法。
背景技术
进程保护是为了防止恶意程序破坏进程的正常运行。很多软件,如机房的监控系统、计费系统等,以及一些必须确保自身运行过程中不被强行中断,否则会导致数据丢失、操作系统崩溃等严重后果的软件,都需要对自身进行必要的防护,防止恶意行为或者操作者的误操作引起的损失。
要强制关闭一个进程,通常的做法是在应用层调用OpenProcess函数打开进程,打开进程后再调用TerminateProcess函数强制关闭进程。所以,进程保护的方法就是要阻止这两个函数的其中一个运行就可以了。在Windows系统的内核,这两个函数分别对应的是NtOpenProcess函数和NtTerminateProcess函数。要接管这两个函数,可以在驱动层的SSDT表(System Services Descriptor Table)把指向这两个函数的地址替换成自己函数的地址(Hook方法)。这样,所有调用这两个函数的调用,都先会经过自己函数的判断,才会去调用真正的函数去执行,这样就可以起到保护进程的作用。
采用SSDT Hook的方法实现简单,系统本身就会导出SSDT表。但是就是因为过于简单,所以很多杀毒软件、病毒和一些监控类软件,都会检查或者使用这个SSDT表。所以使用SSDTHook方法会有隐藏性不足的问题,并且会和其他软件产生稳定性和兼容性的问题等。由于在64位的Windows下系统自带一个PatchGuard技术,这个技术会定期检查系统的内核有无被修改(Patch),一旦修改就会引发蓝屏,所以SSDT Hook方法在64位系统下不能使用。
针对SSDT Hook的方法存在不足,就产生了inLine Hook方法。inLine Hook方法是指在函数开头处写入jmp XXXX的汇编指令,来转跳到自己的函数。这样就可以使被Hook函数先执行我们自己的判断函数后,再执行被Hook函数,从而到达Hook目的。对于进程保护的两个函数:NtOpenProcess函数和NtTerminateProcess函数,他们执行中会调用到:ObReferenceObjectByHandle函数、ObReferenceObjectByPointer函数和ObpCreateHandle函数。所以,只要对这3个函数进行inLine Hook就可以达到进程保护的目的。
由于要Patch系统代码,所以采用inLine Hook的方法难度高,稳定性差。如果其他进程保护软件也inLine Hook同一函数,就会存在兼容性的问题。另外,在64位Windows系统下也存在不能使用的问题。
发明内容
本发明为了克服现有技术中的缺点或不足,提供了一种Windows的进程保护方法,从而实现了保护进程的目的。
一种Windows的进程保护方法,其通过驱动程序把含有核心功能代码的dll注入到系统进程运行,从而监视被保护进程的状态。
该发明方法的具体流程为:当Windows系统启动的时候通过自定义的驱动程序调用映像加载通知函数来注册自定义的映像加载回调函数。当被注入的目标系统进程启动前,并且映像开始加载的时候,自定义的映像加载回调函数就会马上被调用。在自定义的回调函数中检查目标系统进程的导入表,当找到可以注入的系统动态库dll的时候,就修改目标系统进程的导入表,把系统动态库dll更改为自定义的动态库,即注入的dll动态库,这样就完成dll注入动作。当系统进程启动后,注入的dll动态库中的代码就可以秘密地运行。在后台隐藏运行的代码可以不断地监视被保护进程的相关情况,在遇到特殊情况发现被保护进程关闭后,就可以马上重启被保护进程,这样就可以达到进程保护的目的。
本发明技术方案带来的有益效果:
本发明方法有很好的稳定性和兼容性,实现难度不大,隐蔽性好,由于没有Patch系统代码,所以64位Windows操作系统也同样适用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明的方法流程图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于蓝盾信息安全技术有限公司,未经蓝盾信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410347284.1/2.html,转载请声明来源钻瓜专利网。