[发明专利]一种基于Windows10系统下的截获用户文件打开的系统及方法在审
申请号: | 201811037130.7 | 申请日: | 2018-09-06 |
公开(公告)号: | CN110879775A | 公开(公告)日: | 2020-03-13 |
发明(设计)人: | 娄国栋 | 申请(专利权)人: | 山东华软金盾软件股份有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F12/02 |
代理公司: | 北京金宏来专利代理事务所(特殊普通合伙) 11641 | 代理人: | 许振强;苗彩娟 |
地址: | 250000 山东省济南市高新区舜华路1号齐鲁软*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 windows10 系统 截获 用户 文件 打开 方法 | ||
本发明公开了一种基于Windows10系统下的截获用户文件打开的系统及方法,通过动态调试手段找到用户主动打开文件时调用的关键函数,然后通过微软符号动态的计算出关键函数的内存地址,由于关键函数是系统动态库的内部函数,无法通过常规的方法LoadLibrary和GetProcAddress等常规方式动态获取该函数的内存地址,通过函数特征码匹配的方式找到关键函数地址;为了保证产品功能的稳定性我们研究使用了另外一种更加稳定可靠的方式,通过微软的官方的调试符号PDB文件获取该内部函数的函数地址,然后缓存该函数地址和模块信息备用,并且在遇到系统版本升级等情况下等可能会导致函数地址改变的情况下自动的进行重新的取获和适配,保证产品功能和系统的而稳定性。
技术领域
本发明涉及计算机网络技术领域,具体涉及一种基于Windows10系统下的截获用户文件打开的系统及方法。
背景技术
Windows NT早期版本(XP系统及以下)用户通过鼠标双击或者通过键盘快速打开文件时资源管理器调用的是操作系统导出的SHShellEecuteExW函数接口,这样,截获用户主动打开文件的动作只需要先通过DLL注入技术注入到系统的资源管理器进程,然后通过Hook该进程的SHShellEecuteExW函数接口即可实现。但是在Win7以及Win7以后的Windows操作系统中资源管理器打开文件的时候不再调用此API函数,这样开发者就无法通过这种方法截获用户主动打开文件的动作。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于Windows10系统下的截获用户文件打开的系统及方法,解决了获取打开文件全路径准确性的问题,在确保不破坏资源管理器系统功能的前提下,实现了Windows10系统下截获用户主动打开文件的过程且功能稳定。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种基于Windows10系统下的截获用户文件打开的系统,包括:
传输模块,用于将微软官方符号的域名和本地路径拼成的符号地址传输到符号初始化中进行初始化操作,得到初始化地址;
获取模块,通过调用初始化地址中的符号函数获取符号文件;
计算模块,通过调用初始化地址中的枚举函数,得到关键函数地址和相关模块基址后,将获取到的相关模块基址和函数偏移相加,得到关键函数的绝对内存地址;
缓存模块,通过调用初始化地址中的获取文件模块文件,得到获取文件的绝对路径,然后用于通过绝对路径和计算模块获取的函数偏移得到md5值,并将md5值缓存并记录到注册表中,所述md5值以MD5作为键值;
操作模块,用于将hook模块注入到操作系统的资源管理器中,通过获取全文件函数得到hook模块的全路径,通过全路径计算出该文件的MD5值,再与缓存模块中的获取的MD5相匹配,匹配成功后获取到关键函数的函数地址和相关模块基址,通过计算模块得到关键函数的实际地址,然后在对实际地址进行hook操作,从而截获用户文件打开的路径。
优选的是,所述获取模块中,调用初始化地址中的符号函数时,通过在工作目录下创建symsrc.yes函数,以下载调试符号文件。
优选的是,所述获取模块中,获取符号文件共有两种方式:在本地路径拼成的符号缓存的目录中获取符号文件;通过微软官方符号的下载地址获取符号文件,所述符号初始化指定了微软官方符号的下载地址和本地路径拼成的符号缓存的目录。
优选的是,所述缓存模块中,当md5值发生变化时,hook模块会自动重新下载新模块的符号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东华软金盾软件股份有限公司,未经山东华软金盾软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811037130.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:批次号生成方法和装置
- 下一篇:一种人工智能助老助残多功能伺服车