Android恶意代码分析与渗透测试
1. Android的基本概念
1.1 Android的架构
- Linux内核
- 库
- Android运行时
- 应用程序与框架
- 设备文件目录结构
1.2 Android重要组件
- Activity
- Service
- Content Provider
1.3 Android应用程序的基本结构
- Androidmanifest.xml
- classes.dex
2.Android应用程序诊断环境
2.1 构建Android环境
- Android SDK
- ADK
- Android Studio
- 测试机或虚拟机
2.2 构建数据包分析及检测环境
- 路由器 Cain&Able
- Wireshark / Tshark
- tcpdump
2.3 切换设备平台
- Rooting
- Tegrak内核
- CF-Auto-Root
2.4 Android诊断工具介绍
- ADB
- adb pull / push
- logcat
- pm(package manager)
- Busybox
2.5 使用编辑器分析文件格式
010Editor dex模板
3. Android APP分析方法
3.1 通过反编译进行静态分析
dex2jar
jd-gui
AstroGrep
jad
3.2 通过动态调试进行分析
3.3 通过代码修补绕过apk文件
3.4 使用AndroGuard进行分析
- Androapkinfo
- Androxml
- Androluze
- Androdd
- Androdiff / Androsim
3.5 使用DroidBox进行自动分析
3.6 使用Sublim插件进行分析
3.7 使用APKInspector进行分析
3.8 使用dexplorer和dexdump进行分析
3.9 使用Santoku分析移动APP
4.恶意代码分析
4.1 使用在线分析服务
- Anubis
- VirusTotal
- VirusTotal APP
- andrototal
- apkscan app
- Dexter
- APK Analyzer
4.2 手动分析恶意代码APP
4.3 用户应对恶意代码威胁的方法
5.Android移动服务诊断
5.1 构建虚拟漏洞诊断测试环境
5.2 OWASP TOP 10 移动安全威胁
5.3 保存不安全的数据
- /mnt/sdcard
- /data/data/package_name
- 应对方案: Private
5.4 易受攻击的服务器端控制
5.5 使用易受攻击的密码
5.6 传输层保护不足(非加密通信)
5.7 源代码信息泄露
- Proguard
- Dexguard
- AndroidEnv
5.8 泄露重要信息
5.9 泄露日志信息
5.10 Web服务漏洞项目诊断
5.11 App应对方案: 加密源代码
- Proguard
6. 使用Android诊断工具
6.1 PacketShark: 网络数据包截获工具
6.2 Drozer: 移动诊断框架
6.3 ASEF: 移动设备漏洞工具
6.4 DroidSheep: Web会话截取工具
6.5 dSploit: 网络诊断工具
Last updated:
水平不济整日被虐这也不会那也得学,脑子太蠢天天垫底这看不懂那学不会