致亲爱的中国读者:
大家好 !我是《逆向工程核心原理》 作者 李承远(ReverseCore)。
(韩文博客地址:www.reversecore.com)
首先,很高兴我的《逆向工程核心原理》-书在中国IT强国出版。我以前是C/C++开发工程师,后来有机会加入安全公司并从事恶意代码分析工作,从此开始对逆向技术进行深入研究。熟悉逆向技术就能轻松了解程序内部结构,这让我逐渐沉醉于逆向技术的魅力。所以想与大家分享我所知的逆向技术知识,这就是本书的缘起。
《逆向工程核心原理》这本书是针对初学者而写的,本书为各位提供了很多实际调试过程的截图、源代码、示例文件等,能够帮助理解。本书于2012年9月在韩国上市后很多学校、IT培训班以及安全公司的新职员恶意代码分析培训等都在使用此书。读完这本书后希望所有读者都能成为一名优秀的逆向分析专家。
书中所有示例文件均为正常代码,部分示例文件使用程序的壳、反调试等技术可能会被部分杀毒软件误报为病毒。各位不必对此感到担心,请放心使用。
注意事项:
1.示例文件使用的UPack壳可能会被杀毒软件诊断为病毒,Upack 壳对PE结构整体进行一定修改以达到最大压缩率,所以Upack壳也常用于很多病毒木马使用。因此,大部分杀毒软件也有可能把Upack壳本身诊断为病 毒。然而PE文件相关讲解中,UPack之类的优秀示例较少,所以为了详细介绍逆向技术,书中忽略杀毒软件诊断规范。
2.“高级逆向”、”反调试” 技术示例文件可能会被诊断为病毒。示例文件中使用的技术与部分病毒使用的技术类似,因此,反病毒产品启发式引擎(启发式技术=启发式扫描+启发式监控)会检测到特征码,从而把示例文件诊断为病毒。
3.部分示例文件使用反调试SHE,TLS 回调等技术,这些技术可能会被杀毒公司自动化系统诊断为病毒。但请大家放心,示例文件都是正常。
4.简单介绍一下恶意代码基本含义。恶意代码是指未经过用户许可的情况下,在用户计算机或其它终端安装运行收集用户信息、泄漏用户信息等有恶意行为的软件。示例文件中全部都是以学习研究反调为目的而使用到的一些特定技术并无恶意行为。
5.鉴于其他杀毒软件的诊断,各位调试示例样本时最好暂时关闭杀毒软件的"实时监控”功能,调试学习结束后,再开启。
6.Windows7环境下调试时,建议关闭UAC(User Access Control)功能以便调试。
源代码
* 所有示例文件源代码均使用 MS Visual C++ Express 2010工具开发而成。
* 编译后的文件根据用户环境而略有差异。
* 为便与调试,请使用以下源代码。
* 下载地址 : http://pan.baidu.com/s/1qWFI6xm
* 解压密码 :reversecore
实践示例代码
* example_ex.zip文件双重压缩是为了避免杀毒软件的实时扫描。
* 第五部分“64位&Windows Kernel 6”中的示例文件需要在Windows XP/Vista/7 64位系统中运行。
* 其余所有示例文件均可在MS Windows XP SP3 32位&Windows 7 32位系统中实现。
* 下载地址 :http://pan.baidu.com/s/1qWFI6xm 双重压缩(第一次解压会看到exsample.zip,再次解压exsample.zip文件即可)
* 解压密码 :reversecore
附加:恶意代码分析相关工具大全以及恶意代码检测网站:chichoo博客 -> http://blog.csdn.net/chichoo/article/details/23352431
*无法下载或者对杀毒软件诊断有疑问请留言。
《逆向工程核心原理》讨论QQ群: 338185175