摘要 | 第4-6页 |
ABSTRACT | 第6-7页 |
第一章 引言 | 第11-16页 |
1.1 课题背景 | 第11-12页 |
1.2 国内外研究现状 | 第12-14页 |
1.3 论文主要工作 | 第14-15页 |
1.4 论文结构 | 第15-16页 |
第二章 ANDROID平台加固相关理论与技术 | 第16-27页 |
2.1 ANDROID系统概述 | 第16-18页 |
2.1.1 Application层 | 第16-17页 |
2.1.2 Application Framework层 | 第17页 |
2.1.3 Libraries层和Runtime层 | 第17页 |
2.1.4 Linux Kernel层 | 第17-18页 |
2.2 ANDROID应用逆向攻击 | 第18-24页 |
2.2.1 Android应用逆向分析 | 第18-19页 |
2.2.2 静态分析 | 第19-20页 |
2.2.3 动态分析 | 第20-21页 |
2.2.4 Apk逆向攻击实例 | 第21-24页 |
2.3 ANDROID应用相关加固技术 | 第24-26页 |
2.3.1 防逆向分析 | 第24-25页 |
2.3.2 防篡改 | 第25-26页 |
2.4 本章小结 | 第26-27页 |
第三章 ANDROID应用加固技术方案设计 | 第27-40页 |
3.1 基于动态加载的DEx加固技术 | 第27-31页 |
3.1.1 Dex动态加载技术原理 | 第27-28页 |
3.1.2 AES加密算法原理及加密方案设计 | 第28-29页 |
3.1.3 基于AES加密的Dex动态保护机制 | 第29-31页 |
3.2 基于信号机制的PTRACE反调试技术 | 第31-33页 |
3.2.1 Linux信号机制与Ptrace技术原理 | 第31页 |
3.2.2 现有的Ptrace反动态调试技术 | 第31-32页 |
3.2.3 基于信号机制的Ptrace反调试技术 | 第32页 |
3.2.4 其他反调试机制 | 第32-33页 |
3.3 So文件静态防御方案 | 第33-36页 |
3.3.1 So文件及NDK保护技术 | 第33页 |
3.3.2 So花指令及混淆保护原理 | 第33-35页 |
3.3.3 基于Upx变种的So文件加壳技术 | 第35页 |
3.3.4 So文件保护方案设计 | 第35-36页 |
3.4 基于NDK的ANDROID应用完整性保护 | 第36-37页 |
3.4.1 Hash算法原理 | 第36页 |
3.4.2 基于NDK的完整性保护方案 | 第36-37页 |
3.5 ANDROID应用加固技术整体方案设计 | 第37-39页 |
3.6 本章小结 | 第39-40页 |
第四章 ANDROID应用加固系统设计与实现 | 第40-54页 |
4.0 ANDROID应用加固系统整体框架设计 | 第40-41页 |
4.1 DEX安全保护模块设计与实现 | 第41-45页 |
4.1.1 动态加载模块设计与实现 | 第41-44页 |
4.1.2 Dex加密保护模块设计与实现 | 第44-45页 |
4.1.3 Dex安全保护模块小结 | 第45页 |
4.2 So安全保护模块设计与实现 | 第45-49页 |
4.2.1 So混淆保护子模块 | 第46-47页 |
4.2.2 So加密保护子模块 | 第47-48页 |
4.2.3 压缩壳保护子模块 | 第48-49页 |
4.2.4 So安全保护模块小结 | 第49页 |
4.3 PTRACE反调试模块设计与实现 | 第49-51页 |
4.3.1 反调试子模块设计 | 第49-50页 |
4.3.2 反调试子模块实现 | 第50-51页 |
4.4 完整性校验模块设计与实现 | 第51-53页 |
4.4.1 完整性校验模块设计 | 第51-52页 |
4.4.2 完整性校验模块实现 | 第52-53页 |
4.5 本章小结 | 第53-54页 |
第五章 ANDROID应用加固系统测试与评价 | 第54-59页 |
5.1 DEX加固保护安全性测试 | 第54-55页 |
5.2 SO加固保护安全性测试 | 第55-56页 |
5.3 反调试保护测试 | 第56-58页 |
5.4 完整性校验有效性测试 | 第58页 |
5.5 本章小结 | 第58-59页 |
第六章 结束语 | 第59-60页 |
6.1 论文工作总结 | 第59页 |
6.2 问题和展望 | 第59-60页 |
参考文献 | 第60-63页 |
致谢 | 第63-64页 |
攻读期间发表的学术论文 | 第64页 |