[发明专利]一种Windows的进程保护方法在审
申请号: | 201410347284.1 | 申请日: | 2014-07-21 |
公开(公告)号: | CN104123492A | 公开(公告)日: | 2014-10-29 |
发明(设计)人: | 柯宗贵;杨育斌;梁永秋 | 申请(专利权)人: | 蓝盾信息安全技术有限公司 |
主分类号: | G06F21/51 | 分类号: | G06F21/51 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 510665 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 windows 进程 保护 方法 | ||
1.一种Windows的进程保护方法,其特征在于,其通过驱动程序把含有核心功能代码的dll注入到系统进程运行,从而监视被保护进程的状态,具体流程如下:
当Windows系统启动的时候通过自定义的驱动程序调用映像加载通知函数来注册自定义的映像加载回调函数;
当被注入的目标系统进程启动前,并且映像开始加载的时候,自定义的映像加载回调函数就会马上被调用;
在自定义的回调函数中检查目标系统进程的导入表,当找到可以注入的系统动态库dll的时候,就修改目标系统进程的导入表,把系统动态库dll更改为自定义的动态库,即注入的dll动态库,这样就完成dll注入动作;
当系统进程启动后,注入的dll动态库中的代码就可以秘密地运行,在后台隐藏运行的代码可以不断地监视被保护进程的相关情况。
2.根据权利要求1所述的方法,其特征在于,当Windows系统启动的时候通过自定义的驱动程序调用映像加载通知函数PsSetLoadImageNotifyRoutine来注册自己的映像加载回调函数。
3.根据权利要求1所述的方法,其特征在于,选取系统服务控制进程services.exe作为被注入的目标系统进程。
4.根据权利要求1所述的方法,其特征在于,在自定义的回调函数中检查系统进程services.exe的导入表,当找到系统导入的动态库scesrv.dll的时候,修改系统进程services.exe的导入表。
5.根据权利要求4所述的方法,其特征在于,动态库scesrv.dll有两个导出函数,分别是ScesrvInitializeServer函数和ScesrvTerminateServer函数,这两个导出函数正是系统进程services.exe的导入函数,注入的dll动态库的导出表必须包含这两个函数,另外由于注入的dll动态库无办法实现这两个函数的具体功能,所以注入的dll动态库也必须从动态库scesrv.dll导入这两个函数,来实现系统相关的功能代码。
6.根据权利要求1所述的方法,其特征在于,后台隐藏运行的代码调用函数EnumProcesses、Process32First和Process32Next不断地监视被保护进程的相关情况。
7.根据权利要求1所述的方法,其特征在于,遇到特殊情况发现被保护进程关闭后,马上调用CreateProcess函数来重启被保护进程,这样就可以达到进程保护的目的。
8.根据权利要求1所述的方法,其特征在于,该方法也适用于64位Windows操作系统。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于蓝盾信息安全技术有限公司,未经蓝盾信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410347284.1/1.html,转载请声明来源钻瓜专利网。