【问题标题】:debugging code run in a virtual machine using the host调试代码在使用主机的虚拟机中运行
【发布时间】:2010-11-10 19:37:05
【问题描述】:

是否有可以在虚拟机的主机上工作的调试器?

也就是说,我希望这个调试器能够识别虚拟机的操作系统例程、内存位置等,并识别操作系统何时启动特定的 EXE,而不是在机器内部使用中断。然后我希望能够通过主机为每个进程设置类似 hardware 的断点。我会澄清的。虚拟化计算机和操作系统永远不会知道断点已设置或发生。所有调试处理都将由模拟虚拟计算机的主机完成。

这将启用更强大的断点机制,例如“当从 CDROM 驱动器读取特定数据时中断”,或“当磁盘上的某个文件包含以下字节序列时中断”。

例如,这种方法还将消除anti-debugger 技术,这些技术假定在调试器下运行时会改变可执行文件的行为。 (OTOH 开辟了一个新的反虚拟化技术领域,该技术依赖于模拟计算机和真实硬件之间的细微差别)。

有这样的产品吗?这看起来是个好主意吗?

【问题讨论】:

    标签: debugging virtualization reverse-engineering virtual-machine


    【解决方案1】:

    VMware 为 Visual Studio 和 Eclipse 提供 VM 调试插件已有一段时间了。甚至可以记录 VM 运行(记录来自所有设备的输入,允许准确地回放 VM 的执行,就像记录时一样),然后 step through the recording with a debugger

    【讨论】:

      【解决方案2】:

      IDA Pro 的最新版本包括一个debugger interface,除其他设置外,它还可以检查 BOCHS 虚拟机。

      【讨论】:

        猜你喜欢
        • 2017-10-23
        • 2019-11-29
        • 1970-01-01
        • 2011-02-15
        • 2018-09-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多