6

我正在考虑一种在运行时检查对象的工具,主要用于逆向工程,我想知道这样的事情是否存在。

我的想法是你有两个视图,一个对象图和一个类列表。从类列表中,您可以选择一个类并在列表或图表中查看它的实例。在图中,您可以看到对象之间的连接,并进行了适当的注释,例如哈希表中的键可以是哈希表对象和值之间的边上的标签。

您还可以拉出对象属性列表并查看/操作其中的值。.NET 中提供的元数据将使这变得相当简单。

有谁知道可以做到这一点的工具?它似乎是一个非常有用的调试和逆向工程工具。

编辑:另外,另一个有用的功能是在查看二进制文件时设置名称映射的能力。也就是说,如果您有一个混淆的二进制文件,您可以将混淆的名称交换为占位符或真实姓名。这不会影响实际的二进制文件,只会影响检查器中的视图。

编辑第 2 部分:该工具应该能够在 Vista 和 XP 上运行并支持 x64。

4

4 回答 4

9

有一个名为 Crack.NET 的工具,专门用于分析托管堆。

http://joshsmithonwpf.wordpress.com/cracknet/

http://www.codeplex.com/cracknetproject

于 2009-01-28T01:01:01.400 回答
1

如果你有一个正在运行的进程,那么你的机器上的某个地方就有二进制文件。

您可以在 Reflector 中加载此二进制文件。

或者,如果您安装了 Visual Studio,则可以将 Visual Studio 调试器附加到正在运行的进程。

于 2009-01-28T00:36:51.060 回答
1

有一个名为Hawkeye的程序可以让您查看 .NET 应用程序中的 UI 元素。

我还找到了一个名为.NET Component Inspector的程序,我不确定它有多好(现在尝试一下)。

于 2009-01-28T00:37:36.627 回答
1

您总是可以从有问题的应用程序中获得一个小型转储,并使用 WinDBG 和 SOS 对其进行检查。

于 2009-01-28T00:59:26.707 回答