x32 dbg 调试过程中如何提取内存?
原贴:https://www.52pojie.cn/thread-1928246-1-1.html各位大佬好,我根据原贴的推荐评论(爱飞的猫),已经找出来“LockResource”,后面需要将这块内存提取出来,请问如何提取内存?(写脚本也好,用 HxD 等工具也好)有什么教程?谢谢大家,一共找到了4个“LockResource”,就差提取内存,看看能不能看见源代码了,谢谢!
就4个,写什么脚本了,直接复制粘贴更快…… @wjbg2022
压根就不用这么操作
打开任务管理器
找到该AHK的进程名,创建转储
再用文本编辑器整理下源码
随便改吧。
除非代码混淆了。。。那需要再解码恢复源样。 冥界3大法王 发表于 2024-11-23 20:34
@wjbg2022
压根就不用这么操作
打开任务管理器
转储文件之后怎么操作? 各位大佬都好厉害啊 52new 发表于 2024-11-23 22:23
转储文件之后怎么操作?
转储了谁,就找谁。。
找个文本编辑器打开就是了。。。搜索AHK的关键字
把脑袋 和 屁股( 头尾 复制 出来就是完整的 ) save as.AHK
https://www.autohotkey.com/到这里再下载一个安装上
直接就能运行.ahk的脚本了。。。你连制作 脚本都会了。破解还难么? 本帖最后由 爱飞的猫 于 2024-11-23 23:37 编辑
冥界3大法王 发表于 2024-11-23 20:34
@wjbg2022
压根就不用这么操作
打开任务管理器
为了提取不到几百 K 的数据建立几百 M 的转储数据… 有点浪费哦。 本帖最后由 爱飞的猫 于 2024-11-23 23:47 编辑
操作步骤:
1. 打开 HxD
2. 菜单:工具 → 读取内存,选择目标进程
3. 菜单:编辑 → 选择范围,照着找到的地址和大小填写,自动选中区域。
4. 菜单:文件 → 选区另存为,输入文件名(如 `dump.ahk`)
---
x64dbg 也有第三方插件可以实现选中指定内存区域,然后就可以右键转储选区了。
https://github.com/morsisko/xSelectBlock
---
另外建议多执行几条指令,等到 `0041F6A8` 的时候再 dump,此时刚好数据地址和大小都在堆栈里挨着。
```asm
0041F68B | FF15 74E14A00 | call dword ptr ds:[<&LockResource>] |
0041F691 | 894424 10 | mov dword ptr ss:,eax |
0041F695 | 85C0 | test eax,eax |
0041F697 | 74 77 | je exe.41F710 |
0041F699 | 56 | push esi |
0041F69A | 6A 00 | push 0 |
0041F69C | FF15 78E14A00 | call dword ptr ds:[<&SizeofResource>] |
0041F6A2 | 6A 44 | push 44 |
0041F6A4 | 894424 18 | mov dword ptr ss:,eax |
0041F6A8 | 8D7C24 14 | lea edi,dword ptr ss: | <- 执行到这一行再 dump
0041F6AC | BD E9FD0000 | mov ebp,FDE9 |
0041F6B1 | E8 8CB10700 | call exe.49A842 |
```
页:
[1]