一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种动态链接库注入方法、装置、设备及存储介质与流程

2021-11-26 20:45:00 来源:中国专利 TAG:

技术特征:
1.一种动态链接库注入方法,其特征在于,所述方法包括:打开目标进程以获取目标进程句柄,请求所述目标进程的目标操作权限集合,所述目标操作权限集合中的操作权限为进行动态链接库注入所需的操作权限;获取内存空间;封装用于基于操作系统回调机制进行动态链接库的注入的相关逻辑,得到加载函数,将所述动态链接库的路径和所述加载函数存储在所述内存空间之中;基于所述加载函数设置回调函数,所述回调函数用于在操作系统达到预设状态时,被所述操作系统自行调用以便于在目标进程中运行所述加载函数。2.根据权利要求1所述的方法,其特征在于,所述获取内存空间包括获取第一内存空间和第二内存空间,所述第一内存空间用于存储动态链接库路径信息,所述第二内存空间用于存储动态链接库注入逻辑。3.根据权利要求1或2所述的方法,其特征在于:所述获取内存空间包括在目标进程内分配内存空间;相应的,所述目标操作权限集合由三个元素构成,分别为设置进程信息权限,内存写入权限和内存操作权限;或,所述获取内存空间包括在现有内存中获取内存空间;相应的,所述目标操作权限集合由两个元素构成,分别为设置进程信息权限和内存写入权限。4.根据权利要求1所述的方法,其特征在于,所述封装用于基于操作系统回调机制进行动态链接库的注入的相关逻辑,得到加载函数,包括:构建用于保存当前操作系统状态的第一函数段;构建用于分配栈空间的第二函数段;构建用于基于操作系统回调机制加载动态链接库的第三函数段,所述第三函数段基于所述栈空间运行;构建用于回收所述栈空间的第四函数段;构建用于根据保存的当前操作系统状态恢复操作系统状态的第五函数段;封装所述第一函数段、第二函数段、第三函数段、第四函数段、第五函数段得到加载函数。5.根据权利要求4所述的方法,其特征在于,所述构建用于基于操作系统回调机制加载动态链接库的第三函数段,所述第三函数段基于所述栈空间运行,包括:创建原子锁,所述原子锁用于确保所述动态链接库仅被加载一次;插入用于加载动态链接库的执行函数。6.根据权利要求1所述的方法,其特征在于,在windows操作系统中,将其系统函数ntsetinformationprocess函数作为回调函数,所述ntsetinformationprocess函数的四个参数分别为进程句柄、信息类别、信息内容和信息长度;所述基于所述加载函数设置回调函数,包括:设置进程句柄为所述目标进程句柄;设置信息类别,以使得当操作系统特权指令级别被切换时所述回调函数被执行;设置信息内容为所述加载函数的存储地址的指针;根据操作系统设置信息长度。
7.一种动态链接库注入装置,其特征在于,所述装置包括:目标进程句柄获取模块,用于打开目标进程以获取目标进程句柄,请求所述目标进程的目标操作权限集合,所述目标操作权限集合中的操作权限为进行动态链接库注入所需的操作权限;内存空间获取模块,用于获取内存空间;加载函数封装模块,用于封装用于基于操作系统回调机制进行动态链接库的注入的相关逻辑,得到加载函数,将所述动态链接库的路径和所述加载函数存储在所述内存空间之中;回调函数设置模块,用于基于所述加载函数设置回调函数,所述回调函数用于在操作系统达到预设状态时,被所述操作系统自行调用以便于在目标进程中运行所述加载函数。8.根据权利要求7所述的装置,其特征在于,所述加载函数封装模块,包括:第一函数段构建单元,用于构建用于保存当前操作系统状态的第一函数段;第二函数段构建单元,用于构建用于分配栈空间的第二函数段;第三函数段构建单元,用于构建用于基于操作系统回调机制加载动态链接库的第三函数段,所述第三函数段基于所述栈空间运行;第四函数段构建单元,用于构建用于回收所述栈空间的第四函数段;第五函数段构建单元,用于构建用于根据保存的当前操作系统状态恢复操作系统状态的第五函数段;封装单元,用于封装所述第一函数段、第二函数段、第三函数段、第四函数段、第五函数段得到加载函数。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1所述的一种动态链接库注入方法。10.一种动态链接库注入设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由所述处理器加载并执行如权利要求1所述的一种动态链接库注入方法。

技术总结
本发明公开了一种动态链接库注入方法、装置、设备及存储介质,所述方法包括打开目标进程以获取目标进程句柄,请求目标进程的目标操作权限集合,所述目标操作权限集合中的操作权限为进行动态链接库注入所需的操作权限;获取内存空间;封装用于基于操作系统回调机制进行动态链接库的注入的相关逻辑,得到加载函数,将所述动态链接库的路径和所述加载函数存储在所述内存空间之中;基于所述加载函数设置回调函数,所述回调函数用于在操作系统达到预设状态时,被所述操作系统自行调用以便于在目标进程中运行所述加载函数。本发明所需目标操作权限少,可以绕过目标进程内的线程管理与监控,回调函数信息披露较少,进而使得动态链接库注入成功率更高。库注入成功率更高。库注入成功率更高。


技术研发人员:李文豪 殷赵辉 曹飞 盛子骁 宋青原 卢正军 朱泽瑾
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.05.08
技术公布日:2021/11/25
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献