abdullah-5j/Android-RAT-Threat-Analysis
GitHub: abdullah-5j/Android-RAT-Threat-Analysis
该项目通过隔离实验室环境,系统剖析AhMyth RAT如何将合法Android APK木马化,并从攻击机制中提炼可操作的防御措施。
Stars: 1 | Forks: 0
# 📱 Android RAT 威胁分析
### AhMyth 如何将合法 APK 武器化以入侵 Android 设备
[]()
[]()
[]()
[]()
[](LICENSE)
*关于移动恶意软件投递、APK 木马化以及 Android 后渗透的实践研究——重点关注防御。*
## 🔎 核心问题
**一个看似无害的 Android 应用是如何变成一个全面的监控植入物的?**
本项目通过剖析一条具体、可复现的攻击链来回答这个问题:获取一个普通的开源相机应用,使用 **AhMyth** 将远程访问木马 payload 注入其 APK 中,并观察一旦受害者安装并授予木马化应用权限后,攻击者究竟能获得什么。
重点在于**机制和影响**——使 Android 成为吸引人目标的 *APK 即恶意软件 (APK-as-malware)* 投递模型——以及如何将这种理解转化为**可操作的防御措施**。
## 🧬 为什么这很重要
Android 的安全模型建立在**用户授予权限**的基础之上。当出现以下情况时,该模型就会失效:
1. 恶意 payload 被隐藏在一个应用中,而该应用声明的用途*看似合理地*解释了其所请求的权限(例如,一个相机应用请求相机和麦克风权限看起来很正常)。
2. 该应用作为原始的 `.apk` 在 **Play Store 之外**分发,绕过了商店端的安全扫描。
3. 用户出于对该应用外表的信任,在首次启动时授予了所有权限。
在那一刻,“权限滥用”就变成了对设备的全面控制。本仓库逐步展示了这种失败模式,以便对其进行识别和阻止。
## ⚔️ 攻击链一览
```
┌──────────────┐ ┌───────────────┐ ┌──────────────┐ ┌───────────────┐ ┌────────────────┐
│ 1. PICK A │──►│ 2. TROJANIZE │──►│ 3. DELIVER │──►│ 4. VICTIM │──►│ 5. FULL REMOTE │
│ CREDIBLE APK │ │ INJECT PAYLOAD│ │ THE .APK │ │ INSTALLS + │ │ CONTROL (C2) │
│ (Libre Cam) │ │ VIA AhMyth │ │ TO TARGET │ │ GRANTS PERMS │ │ camera/mic/... │
└──────────────┘ └───────────────┘ └──────────────┘ └───────────────┘ └────────────────┘
The "credible cover app" is what makes the malicious permissions look reasonable.
```
完整技术剖析:[`docs/ATTACK_CHAIN.md`](docs/ATTACK_CHAIN.md)
## 🧨 APK 恶意软件能做什么
一旦木马化 APK 在受害者设备上运行,AhMyth 的 C2 面板就会通过网络暴露以下内容:
| 功能 | 影响 |
|---|---|
| 📷 **相机拍摄** | 通过前置和后置摄像头静默拍摄照片 |
| 🎙️ **麦克风** | 录制周围环境声音 |
| 📍 **位置** | 实时 GPS 追踪 |
| 📁 **文件管理器** | 浏览并窃取存储的文件 |
| 💬 **短信访问** | 读取消息(包括潜在的 OTP) |
| 📞 **通话记录** | 完整的通话历史 |
| 👥 **联系人** | 窃取通讯录 |
| 🖥️ **远程命令** | 执行任意命令 |
| 🔁 **持久化** | 在重启后存活(Boot 方法) |
危险在于集中性:手机将对话、凭证、银行数据和实时位置全部集中在一个地方。
## 🔧 木马化实际是如何运作的
AhMyth 并不是从头开始编写一个新应用——它**劫持现有的应用**。当给定一个真实的 APK 时,它会:
1. **反编译**原始 APK。
2. 在应用代码中定位正确的注入点。
3. **将恶意 payload**(C2 客户端)插入该流程中。
4. **重新构建并重新签名** APK,生成一个可正常工作的、可安装的文件。
我们对比了两种触发策略:
| | **Boot 方法** | **Activity 方法** |
|---|---|---|
| 触发器 | 开机/重启时自动运行 | 仅在应用被打开时运行 |
| 需要用户操作 | 无 | 必须打开应用 |
| 可见性 | 静默,后台运行 | 更易被察觉 |
| 持久性 | 强,难以被发现 | 应用关闭时即停止 |
详细信息:[`docs/TROJANIZATION.md`](docs/TROJANIZATION.md)
## 🏗️ 实验环境
```
┌─────────────────────────────┐ ┌─────────────────────────────┐
│ ATTACKER │ C2 │ VICTIM │
│ Kali Linux (VMware) │◄────────►│ Android 9 (MEmu Play) │
│ AhMyth v1.0-beta.5a │ link │ Trojanized "Libre Camera" │
│ Java 11 │ │ │
└─────────────────────────────┘ └─────────────────────────────┘
Closed, offline lab — no external exposure at any point
```
构建说明:[`docs/LAB_SETUP.md`](docs/LAB_SETUP.md)
## 📂 仓库结构
```
Android-RAT-Threat-Analysis/
├── README.md ← Project overview
├── docs/
│ ├── LAB_SETUP.md ← Isolated environment build
│ ├── TROJANIZATION.md ← How a benign APK is weaponized
│ ├── ATTACK_CHAIN.md ← End-to-end controlled demo
│ └── AHMYTH_REFERENCE.md ← Tool capabilities & architecture
├── defense/
│ ├── DEFENSE_GUIDE.md ← Hardening & prevention
│ ├── DETECTION.md ← Indicators of compromise
│ └── INCIDENT_RESPONSE.md ← Response if a RAT is suspected
├── assets/screenshots/
├── DISCLAIMER.md ← Legal & ethical notice
├── CONTRIBUTING.md
└── LICENSE
```
## 🧭 从这里开始
| 我想… | 前往 |
|---|---|
| 搭建实验室 | [`docs/LAB_SETUP.md`](docs/LAB_SETUP.md) |
| 了解 APK 武器化 | [`docs/TROJANIZATION.md`](docs/TROJANIZATION.md) |
| 跟踪完整攻击过程 | [`docs/ATTACK_CHAIN.md`](docs/ATTACK_CHAIN.md) |
| **保护设备** | [`defense/DEFENSE_GUIDE.md`](defense/DEFENSE_GUIDE.md) |
| 检测感染 | [`defense/DETECTION.md`](defense/DETECTION.md) |
## 🎓 关键洞察
这种攻击的强大之处不在于复杂的代码——而在于**社会工程学上的合理性 + 侧载 APK + 权限信任**。打破其中任何一个环节(验证来源、避免侧载未知应用、仔细审查权限请求),整个攻击链就会崩溃。这就是本项目的防御核心论点。
## 📄 许可证
MIT — 见 [`LICENSE`](LICENSE)。仅供文档和教育使用。请合法、负责任地使用。
⚠️ 仅供授权的安全研究使用。在继续之前,请阅读 免责声明。
标签:Android, DAST, DSL, JS文件枚举, 云资产清单, 恶意软件分析, 数据展示, 红队, 远程访问木马, 逆向工程