[发明专利]一种驱动层防注入方法、装置及客户端有效
申请号: | 201611112097.0 | 申请日: | 2016-12-01 |
公开(公告)号: | CN106778269B | 公开(公告)日: | 2020-09-25 |
发明(设计)人: | 杨传辉;陈铭霖 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;贾允 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 驱动 注入 方法 装置 客户端 | ||
本发明提供一种驱动层防注入方法、装置及客户端。包括如下步骤:创建防异步过程调用动态链接库,所述动态链接库包含LdrLoadDLL的钩子函数和APC注入模块名单。建立与防异步过程调用动态链接库之间的静态链接。创建主线程,调用所述防异步过程调用动态链接库,加载LdrLoadDLL的钩子函数,获取经过编译的所述APC注入模块名单。根据所述LdrLoadDLL的钩子函数和APC注入模块名单判断是否存在APC注入模块;若存在,拦截所述APC注入模块。本发明能够在进程创建主线程时即对可能存在的APC进行识别和拦截,有效拦截驱动层APC注入,从而提升系统的安全性和稳定性。
技术领域
本发明属于系统安全技术领域,具体涉及一种驱动层防注入方法、装置及客户端。
背景技术
异步过程调用(APC:asynchronous procedure call)是指函数在特定线程中被异步执行。在Microsoft Windows操作系统中,APC是一种并发机制,用于异步IO或者定时器。
客户端程序的稳定性和安全性是必不可少的参考指标。某些第三方模块会有漏洞(Bug)的存在,这些漏洞会通过APC的方式注入到其它客户端程序,从而带来客户端程序的不稳定,由此带来负面的用户体验和反馈。因此,如何减少第三方模块注入给软件所造成的影响便成了客户端软件稳定性中的一个不可或缺的环节。
现有技术中,尚未发现在驱动层拦截第三方模块APC注入的技术。
发明内容
因此,本发明提出一种驱动层防注入方法、装置及客户端。所述驱动层防注入方法包括如下步骤:
创建驱动层防注入动态链接库,所述驱动层防注入动态链接库包含钩子函数和驱动层注入模块名单;建立所述驱动层防注入动态链接库与应用程序之间的静态链接,以使得所述应用程序的主线程被建立时,所述驱动层防注入动态链接库被首先调用,所述钩子函数和所述驱动层注入模块名单被加载;响应于所述应用程序的主线程对第三方模块的加载,判断所述被加载的钩子函数返回的第三方模块是否属于所述驱动层注入模块名单;若是,通过钩子函数拦截所述返回的第三方模块。
所述驱动层防注入装置包括如下模块:
驱动层防注入动态链接库创建模块,用于创建驱动层防注入动态链接库,所述驱动层防注入动态链接库包含钩子函数和驱动层注入模块名单;静态链接建立模块,用于建立应用程序与所述驱动层防注入动态链接库之间的静态链接,以使得当所述应用程序的主线程被建立时,所述驱动层防注入动态链接库被首先调用,所述钩子函数和所述驱动层注入模块名单被加载;判断模块,用于判断所述被加载的钩子函数返回的模块是否属于所述驱动层注入模块名单;拦截模块,用于在被加载的钩子函数返回的模块属于所述驱动层注入模块名单时,拦截钩子函数返回的所述模块。
所述驱动层防注入客户端包括前述的装置。
本发明具有如下有益效果:本发明能够在进程创建主线程时即对可能存在的驱动层注入进行识别和拦截,有效拦截驱动层的第三方模块注入,从而提升系统的安全性和稳定性。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明;
图1是本发明实施例一提供的驱动层防异步过程调用注入方法流程图。
图2是本发明实施例一提供的驱动层防异步过程调用注入方法流程图。
图3是本发明实施例二提供的驱动层防异步过程调用注入方法流程图。
图4是本发明实施例三提供的防异步过程调用注入装置结构示意图。
图5是本发明实施例三提供的获取异步过程调用(APC)注入模块名单模块结构示意图。
图6是本发明实施例三提供的防异步过程调用动态链接库创建模块结构示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611112097.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:恶意代码检测方法与系统
- 下一篇:一种恶意应用程序的检测方法及系统