[发明专利]浏览器防注入方法、浏览器客户端和装置有效
申请号: | 201410740794.5 | 申请日: | 2014-12-05 |
公开(公告)号: | CN104539584B | 公开(公告)日: | 2018-01-19 |
发明(设计)人: | 党壮;梁志辉;王天平 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 浏览器 注入 方法 客户端 装置 | ||
技术领域
本发明涉及浏览器技术领域,具体涉及一种浏览器防注入方法、一种浏览器客户端和带有浏览器客户端的装置。
背景技术
浏览器是指可以显示网页服务器或者文件系统的HTML(超文本标记语言,HyperText Mark-up Language))文件内容,并让用户与这些文件交互的一种软件。网页浏览器主要通过HTTP协议与网页服务器交互并获取网页,这些网页由URL(统一资源定位符,Uniform Resource Locator)指定,文件格式通常为HTML。
在浏览器使用过程中,可能有其他程序向浏览器注入一些动态链接库,以控制浏览器执行自己需要的逻辑,比如网络请求被重定向到不安全网页、收藏夹里自动反复添加不安全网站、IE选项卡中出现不能更改或被隐藏的项目、获取在网页中的登录名和密码等,因此,这些程序注入的动态链接库对于用户的浏览器来说并不安全。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的浏览器客户端和相应的浏览器防注入方法。
依据本发明的一个方面,提供了一种浏览器防注入的方法,包括:
加载用于拦截窗口消息的窗口消息钩子函数;
针对操作系统中的窗口消息,通过所述窗口消息钩子函数进行拦截;
判断所述窗口消息是否为劫持浏览器的窗口消息;
如果所述窗口消息是劫持浏览器的窗口消息,则停止所述窗口消息的传输。
优选地,所述加载用于拦截窗口消息的窗口消息钩子函数,包括:
调用动态链接库加载函数加载所述窗口消息钩子函数所在的动态链接库,以加载所述窗口消息钩子函数。
优选地,所述判断所述窗口消息是否为劫持浏览器的窗口消息,包括:
将所述窗口消息所属的窗口句柄名与预置的窗口句柄名单进行匹配;如果所述窗口句柄匹配上,则确定所述窗口消息为劫持浏览器的窗口消息。
优选地,在窗口句柄匹配之后,还包括:
获取所述窗口句柄所属应用程序的验证签名;
对所述验证签名进行验证,如果所述验证失败,则确定所述窗口消息为劫持浏览器的窗口消息。
优选地,所述针对操作系统中的窗口消息,通过所述窗口消息钩子函数进行拦截包括:
针对操作系统中的创建窗口的窗口消息,通过所述窗口消息钩子函数进行拦截。
优选地,所述针对操作系统中的创建窗口的窗口消息,通过所述窗口消息钩子函数进行拦截包括:
针对操作系统中的创建窗口的WM_CREATE消息,通过所述窗口消息钩子函数进行拦截。
优选地,所述加载用于拦截窗口消息的窗口消息钩子函数包括:
浏览器向当前操作系统中的第一操作系统服务发送加载请求,以便所述第一操作系统服务通过调用一虚拟的设备级驱动程序以加载用于拦截窗口消息的窗口消息钩子函数。
优选地,还包括:
浏览器获取第一操作系统服务的安装文件并进行安装,以得到所述当前操作系统中的第一操作系统服务。
优选地,所述浏览器向当前操作系统中的第一操作系统服务发送加载请求,包括:
所述浏览器通过预置的接口向独立于浏览器的第二应用程序发送加载请求;所述独立于浏览器的第二应用程序将所述加载请求发送至当前操作系统中的第一操作系统服务,以便所述第一操作系统服务通过调用一虚拟的设备级驱动程序以加载用于拦截窗口消息的窗口消息钩子函数。
优选地,所述浏览器获取第一操作系统服务的安装文件并进行安装,以得到所述当前操作系统中的第一操作系统服务,包括:
获取第一操作系统服务的安装文件,通过所述第一操作系统服务的安装文件安装所述第一操作系统服务的动态链接库和所述虚拟的设备级驱动程序;
启动所述第一操作系统服务所在应用程序,以加载第一操作系统服务的动态链接库;所述第一操作系统服务通过所述动态链接库调用所述虚拟的设备级驱动程序。
优选地,所述浏览器获取第一操作系统服务的安装文件并进行安装,以得到所述当前操作系统中的第一操作系统服务,包括:
判断所述第一操作系统服务是否存在;如果所述第一操作系统服务不存在,则获取第一操作系统服务的安装文件并进行安装,以得到所述当前操作系统中的第一操作系统服务。
优选地,所述第一操作系统服务通过调用一虚拟的设备级驱动程序以加载用于拦截窗口消息的窗口消息钩子函数,包括:
所述第一操作系统服务接收到所述加载请求,根据所述加载请求创建I/O请求包下发至所述虚拟的设备级驱动程序;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410740794.5/2.html,转载请声明来源钻瓜专利网。