moaaz01/nightowl

GitHub: moaaz01/nightowl

NightOwl 是一个结合静态与动态分析的 Android APK 安全检测器,专注于发现密钥、权限漏洞并提供合规评分。

Stars: 0 | Forks: 0

# 🦉 NightOwl ### 高级 Android APK 安全分析器 **静态 + 动态分析 · 兼容 OWASP MSTG · 代理就绪** [![版本](https://img.shields.io/badge/version-4.0-blue.svg)](https://github.com/moaaz01/nightowl) [![Python](https://img.shields.io/badge/python-3.12+-green.svg)](https://python.org) [![许可证: MIT](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE) [![测试](https://img.shields.io/badge/tests-49%20passing-brightgreen.svg)](tests/)
**NightOwl** 是一个全面的 Android APK 安全分析器,执行深度静态分析(涵盖 9 个部分)并集成动态分析工具(Frida、Objection)。专为安全研究人员、渗透测试人员和 AI 代理设计。 ## ✨ 关键特性 | 功能 | 描述 | |---------|-------------| | **9 部分分析** | 信息、权限、URL、密钥、架构、漏洞、清单、API、反编译 | | **原生 .so 扫描** | 从 `libapp.so`、`libflutter.so` 及其他原生库提取字符串(支持 Flutter/React Native) | | **55+ 密钥模式** | AWS、GCP、Stripe、PayPal、Telegram、JWT、Firebase、SSH 密钥等 | | **香农熵过滤** | 真实熵计算以消除二进制噪声导致的误报 | | **安全评分** | 带字母等级(A+ → F)的加权类别评分,兼容 OWASP 风险等级 | | **深度链接分析** | 检测未经验证的 App Links、HTTP 深链接及 autoVerify 状态 | | **证书检查** | 签名证书详情、过期警告、密钥强度检查 | | **HTML + MD + JSON 报告** | 交互式标签页 HTML、Markdown 及机器可读 JSON 输出 | | **Frida 脚本** | 4 个即用脚本:API 拦截、SSL 绕过、内存转储、钩子 | | **批量扫描** | 一次性扫描整个目录中的 APK 文件 | | **代理集成** | 完整的 SKILL.md 用于 AI 代理使用——结构化 JSON 输出、jq 示例 | ## 📦 安装 ### 快速安装 ``` git clone https://github.com/moaaz01/nightowl.git cd nightowl bash scripts/install-ultimate.sh source env.sh ``` ### 手动设置 ``` # 创建虚拟环境 python3 -m venv .venv source .venv/bin/activate # 安装 Python 依赖 pip install -r requirements.txt # 安装二进制工具(jadx、dex2jar、radare2) bash scripts/install-ultimate.sh ``` ### 依赖项 - **Python 3.12+** - **Java JDK 8+**(用于 jadx/apktool) - **Android SDK**(adb) - 请参阅 [requirements.txt](requirements.txt) 获取 Python 包 ## 🚀 用法 ### 静态分析命令 ``` # 完整的 9 部分分析(推荐) nightowl full app.apk # 独立部分 nightowl info app.apk # Basic info & hashes nightowl perms app.apk # Permission risk analysis nightowl urls app.apk # URLs, endpoints, servers nightowl secrets app.apk # API keys, tokens, passwords nightowl arch app.apk # Frameworks & libraries nightowl vulns app.apk # Security score & vulnerabilities nightowl manifest app.apk # Components & activities nightowl apis app.apk # Fast API/endpoint extraction nightowl decompile app.apk # Full decompile: jadx + apktool + native # 批量扫描 targets/ 目录中的所有 APK nightowl scan # 使用指南 nightowl guide ``` ### 输出标志 ``` nightowl full app.apk --json # JSON only (for scripting & agents) nightowl full app.apk --save # Save HTML + MD + JSON reports nightowl full app.apk --lang ar # Arabic report translations nightowl full app.apk --report-dir ./output # Custom output directory ``` ### 动态分析(需要已 root 的设备) ``` # 1. 加载环境 source env.sh # 2. 将 Frida 服务器部署到设备 frida-deploy # 3. 拦截 API 流量 + SSL 绕过 frida-intercept com.app -l frida-scripts/api-interceptor.js # 4. 专用 SSL 固定绕过 frida -f com.app -l frida-scripts/ssl-bypass.js --no-pause # 5. 内存分析与密钥扫描 frida -f com.app -l frida-scripts/memory-dump.js --no-pause # 6. 交互式 objection Shell obj com.app ``` ## 📊 分析章节 | # | 章节 | 检测内容 | |---|---------|----------------| | 1 | **信息** | 包名、版本、SDK 级别、哈希(MD5/SHA1/SHA256)、文件大小 | | 2 | **权限** | 危险/普通权限及其风险等级和描述 | | 3 | **URL** | 所有 URL、API 端点、服务器域名、IP地址 | | 4 | **密钥** | 55+ 模式:API 密钥、令牌、密码、私钥、云凭证 | | 5 | **架构** | 框架(Flutter、React Native、Unity)、原生库、打包器检测 | | 6 | **漏洞** | 带类别权重的安全评分、调试标志、启用备份、明文流量 | | 7 | **清单** | 活动、服务、接收器、提供者、导出组件、深链接 | | 8 | **API** | Retrofit/OkHttp/Volley 端点、URL 路径模式、HTTP 方法 | | 9 | **反编译** | jadx 源码 + apktool 资源 + 原生 .so 字符串提取 | ## 🔐 密钥检测模式 NightOwl 检测 **55+ 密钥模式**,涵盖以下类别: | 类别 | 示例 | |----------|---------| | **云** | AWS 访问密钥(`AKIA...`)、GCP API 密钥、Azure 凭证 | | **支付** | Stripe(`sk_live_`、`pk_live_`)、PayPal、Square | | **消息** | Telegram 机器人令牌、Discord 机器人令牌、Slack Webhook | | **认证** | JWT(`eyJ...`)、Bearer 令牌、基本认证 | | **数据库** | PostgreSQL/MySQL/MongoDB URI、Redis URL | | **DevOps** | GitHub 令牌(`ghp_`)、GitLab 令牌、Heroku API 密钥 | | **社交** | Twitter/Facebook/LinkedIn API 密钥 | | **SSH** | 私钥(`-----BEGIN RSA`)、SSH 配置模式 | | **移动** | Firebase(`AIzaSy...`)、SendGrid、Twilio SID | 每个模式均包含 **描述**、**风险等级**(高危/危急/中危/低危)以及 **熵验证** 以减少误报。 ## 📁 项目结构 ``` nightowl/ ├── nightowl.py # Main analyzer (single-file, portable) ├── env.sh # Environment setup (auto-generated) ├── requirements.txt # Python dependencies ├── requirements-python.txt # Detailed Python packages (pinned) ├── LICENSE # MIT License ├── AGENTS.md # AI agent integration guide ├── README.md # This file ├── frida-scripts/ │ ├── api-interceptor.js # HTTP/HTTPS traffic capture │ ├── ssl-bypass.js # SSL pinning bypass │ ├── memory-dump.js # Memory scanning & secrets │ └── hooks.js # Crypto, auth, root detection hooks ├── androguard-scripts/ │ ├── analyze.py # Androguard CLI wrapper │ ├── extract-strings.py # String extraction │ └── find-permissions.py # Permission finder ├── scripts/ │ ├── install-ultimate.sh # Full dependency installer │ ├── install-all.sh # Alternative installer │ ├── smart-update.sh # Incremental update script │ └── network-setup.sh # Network/proxy configuration ├── skills/nightowl/ │ └── SKILL.md # AI agent skill definition ├── tests/ │ ├── test_nightowl.py # 49 unit tests │ ├── create_test_apk.py # Test APK generator │ └── __init__.py └── tools/ # Binary tools (installed by scripts) ├── jadx/ # Java decompiler ├── dex2jar/ # DEX to JAR converter └── ghidra/ # Reverse engineering suite ``` ## 🤖 代理集成 NightOwl 专为代理驱动的安全分析设计。[SKILL.md](skills/nightowl/SKILL.md) 和 [AGENTS.md](AGENTS.md) 提供完整的集成指南。 ``` # JSON 输出(供代理使用) nightowl full app.apk --json # 使用 jq 解析 nightowl secrets app.apk --json | jq '.secrets.critical[]' # 批量处理 nightowl scan --json | jq '.[] | select(.grade == "F")' ``` ## 🧪 测试 ``` # 运行全部 49 个测试 python -m pytest tests/ -v # 或直接执行 python tests/test_nightowl.py ``` 测试涵盖:验证、密钥模式、分析器逻辑、评分、报告生成及常量。 ## 📜 许可证 [MIT 许可证](LICENSE) —— 仅限授权的安全测试与研究使用。
**🦉 专为追求深度的安全研究人员打造。**
标签:AI代理集成, Android安全分析, API安全, APK动态分析, APK目录扫描, APK静态分析, AWS密钥, DeepSeek, Docker支持, Firebase, Flutter, Frida, GCP密钥, HOOK, HTML报告, JSON输出, JS文件枚举, JWT, Markdown报告, Native so, Objection, OWASP MSTG, PayPal, Python安全工具, Ruby on Rails, .so字符串提取, SSH密钥, SSL绕过, Stripe, Telegram, 云资产清单, 信息泄露检测, 内存转储, 安全评分, 无服务器架构, 权限分析, 深度链接检测, 熵值分析, 版本4.0, 移动应用安全, 证书分析, 逆向工具, 逆向工程