Windbg最新的预览版(DbgX)提供了新的两个数据模型:Code与FileSystem。顾名思义,分别用于反汇编以及文件系统。
用这些API我们可以做到更为方便的日志记录与(半)自动化,或是修改一个更为好用的mona。可惜的是Windbg Preview是个应用商店APP,只能在win10运行(而且虚拟机里面用并不流畅)。
移植到win7还是非常必要的,毕竟没有各种乱七八糟的防护打乱视线,结合ida对照要清晰很多(例如CFG这类)。
无论是windbg或是DbgX都只是个界面,实际的引擎为dbgcore、dbgeng、dbghelp、dbgmodel四个dll以及一系列拓展。
我们可以从应用商店下载最新的windbg预览版,安装后打开所在目录,在x86或amd64目录中即可找到引擎的核心部分。
直接用目录中文件替换windbg自带的引擎即可:
(如果需要在win7上运行的话,需要额外复制一个%systemroot%\System32\CompatTel\Api-ms-win-downlevel-kernel32-l1-1-0.dll文件)
DbgX是个WPF程序,微软不(屑)做混淆,基本和源码没有太大区别。逆一下大致的调用方式,之后可以据此写一些更好用的壳子或是(伪)自动化工具之类。
最后,当前时间的最新预览版(1.0.1902.7001)存在无法正常运行的Bug……解决方式是将本体全部从WindowsApps目录中复制出来,之后去x86或amd64目录中找到dbghelp.dll,并复制到DbgX.Shell.exe所在目录。
(好好的WPF非编译成UWP,巨硬你是要疯嘛……)