#1 楼
Immunity Debugger 1.60及更高版本支持本地或从符号服务器加载PDB符号文件。为了启用它。转到“调试”菜单->“调试符号选项”。
提供符号文件或符号服务器的本地路径。
UPDATE
如果ImmDbg成功加载了pdb符号对于指定的文件,您将在dll加载事件下方以
Debugging Information (DIA Format) available
的形式在日志中收到一条消息。请参阅下面的图像,以供参考。 br />您可能未正确配置符号路径。 如果使用本地符号,则系统上存在的PDB文件与PE不匹配。
如果使用符号服务器,则找不到合适的PDB文件。
在这种情况下,您可以运行windbg随附的symcheck工具。示例用法
C:\Program Files\Debugging Tools for Windows (x86)>symchk C:\WINDOWS\system32\kernel32.dll /s C:\WINDOWS\Symbols
SYMCHK: FAILED files = 0
SYMCHK: PASSED + IGNORED files = 1
C:\Program Files\Debugging Tools for Windows (x86)>symchk C:\WINDOWS\system32\mshtml.dll /s C:\WINDOWS\Symbols
SYMCHK: mshtml.dll FAILED - mshtml.pdb mismatched or not found
SYMCHK: FAILED files = 1
SYMCHK: PASSED + IGNORED files = 0
UPDATE 2
Immunity Debugger的屏幕截图,其中已加载mshtml.dll的符号。这是从Windows XP SP3上获取的。 mshtml.dll。
symchk /r c:\windows\system32\mshtml.dll /s SRV*c:\symbols\*http://msdl.microsoft.com/download/symbols
符号目录应如下所示。
C:\symbols>dir
Volume in drive C has no label.
Volume Serial Number is 042A-A7E6
Directory of C:\symbols
06/05/2015 12:39 PM <DIR> .
06/05/2015 12:39 PM <DIR> ..
04/15/2008 09:21 AM 7,965,696 mshtml.pdb
06/05/2015 11:17 AM 0 pingme.txt
接下来,指向ImmDbg至
C:\symbols\
。使用loaddll加载mshtml.dll,它在加载时自动拾取符号。也可以在日志中看到。
评论
仅需注意,您还可以从此处下载符号文件。
–多米尼克·安塔尔(Dominik Antal)
15年5月28日在9:42
我已经做到了,但是请看我在问题中更新的图像...函数名称未显示
– jyz
15年5月28日在14:48
@jyz ImmDbg日志说什么?如果确实加载了pdb文件,它将作为dll加载事件下方的调试信息(DIA格式)写入日志中。
– 0xec
15年5月28日在15:15
@ExtremeCoders我再次尝试,但未显示此消息。另外,当我启动\ Program Files(x86)\ Microsoft Internet Explorer \ iexplorer.exe并导航时,永远不会加载mshtml.dll!我正在检查ALT + E和ALT + L模块...知道吗?
– jyz
15年5月28日在15:34
@jyz您可以使用symcheck工具手动下载符号,将其放在本地符号文件夹中,将ImmDbg指向它,它应该自动加载。另外,ImmDbg中的符号支持似乎还不成熟,因此您可能会遇到问题。
– 0xec
2015年6月5日在6:18