【原创】你以为你加载的Dll就是你以为你加载的Dll? [复制链接]
前言:[*]之前有人发过帖子:【原创】对应PEB、TEB、断链隐藏的一点小分析,这个是利用PEB断链进行的Dll伪装。[*]而本贴使用了另外的一个诡异的方案来实现这些东西,这个方案本质上是实现了Dll的替换加载。正文:[*]实现原理:加载Dll的时候系统会使用ZwOpenFile进行打开Dll文件,此时,我们只需要hook了ZwOpenFile函数,然后进行简单的替换就可以实现替换加载Dll了![*]实现图:https://att.125.la/data/attachment/album/202201/11/161016e53mu5xwff7xui2g.png
[*]Hook处理部分:
https://att.125.la/data/attachment/album/202201/11/161127kftw9e99iga92gae.jpg
[*]查看其Dll列表
https://att.125.la/data/attachment/album/202201/11/161324o3q55vz24wm1qmvq.jpg
,发现连列表中的路径也是错误的,这是因为我们只替换了Dll加载时被打开的句柄,R3下系统仍然以为我们加载的main.e,实际上main.e更不不可能用LoadLibrary加载起来,真正加载的是“测试Dll.dll”(在PCHunter中可以看到这个Dll被标红)PS:[*]我们不能只局限于伪装加载文件系统上的Dll,也可以尝试内存加载Dll用这个方法进行替换,不过处理文件句柄这个坑我实在没法处理,就摆烂了。
点我下载
(已有 44 次下载)
引用模块
无
页:
[1]