[发明专利]一种隐蔽的Dll文件注入方法有效
申请号: | 201810269225.5 | 申请日: | 2018-03-29 |
公开(公告)号: | CN108491237B | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 王超 | 申请(专利权)人: | 山东华软金盾软件股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 济南泉城专利商标事务所 37218 | 代理人: | 支文彬 |
地址: | 250101 山东省济南市高新区舜华路1号齐鲁*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种隐蔽的Dll文件注入方法,包括如下步骤:a)设定回调函数;b)在exe文件被加载且执行入口函数前,系统调用OnLoadImage回调函数;c)读取lpImportTable地址里的原始导入表备份到缓冲区lpBackTable中;d)完成导入表的备份;e)读取lpImportTable中的导入表后依次将lpImportTable中的导入表拷贝至lpNewTable中;f)exe文件按照lpNewTable中的导入表加载Dll文件;g)替换DllMain函数中gdsection区段内的导入表,完成导入表还原。还原后的导入表与原始导入表无任何区别,因此无法通过PeTools类似软件查看到注入的Dll,理论上也无法通过对比内存导入表与PE文件导入表区分出注入的Dll,从而达到更好的Dll注入和隐藏效果。 | ||
搜索关键词: | 一种 隐蔽 dll 文件 注入 方法 | ||
【主权项】:
1.一种隐蔽的Dll文件注入方法,其特征在于,包括如下步骤:a)windows系统驱动调用PsSetLoadImageNotifyRoutine的API函数,并通过API设定回调函数,回调函数的名称为OnLoadImage;b)当用户双击exe文件时,在exe文件被加载且执行入口函数前,系统调用OnLoadImage回调函数,在OnLoadImage函数内部通过参数IMAGE_INFO类型的ImageBase成员变量获取到导入表地址lpImportTable中;c) windows系统遍历读取lpImportTable地址里的原始导入表备份到缓冲区lpBackTable中;d)在exe文件中建立新的区段为gdsection,将缓冲区lpBackTable中的内容拷贝到gdsection区段中,完成导入表的备份;e) windows系统建立新的导入表内存为lpNewTable,将需要注入的Dll文件加入到导入表内存中,windows系统读取lpImportTable中的导入表后依次将lpImportTable中的导入表拷贝至lpNewTable中;f)回调函数OnLoadImage执行返回,exe文件按照lpNewTable中的导入表加载Dll文件;g)加载Dll文件后进入Dll文件的DllMain函数,在DllMain函数内读取gdsection区段,将步骤d)中备份的lpBackTable的导入表取出,替换DllMain函数中gdsection区段内的导入表,完成导入表还原。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东华软金盾软件股份有限公司,未经山东华软金盾软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810269225.5/,转载请声明来源钻瓜专利网。