移动应用注入攻击
理解Intent注入和WebView注入攻击,构建恶意攻击应用
实验目标
- 理解并掌握常见移动应用漏洞注入类型和攻击方式;
- 对提供的应用进行逆向分析,发现可注入漏洞点;
- 能够构建恶意攻击应用和网页代码,实现 Intent 注入和 WebView 注入攻击。
前置准备
1. 理论知识学习
进行本实验前请先完成教材第7章的学习,主要包括 7.2 节 WebView 注入攻击和 Intent 注入攻击。
2. 实验环境
- Android Studio 开发环境
- 安卓设备或安卓模拟器(本实验要求保持系统完整性,不得通过动态插桩方式篡改目标程序)
- Jadx 逆向工具
- Python 等可以简易部署网页服务器的环境
任务描述
任务1 注入点发现
通过逆向分析,分析其中 Intent 调用过程。同时分析 WebView 的相关代码,找到限制条件和注入点。
任务2 Intent 注入攻击
根据 Intent 的调用过程,编写一个恶意应用,使被攻击应用可以自动跳转至其他网页。
任务3 WebView 注入攻击
编写网页,并设计 JavaScript 代码,使其跳转至指定网页后,自动执行相关 JavaScript 代码,并弹出指定内容的 Toast,实现攻击。注,本实验要求保持系统完整性,不得通过动态插桩方式篡改目标程序。
结果提交形式
-
lab5_code.zip:本次实验中的实验代码,包括:
- Intent 注入攻击的 Activity 代码
- WebView 注入攻击的网页代码
- lab5.docx:本次实验的实验报告,包括实验环境配置、实验步骤、实验结果和实验心得等内容
评分标准
1. 完成任务1(10%)
可以分析出 Intent 调用和 WebView 的具体过程,可以找到注入点
2. 完成任务2(20%)
编写一个恶意应用,实现 Intent 注入,使被攻击应用跳转至指定网页
3. 完成任务3(40%)
完成恶意网页的设计,在任务2的基础上,使其跳转之后可以输出指定的 Toast 信息
4. 实验报告(30%)
内容完整性和原创性(20%)
- 报告包含实验目的、详细步骤、结果、总结思考等关键部分
- 代码设计遵循代码规范,有必要的解释说明
报告撰写和表达(10%)
- 报告格式规范,语言表达清晰
- 能够适当使用图表等辅助说明报告内容
实验资源
Lab5 实验资源包
包含本次实验所需的全部资源文件
资源包内容
InjectionLab.apk
包含任务1所需的安卓 APK 文件