5. 64bit的任务管理器抓了32bit的dump怎么分析

在 dump 分析中,如果你打开的 windbg 界面是这样的。


************* Path validation summary **************
Response                         Time (ms)     Location
Deferred                                       SRV*C:\mysymbols*http://msdl.microsoft.com/download/symbols
Symbol search path is: SRV*C:\mysymbols*http://msdl.microsoft.com/download/symbols
Executable search path is: 
Windows 10 Version 19045 MP (12 procs) Free x64
Product: WinNt, suite: SingleUserTS
Edition build lab: 19041.1.amd64fre.vb_release.191206-1406
Debug session time: Wed Dec  6 09:29:31.000 2023 (UTC + 8:00)
System Uptime: 0 days 12:41:19.143
Process Uptime: 0 days 0:00:11.000
....................................
For analysis of this file, run !analyze -v
wow64cpu!CpupSyscallStub+0xc:
00000000`77e01cfc c3              ret

那么恭喜你,你用 64bit 任务管理 采集的 32bit 程序,怎么看出来的呢?就是通过这里的 wow64cpu ,接下来告诉大家转。

  1. 选择 x86 架构

用 windbg 选择 Open Dump File, 将默认的 Autodetect 改成 x86,这个切记。

  1. 下载 soswow64.dll 强转

soswow64 这个东西可以让程序在 64 和 86 上自由切换,因为我们的程序本质上是 32bit ,因误入歧途进了 64bit,所以要给它打回原形。

下载地址:https://github.com/poizan42/soswow64/releases

  • 这是使用前的 windbg 界面:

  • 这是使用后的 windbg 界面

接下来把下面的命令丢到 Command 界面上去。


.load C:\soft\soswow64\soswow64.dll
!wow64exts.sw

posted @ 2023-12-06 09:42  一线码农  阅读(518)  评论(0编辑  收藏  举报