这是本书的第一个动手实验。实验和所有相关的指导都可以在链接https://github.com/DazzleCatDuo/X86-SOFTWARE-REVERSE-ENGINEERING-CRACKING-AND-COUNTER-MEASURES对应文件夹中找到。
对于这个实验,请找到“Lab-Decompiling”并按照提供的说明进行操作。
本书中的每一个实验都旨在教授某些技能并为读者提供相关实践经验。这个实验锻炼的技能包括:
●反编译。
●进行初级逆向工程。
为了学习这些技能,你将使用JetBrains dotPeek来对一个.NET应用程序进行逆向工程和修改。
反编译是理解和修改程序的强大而便捷的方式。然而,它并不适用于所有的程序。虽然用像C/C++这样的语言编写的程序可以使用像IDA的Hex-Rays反编译器或Ghidra这样的工具来反编译,但结果往往质量低下,难以使用。
当开发包含敏感信息或不希望被修改的应用程序时,最好使用一种不容易被反编译的语言。例如,对于敏感功能来说,C/C++是比.NET语言(如C#)更好的选择。