- 献词
- 致谢
- 前言
- 第一部分 IDA 简介
- 第 1 章 反汇编简介
- 第 2 章 逆向与反汇编工具
- 第 3 章 IDA Pro 背景知识
- 第二部分 IDA 基本用法
- 第 4 章 IDA 入门
- 第 5 章 IDA 数据显示窗口
- 第 6 章 反汇编导航
- 第 7 章 反汇编操作
- 第 8 章 数据类型与数据结构
- 第 9 章 交叉引用与绘图功能
- 第 10 章 IDA 的多种面孔
- 第三部分 IDA 高级应用
- 第 11 章 定制 IDA
- 第 12 章 使用 FLIRT 签名来识别库
- 第 13 章 扩展 IDA 的知识
- 第 14 章 修补二进制文件及其他 IDA 限制
- 第四部分 扩展 IDA 的功能
- 第 15 章 编写 IDA 脚本
- 第 16 章 IDA 软件开发工具包
- 第 17 章 IDA 插件体系结构
- 第 18 章 二进制文件与 IDA 加载器模块
- 第 19 章 IDA 处理器模块
- 第五部分 实际应用
- 第 20 章 编译器变体
- 第 21 章 模糊代码分析
- 第 22 章 漏洞分析
- 第 23 章 实用 IDA 插件
- 第六部分 IDA 调试器
- 第 24 章 IDA 调试器
- 第 25 章 反汇编器/ 调试器集成
- 第 26 章 其他调试功能
- 附录 A 使用 IDA 免费版本 5.0
- 附录 B IDC/SDK 交叉引用
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
第 21 章 模糊代码分析
即使在理想情况下,理解一个反汇编代码清单也相当困难。对于任何计划深入挖掘二进制文件内部机制的人来说,高质量的反汇编工作都非常重要,这也正是我们用前面整整 20 章内容讨论 IDA Pro 及其功能的原因。你可能会说,IDA 如此高效,它降低了人们进入二进制分析领域的门槛。虽然这并不完全归功于 IDA ,但近些年来,二进制逆向工程领域已经取得了长足的进步,而希望保护软件不被分析的程序员也同样不甘示弱。于是,过去几年中,逆向工程人员与希望保护他们代码的程序员之间展开了某种“军备竞赛”。在这一章中,我们将分析 IDA 在其中扮演的角色,并讨论人们为保护代码而采取的措施,以及 IDA 如何战胜这些措施。
各种字典定义指出,模糊是一种使某物变得模糊、混乱,令人困惑、迷惑,以防止他人理解被模糊的项目的行为。另一方面,反逆向工程包括一系列旨在阻止他人分析某个项目的技巧(模糊为其中之一)。在本书中及使用 IDA 的情形下,我们认为这些反逆向工程技巧所适用的项目为二进制可执行文件(例如,相对于源文件或硅芯片)。
为了研究模糊以及反逆向工程对于 IDA 应用的总体影响,我们首先将这些技巧分类,以了解每一种技巧的作用。需要注意的是,对每一种技巧进行分类,并没有唯一正确的方法,因为这些分类往往会相互重叠。此外,新的反逆向工程技巧不断涌现,我们在这里不可能讨论所有这些技术。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论