All about fanda
All about fanda
老生常谈的Windbg符号缺失问题

  早在一两星期前就打算用windbg分析一些Windows堆块的东西,但是却被符号的问题卡了一个多星期,就如封面一样,无论怎么搞总是返回invalid type information,导致我现在看到这句话就暴躁。

  其实到现在我还是不知道我这台surface到底为什么弄不好这个问题,能用的办法都用过了,但返回的总是那一句话,然后气的我做了一个表情包:

一个自制表情包

最后我是怎么处理的?

  对于99%的情况来说,windbg第一次attach到进程上的时候用!heap命令找不到符号是正常的,因为我们还没有配置过符号路径,也就不会有符号供Windbg来解析了,这个时候只要输入以下两个命令就可以成功获取到相应的symbol,也就可以用!heap等命令了:
s

.symfix
.reload

  但是很不巧,我刚好成为了那1%,表情包里的命令我都试过,我甚至还怀疑过是不是Windows和windbg的版本问题,虚拟机win7可以,公司的台式win10可以(Windows10都是1903),唯独那台surface就是不行,但是根据上面一系列猛如虎的操作最后发现不能使用!heap的关系跟ntdll.dllwntdll.pdb无关,windbg的安装包也没有问题,surface对比台式唯一不同的就是这个电脑本身的硬件了。然后用虚拟机安装了个套娃win10作为我最后的倔强,没想到这次竟然成功了。

结果

  真是把爷给气笑了,那行吧,以后就直接用win10调虚拟机win10来分析堆块吧,顺便也给遇到相似情况的人一个排除问题的思路。大家都是倒霉蛋!


更新

  我竟然找到了罪魁祸首。KB4514359这个针对CVE-2019-1142的补丁会导致windbg符号失效,所以大家要是遇到这个问题看着办吧!

发表评论

textsms
account_circle
email

All about fanda

老生常谈的Windbg符号缺失问题
  早在一两星期前就打算用windbg分析一些Windows堆块的东西,但是却被符号的问题卡了一个多星期,就如封面一样,无论怎么搞总是返回invalid type information,导致我现在看到…
扫描二维码继续阅读
2019-09-09