中文摘要 | 第8-10页 |
ABSTRACT | 第10-11页 |
1 绪论 | 第12-21页 |
1.1 课题研究背景及意义 | 第12-15页 |
1.2 国内外研究现状 | 第15-18页 |
1.2.1 Android应用程序的静态和动态分析 | 第15-16页 |
1.2.2 对SSL安全性的研究 | 第16-17页 |
1.2.3 混合应用中Web-to-Native安全性研究 | 第17-18页 |
1.3 本文主要工作 | 第18-19页 |
1.4 本文组织结构 | 第19-20页 |
1.5 本章小结 | 第20-21页 |
2 相关背景知识介绍 | 第21-26页 |
2.1 Activity | 第21页 |
2.2 Web View | 第21-22页 |
2.3 Intent | 第22-23页 |
2.4 Web-to-Native调用机制 | 第23-25页 |
2.4.1 addJavascriptInterface方法 | 第23-24页 |
2.4.2 URL拦截方式 | 第24页 |
2.4.3 JavaScript的alert、confirm、prompt、console.log等函数 | 第24-25页 |
2.5 本章小结 | 第25-26页 |
3 问题概要 | 第26-32页 |
3.1 研究问题 | 第26-27页 |
3.2 主要挑战 | 第27-31页 |
3.2.1 如何定位 WebView | 第27-28页 |
3.2.2 如何在Android原生UI和WebView UI中模拟人的操作 | 第28页 |
3.2.3 如何降低在动态分析中由于app崩溃引起的漏报和误报 | 第28-30页 |
3.2.4 如何确定JavaScript可以调用Java方法是否可以进行敏感操作 | 第30-31页 |
3.3 本章小结 | 第31-32页 |
4 Android混合应用Web-to-Native安全检测模型 | 第32-46页 |
4.1 模型整体检测流程 | 第32-33页 |
4.2 静态分析部分 | 第33-41页 |
4.2.1 预处理 | 第33-34页 |
4.2.2 High-Risk方法识别 | 第34-35页 |
4.2.3 JS的调用点定位 | 第35-36页 |
4.2.4 Activity调用图构建 | 第36-38页 |
4.2.5 Activity调用路径的选择和Intent的构造 | 第38-41页 |
4.3 动态分析过程 | 第41-45页 |
4.3.1 多模拟器环境 | 第41页 |
4.3.2 测试APK打包 | 第41-42页 |
4.3.3 UI驱动过程 | 第42-44页 |
4.3.4 链接分析过程 | 第44-45页 |
4.3.5 日志模块 | 第45页 |
4.4 本章小结 | 第45-46页 |
5 实验结果分析 | 第46-58页 |
5.1 实验环境 | 第46页 |
5.2 实验数据集 | 第46页 |
5.3 实验结果分析 | 第46-57页 |
5.3.1 SSL错误处理问题 | 第46-52页 |
5.3.2 High-Risk方法的不安全调用 | 第52-57页 |
5.4 本章小结 | 第57-58页 |
6 总结与展望 | 第58-59页 |
参考文献 | 第59-62页 |
致谢 | 第62-63页 |
攻读学位期间发表的学术论文和参加科研情况 | 第63-64页 |
学位论文评阅及答辩情况表 | 第64页 |