cognis-digital/apkpeek

GitHub: cognis-digital/apkpeek

一款一键式的 Android APK/AAB 静态安全分诊工具,能快速提取硬编码密钥、危险权限等安全风险并输出 SARIF 报告,专为 CI/CD 集成设计。

Stars: 0 | Forks: 0

APKPEEK # APKPEEK ### 一键静态分诊 Android APK/AAB 二进制文件:将硬编码的密钥、导出的组件、危险的权限和不安全的 manifest 标志提取为单一的 SARIF 报告。 [![PyPI](https://img.shields.io/pypi/v/cognis-apkpeek.svg?color=6b46c1)](https://pypi.org/project/cognis-apkpeek/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/4596588770053856.svg)](https://github.com/cognis-digital/apkpeek/actions) [![License: COCL 1.0](https://img.shields.io/badge/License-COCL%201.0-2b6cb0.svg)](LICENSE) [![Suite](https://img.shields.io/badge/Cognis-Neural%20Suite-6b46c1.svg)](https://github.com/cognis-digital) *应用与移动安全 — SAST/DAST-lite 与二进制分诊。*
``` pip install cognis-apkpeek apkpeek scan . # → prioritized findings in seconds ``` ## 使用说明 — 逐步指南 1. **安装** CLI(控制台脚本 `apkpeek`): pip install cognis-apkpeek 2. **运行完整的静态扫描**,针对 `.apk` 或 `AndroidManifest.xml`: apkpeek scan app.apk 3. **深入查看单个方面** — manifest、权限,或仅仅是硬编码的密钥: apkpeek manifest app.apk apkpeek permissions app.apk apkpeek secrets app.apk 4. **以 JSON 格式查看结果**,并使用 `--min-severity` / `--no-dex` 调整范围: apkpeek scan app.apk --format json --min-severity medium apkpeek scan app.apk --no-dex # 跳过 DEX/资源密钥扫描 5. **在 CI 中自动化** — 退出码 0 = 通过,1 = 错误,2 = 存在发现(未通过门禁): - run: pip install cognis-apkpeek - run: apkpeek scan app.apk --format json --min-severity high | tee apkpeek.json ## 目录 - [为什么选择 apkpeek?](#why) · [功能](#features) · [快速开始](#quick-start) · [示例](#example) · [架构](#architecture) · [AI 技术栈](#ai-stack) · [对比](#how-it-compares) · [集成](#integrations) · [随处安装](#install-anywhere) · [相关项目](#related) · [贡献](#contributing) ## 为什么选择 apkpeek? MobSF 庞大且有状态;开发者想要一个简单的 `apkpeek scan app.apk`,能将 SARIF 直接输出到 GitHub Actions 的 PR 检查中 —— 零服务器,零数据库。 `apkpeek` 是单一用途、可脚本化且可自托管的:将其指向目标,以您的工作流已使用的格式(表格 · JSON · SARIF)获取优先级排序的结果,据此设置 CI 门禁,并允许 agent 通过 MCP 驱动它。
↑ 回到顶部
## 功能 - ✅ 解析 Axml - ✅ 分析 Manifest - ✅ 扫描密钥 - ✅ 扫描 Apk - ✅ 输出为 Sarif - ✅ 可在 Linux/macOS/Windows · Docker · devcontainer 上运行 - ✅ 提供 Python、JavaScript、Go 和 Rust 的移植版本(`ports/`)
↑ 回到顶部
## 快速开始 ``` pip install cognis-apkpeek apkpeek --version apkpeek scan . # scan current project apkpeek scan . --format json # machine-readable apkpeek scan . --fail-on high # CI gate (non-zero exit) ```
↑ 回到顶部
## 示例 ``` $ apkpeek scan . [HIGH ] APK-001 example finding (./src/app.py) [MEDIUM ] APK-002 another signal (./config.yaml) 2 findings · risk score 5 · 38ms ```
↑ 回到顶部
## 架构 ``` flowchart LR IN[capture / scan] --> P[apkpeek
parse + map] P --> OUT[report] ```
↑ 回到顶部
## 从任何 AI 技术栈中使用它 `apkpeek` 可以与所有流行的 AI 使用方式互操作: - **MCP server** — `apkpeek mcp`(Claude Desktop、Cursor、Cognis.Studio、[uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet)) - **兼容 OpenAI / JSON** — 将 `apkpeek scan . --format json` 管道传输给任何 agent 或 LLM - **LangChain · CrewAI · AutoGen · LlamaIndex** — 用一行代码将 CLI/JSON 封装为工具 - **CI / 脚本** — 退出码 + SARIF 用于非 AI 流水线
↑ 回到顶部
## 对比 | | **Cognis apkpeek** | MobSF (Mobile Security Framework) static analyzer, minus the heavyweight web UI | |---|:---:|:---:| | 可自托管,无需账号 | ✅ | 视情况而定 | | 单一命令,零配置 | ✅ | ⚠️ | | 用于 CI 的 JSON + SARIF | ✅ | 视情况而定 | | MCP 原生支持(AI agent) | ✅ | ❌ | | 多语言移植(JS/Go/Rust) | ✅ | ❌ | | 开放许可证 | ✅ COCL | 视情况而定 | *秉承 **MobSF(移动安全框架)静态分析器的精神,去除了重量级的 Web UI** 的理念,以 Cognis 的方式重新构建。遗漏了致谢?提交一个 PR 吧。*
↑ 回到顶部
## 集成 接入您的技术栈:用于代码扫描的 **SARIF**,用于任何场景的 **JSON**,用于 AI agent 的 **MCP server**(`apkpeek mcp`),以及用于 SIEM/Slack/Jira 的 webhook 转发器。详见 [`docs/INTEGRATIONS.md`](docs/INTEGRATIONS.md)。
↑ 回到顶部
## 安装 — 各种方式,各个平台 ``` pip install "git+https://github.com/cognis-digital/apkpeek.git" # pip (works today) pipx install "git+https://github.com/cognis-digital/apkpeek.git" # isolated CLI uv tool install "git+https://github.com/cognis-digital/apkpeek.git" # uv pip install cognis-apkpeek # PyPI (when published) docker run --rm ghcr.io/cognis-digital/apkpeek:latest --help # Docker brew install cognis-digital/tap/apkpeek # Homebrew tap curl -fsSL https://raw.githubusercontent.com/cognis-digital/apkpeek/main/install.sh | sh ``` | Linux | macOS | Windows | Docker | 云平台 | |---|---|---|---|---| | `scripts/setup-linux.sh` | `scripts/setup-macos.sh` | `scripts/setup-windows.ps1` | `docker run ghcr.io/cognis-digital/apkpeek` | [DEPLOY.md](docs/DEPLOY.md) (AWS/Azure/GCP/k8s) |
↑ 回到顶部
## 相关的 Cognis 工具 - [`ipasnitch`](https://github.com/cognis-digital/ipasnitch) — 用于 iOS .ipa 包的静态扫描器,可标记 ATS 异常、缺失的 entitlements 加固、内嵌的 URL/密钥以及薄弱的 Info.plist 传输安全设置。 - [`hookcraft`](https://github.com/cognis-digital/hookcraft) — 根据 YAML 意图(例如“绕过 SSL pinning”、“转储加密密钥”)生成可直接运行的 Frida 插桩脚本,并验证它们是否能附加到目标进程。 - [`dastlite`](https://github.com/cognis-digital/dastlite) — 一个无头(headless)、配置即代码的 DAST 运行器,可爬取经过身份验证的 Web/移动 API 接口,并触发精心挑选的主动扫描规则集,输出去重后的 SARIF。 - [`semsift`](https://github.com/cognis-digital/semsift) — 轻量级的语义感知 SAST,仅对 diff 运行精选的污点分析规则,让 PR 获得快速的增量 SAST,避免全仓库扫描的疲劳。 - [`cheatsense`](https://github.com/cognis-digital/cheatsense) — 反作弊遥测分析器,摄取游戏会话日志,并通过可解释的单项标记评分标记出统计上异常的输入/瞄准/移动特征。 - [`binhunt`](https://github.com/cognis-digital/binhunt) — 游戏/桌面二进制完整性扫描器,可提取可执行文件的指纹,检测常见的加壳器/代码混淆器,并与已知的安全基线进行对比以发现篡改行为。 **探索套件 →** [🗂️ 全部 170+ 个工具](https://github.com/cognis-digital/cognis-neural-suite) · [⭐ awesome-cognis](https://github.com/cognis-digital/awesome-cognis) · [🔗 cognis-sources](https://github.com/cognis-digital/cognis-sources) · [🤖 uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet) · [🧠 engram](https://github.com/cognis-digital/engram)
↑ 回到顶部
## 互操作性 `{}` 与包含 300+ 工具的 Cognis 套件配合使用 — JSON 输入/输出以及共享的 兼容 OpenAI 的 `/v1` 骨干网络。请参阅 **[INTEROP.md](INTEROP.md)** 获取 套件图谱、组合模式和参考技术栈。 ## 许可证 源码可用,基于 **Cognis Open Collaboration License (COCL) v1.0** — 个人、内部评估、研究和教育用途免费;**商业/生产用途需要许可证** (licensing@cognis.digital)。详见 [LICENSE](LICENSE)。
Cognis Digital · 包含 170+ 个工具的 Cognis Neural Suite 中的一员 · Making Tomorrow Better Today
标签:Android, DSL, SARIF, SAST, 云安全监控, 可视化界面, 数据可视化, 日志审计, 目录枚举, 盲注攻击, 移动安全, 请求拦截, 逆向工具, 静态分析