摘要 | 第5-6页 |
abstract | 第6-7页 |
第一章 绪论 | 第10-15页 |
1.1 研究背景 | 第10-11页 |
1.2 研究现状 | 第11-13页 |
1.3 本文研究内容 | 第13-14页 |
1.4 论文章节结构安排 | 第14-15页 |
第二章 代码混淆技术 | 第15-29页 |
2.1 代码混淆定义 | 第15-16页 |
2.1.1 混淆转换 | 第15页 |
2.1.2 有效的混淆转换 | 第15-16页 |
2.1.3 实用的混淆算法 | 第16页 |
2.2 代码混淆的分类 | 第16-25页 |
2.2.1 Collberg的分类 | 第16-25页 |
2.2.2 静态与动态的划分 | 第25页 |
2.2.3 语言级别的划分 | 第25页 |
2.3 混淆的有效性及评估 | 第25-28页 |
2.3.1 强度 | 第25-26页 |
2.3.2 适应性 | 第26-27页 |
2.3.3 开销 | 第27页 |
2.3.4 隐蔽性 | 第27-28页 |
2.4 本章小结 | 第28-29页 |
第三章 基于白盒密码的二进制代码混淆技术研究 | 第29-44页 |
3.1 逆向二进制程序 | 第29-30页 |
3.1.1 二进制程序分析 | 第29页 |
3.1.2 反汇编二进制程序 | 第29-30页 |
3.2 白盒密码算法 | 第30-34页 |
3.2.1 白盒密码技术 | 第30页 |
3.2.2 传统DES加密算法 | 第30-32页 |
3.2.3 白盒DES算法 | 第32-34页 |
3.3 动态混淆 | 第34-41页 |
3.3.1 自修改代码 | 第34-36页 |
3.3.2 自修改状态机算法 | 第36-41页 |
3.4 ELF文件格式 | 第41-43页 |
3.5 本章小结 | 第43-44页 |
第四章 基于白盒密码的动态自修改代码混淆技术的实现 | 第44-60页 |
4.1 算法概述 | 第44-45页 |
4.2 混淆器的实现 | 第45-54页 |
4.2.1 定位目标对象 | 第45-49页 |
4.2.2 白盒DES加密 | 第49-54页 |
4.3 运行时解混淆 | 第54-56页 |
4.3.1 开辟内存空间 | 第55页 |
4.3.2 动态自解密 | 第55-56页 |
4.4 动态自修改状态机算法的实现 | 第56-58页 |
4.5 本章小结 | 第58-60页 |
第五章 测评实验与分析 | 第60-72页 |
5.1 威胁模型 | 第60页 |
5.2 实验环境及实验对象 | 第60-61页 |
5.3 指标测量实验 | 第61-67页 |
5.3.1 有效性测试 | 第61-65页 |
5.3.2 性能测试 | 第65-67页 |
5.4 混淆性能分析 | 第67-71页 |
5.4.1 强度评估 | 第67-68页 |
5.4.2 适应性评估 | 第68-69页 |
5.4.3 开销评估 | 第69-70页 |
5.4.4 隐蔽性评估 | 第70-71页 |
5.5 本章小结 | 第71-72页 |
第六章 结束语 | 第72-74页 |
6.1 总结 | 第72页 |
6.2 展望 | 第72-74页 |
致谢 | 第74-75页 |
参考文献 | 第75-78页 |