Heretek-RE/re-apktool

GitHub: Heretek-RE/re-apktool

封装 apktool 与 androguard 的 MCP 服务器,为 Android APK 逆向分析提供统一的程序化接口。

Stars: 0 | Forks: 0

# re-apktool 用于 **Android APK** 初步分析的 MCP server。在同一个 MCP 接口上支持两种后端: - **apktool** (Java) — 权威的 APK 反汇编工具。它能为每个 DEX 类生成 Smali 表示,以及解码后的 `AndroidManifest.xml`。安装方式:`apt-get install apktool` 或从 下载 jar 包。 - **androguard** (Python) — 纯 Python 编写的 APK / DEX / manifest 解析器。始终安装(服务器的硬依赖项)。导入速度更快,更易于编写脚本;但在 Smali 支持方面不如 apktool。 MCP 包装器会调用任何可用的后端;`check_apktool` 工具会报告当前正在使用的后端,以便分析人员了解实际触发的是哪一个。 ## 工具 | 工具 | 功能 | |---|---| | `check_apktool` | 健康检查 — 返回 apktool / androguard / java 的可用性 | | `parse_apk` | 打开 APK,返回 header 信息(包名、版本、最低/目标 SDK、单文件条目列表、签名块状态) | | `list_dex_classes` | 枚举 APK 中所有 `classes*.dex` 包含的类 | | `decode_manifest` | 返回解码后的 `AndroidManifest.xml`(文本),以及解析出的 activity / service / receiver / provider / permission 列表 | ## 为什么需要这两种后端? `apktool` 是 Smali 和 manifest 解码的黄金标准,但它是用户必须自行安装的 Java 工具。`parse_apk` + `list_dex_classes` + `decode_manifest` 的接口范围足够小,以至于 `androguard` 能够满足约 90% 的分析需求(header + 类 + manifest),且无需安装 JRE。当存在 `apktool` 时,MCP 层会优先使用它,若不存在则平稳地回退到 `androguard`。 ## 安装 ``` pip install -e ./servers/re-apktool # androguard (required) apt-get install apktool # apktool (optional, java) ``` ## 运行 ``` re-apktool # stdio transport (default for MCP) python -m re_apktool # equivalent ``` ## 延后至未来的运行 最初的 Explore 调查结果需要一个 APK 解析器;这套基础框架实现了它,从而使未来针对 Android 目标的运行能够具备完整的工具链。Live Fire 针对 Windows 目标的运行使用了 `re-leak-scan` + `re-winedbg` 来处理这三个指定的产品;而当输入中包含 Android 二进制文件时,`re-apktool` 就会成为主力工具。
标签:androguard, Android, apktool, APK解析, DSL, JS文件枚举, MCP服务器, 逆向分析, 逆向工具