吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4809|回复: 9
收起左侧

[调试逆向] windows 64bit进程PEB找不到Xaml之类的dll

  [复制链接]
DQQQQQ 发表于 2022-4-13 11:18
本帖最后由 DQQQQQ 于 2022-4-16 15:52 编辑

最近写程序时候,要去找进程加载的dll 路径,基地址,以及大小。
但是遇到一个问题就是部分DLL居然从PEB上面找不到,难道微软自己也搞PEB断链???
我用Vmmap ProcessExp都可以看到这些dll.为啥这个就不行呢?

下面是分析过程

1.      win10的计算器截图
calc.png
2.用windbg查看PEB,可以看到这几个文件是找不到的。
calc.png

3. 那么这个dll。到底有什么特别之处呢?为啥会看不到呢,我们先去看看这几个dll有啥特别之处。先用depends看看这个dll的结构。从下面一眼就可以看出来这个是一个32bitCOMdll

calc.png

4.到这里,我们猜测他可能是PEB断链之类的DLL但是为啥vmmap就可以看到呢。用x64dbg附加调试vmmap. 注意这里有一个header,有理由根据这个headerx64dbg搜索(我自己常用vmmap因此知道,出现header其他地方应该没有,或者很少)
calc.png
5.X64dbg搜索结果
calc.png
6. 只有一个地方出现了header,下断点调试
calc.png
7.开始调试调试发现,获取到dll路径是下面的API GetMappedFileName
calc.png
8.更进一步查看这个API的实现
calc.png
可以看到其实核心的就在于ntdll.dll  ZwQueryVirtualMemory 。 继续调试发现ZwQueryVirtualMemory 和  NtQueryVirtualMemory 居然是位于同一个地址上面. 下面是NtQueryVirtualMemory函数的讲解https://blog.csdn.net/OtishionO/article/details/8521634 因此想要获取上面那几个dll的路径,基地址,模块大小,方法就来了。先用VirtualQueryEx函数去遍历内存,找到typeMEM_IMAGE的内存。然后使用NtQueryVirtualMemory,获取路径.

免费评分

参与人数 2吾爱币 +8 热心值 +2 收起 理由
junjia215 + 1 + 1 谢谢@Thanks!
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

happyBread 发表于 2022-4-14 23:53
牛逼,感谢分享遍历模块的思路
 楼主| DQQQQQ 发表于 2022-4-16 14:52
happyBread 发表于 2022-4-14 23:53
牛逼,感谢分享遍历模块的思路

谢谢支持,只是分享自己思路。还有遇到问题的解决方法
h81632468 发表于 2022-4-24 23:34
zsdsun 发表于 2022-4-28 22:59

膜拜小生
yangleiily 发表于 2023-12-2 23:27
主楼你太厉害了,学习中
Drow 发表于 2024-8-7 11:22
确实是个好工具,Mark一下,可以解决很多问题
mxn007 发表于 2024-9-6 06:48
确实是个好工具,Mark
光影由心 发表于 2024-9-7 08:55

好使,顶一个
rmb788520 发表于 2024-11-14 08:13
顶一下。支持楼主,谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-21 20:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表