Debugging 开始对可执行文件进行黑客攻击/反编译/调试 我很喜欢C/java语言,我对C和C++比较了解。然而,我想深入挖掘,学习更多的裸机材料。例如,C++中的一个简单控制台程序: int main() { char *ptr = "helloworld"; return 1; }
我在VisualStudio中使用调试器(删除pdb文件后)打开了它,以逐步完成汇编中的代码。我还使用HxD十六进制编辑器查看二进制文件 显然,我还远远不了解发生了什么。我想学习如何跟踪代码,因为它是针对一个我没有源代码的二进制文件执行的(如果可能的话),或者只是尽可能多地了解这个主题。当我每天在工作中使用源代码时,我理解通过源代码进行逐步调试,但如果没有它,我将无能为力 对于这种类型的东西有“基础”教程吗? 您可以推荐哪些工具/演练Debugging 开始对可执行文件进行黑客攻击/反编译/调试 我很喜欢C/java语言,我对C和C++比较了解。然而,我想深入挖掘,学习更多的裸机材料。例如,C++中的一个简单控制台程序: int main() { char *ptr = "helloworld"; return 1; },debugging,executable,reverse-engineering,decompiling,Debugging,Executable,Reverse Engineering,Decompiling,我在VisualStudio中使用调试器(删除pdb文件后)打开了它,以逐步完成汇编中的代码。我还使用HxD十六进制编辑器查看二进制文件 显然,我还远远不了解发生了什么。我想学习如何跟踪代码,因为它是针对一个我没有源代码的二进制文件执行的(如果可能的话),或者只是尽可能多地了解这个主题。当我每天在工作中使用源代码时,我理解通过源代码进行逐步调试,但如果没有它,我将无能为力 对于这种类型的东西有“基础”教程吗? 您可以推荐哪些工具/演练 谢谢。如果您想更深入地了解Ollydbg和一些反转/破解教程
谢谢。如果您想更深入地了解Ollydbg和一些反转/破解教程。。这肯定需要很深的时间:)你会学到东西是如何工作的:)
这是一个很好的起点。。任何搜索引擎都会为您提供大量具有正确关键字的内容:) 您至少需要了解汇编。为了掌握操作码、寄存器、堆栈使用等,我会练习编写一些(有些琐碎的)程序 书籍:
我希望没有人会认真对待这个问题和答案:)我不知道为什么没有人提到莉娜的逆向工程教程
我个人觉得他们很有帮助。您可以在这里找到它们
但是您需要了解一些基本的汇编,如(jmp等,寄存器),我不需要提及对编程的公平理解(我相信您已经了解了)
此外,还有大量crackme,您可以通过这些来改进自己。英特尔参考手册也非常有用。OllyDbg 2有一个集成的小型汇编程序docu,您可以使用它快速获取有关所选命令的信息。谢谢。。。虽然我不知道你最后的那句话是什么意思。@相信我6年前来到RE,对它非常热情。。。我列出了我使用的工具。我更新了我的上一个声明,只提到我的答案,对不起:)关键是这是一个很长的路要走。“黑客”有其令人惊叹的效果,但这是一项非常艰巨的工作……我不应该使用“黑客”这个词,因为它很容易被误解为“破解”的意思——这不是我想要做的。不过,你的回答很有帮助。