我的一个朋友从 Facebook 下载了一些恶意软件,我很想看看它在不感染自己的情况下做了什么。我知道您不能真正反编译 .exe,但我至少可以在 Assembly 中查看它或附加调试器吗?
编辑说它不是 .NET 可执行文件,没有 CLI 标头。
使用 调试器 ,您可以交互式地逐步执行程序集。 使用 反汇编 程序,您可以更详细地查看程序汇编。 使用 反编译器 ,您可以将程序转回部分源代码,假设您知道它是用什么编写的(您可以使用PEiD等免费工具找到它- 如果程序被打包,您必须先解压缩它或Detect-it-Easy如果你在任何地方都找不到 PEiD。DIE 目前在github上有一个强大的开发者社区)。
无论您在做什么,都可能派上用场的一些相关工具是资源编辑器,例如ResourceHacker(免费)和一个好的十六进制编辑器,例如Hex Workshop(商业)。
此外,如果您正在进行恶意软件分析(或使用 SICE) ,我衷心建议您在虚拟机(即VMware Workstation )中运行所有内容。对于 SICE,它将保护您的实际系统免受 BSOD 的影响,对于恶意软件,它将保护您的实际系统免受目标程序的侵害。您可以在此处阅读有关使用 VMware 进行恶意软件分析的信息。
就个人而言,我使用 Olly、WinDbg 和 W32Dasm 以及一些较小的实用工具。
另外,请记住,反汇编甚至调试 其他人的 软件通常至少违反 EULA :)