软件逆向工程主要是通过研究和分析现有的软件产品来发现其规律,从而改进并超越现有产品的过程。通过逆向工程技术,研究人员可以学习他人的编程技术和技巧,窥探商业��件的秘密,或开发与其兼容的软件。同时,利用逆向工程技术可以对现有软件进行改造,可以在没有源代码的情况下修改目标程序的二进制代码,扩展程序的功能。
掌握一定的逆向技术,对程序员和**工作者十分有好处。但由于技术比较复杂,初学者大都不知从何入手,既不知道学习的方向,又缺少经验和有效的分析工具,往往事倍功半。本书是学习逆向工程技术的一个很好的选择,它从软件逆向技术的基础开始讲解,逐步深入,在注重阐述逆向技术理论的同时,又结合生动的案例分析,深入浅出地向读者展示了软件逆向技术的精髓和实用技巧,能够帮助读者快速深入逆向工程技术的核心领域,获得宝贵的知识和经验。
诚然,要深入理解并熟练应用逆向工程技术,需要大家的勤奋与毅力,这个过程可能有时是枯燥的,但是当你的功力达到一定水平的时候,你会在软件分析的过程中产生一种直觉(Sense),看到目标的汇编代码,就能知道它们的作用和隐藏在其中的奥秘。这时,你会发现逆向工程是一门优雅的数码艺术展现形式,它的精神是“自由”。 ……