aring87/ringforge-workbench
GitHub: aring87/ringforge-workbench
一款集成了静态、动态及API分析能力的Windows软件统一分类平台,旨在为安全分析师提供结构化、案例化的样本分析与报告生成工作流。
Stars: 1 | Forks: 0
# RingForge Workbench
[](https://github.com/aring87/ringforge-workbench/releases)
[](https://github.com/aring87/ringforge-workbench)
[](https://www.python.org/)
[](https://github.com/aring87/ringforge-workbench)
[](https://github.com/aring87/ringforge-workbench)
**静态洞察。动态可见性。结构化审查。**
RingForge Workbench 是一个专注于 Windows 的软件分类平台,旨在支持从单一界面进行结构化静态分析、动态行为审查、API 分析、API 规范审查以及浏览器扩展分析。它专为希望获得更清晰的工作流、更有条理的输出以及跨多种软件评估路径的一致报告的分析师而设计。
版本 **1.6** 引入了全新的启动体验,包括品牌启动画面和启动器,并首次发布了针对 Chrome、Edge 和 Chromium 风格扩展的 **浏览器扩展分析** 功能。
## 当前版本
**版本:** v1.6
## 概述
RingForge Workbench 帮助分析师对 Windows 软件样本(如 EXE、DLL、安装程序、启动器及相关包文件)进行分类。它将元数据提取、字符串分析、capa 行为分析、IOC 提取、签名验证、VirusTotal 信誉、可执行 API 导入分析、受控动态运行时行为收集、API 规范分析以及浏览器扩展分析整合到一个更广泛的评估工作流中。
该平台创建基于案例的输出,并生成结构化工件,例如 JSON 分析文件、IOC 导出、Markdown 和 HTML 报告、支持的 PDF 报告、源自 Procmon 的运行时工件、持久性差异、动态发现摘要、API 规范清单报告以及浏览器扩展分析报告。
## v1.6 更新内容
RingForge Workbench v1.6 是一个工作流和易用性版本,将 v1.5 的模块化 GUI 工作转变为更完善的面向分析师的体验。此版本改进了用户进入平台、选择工作流和审查浏览器扩展包的方式,同时保留了现有的静态分类功能。
### 亮点
- 增加了 RingForge 品牌启动画面
- 增加了用于工作流选择的启动器/主屏幕
- 增加了 **浏览器扩展分析**
- 增加了对解压后浏览器扩展文件夹的支持
- 增加了对基于 ZIP 的扩展分析的支持
- 增加了对基于 CRX 的扩展分析的支持
- 增加了对浏览器扩展的 manifest 解析和摘要审查
- 增加了扩展内容的文件清单和文件预览
- 增加了浏览器扩展风险说明、风险评分和判定
- 增加了颜色编码的浏览器扩展判定显示
- 增加了浏览器扩展报告的快速保存 JSON 导出
- 增加了浏览器扩展报告的快速保存 HTML 导出
- 增加了对浏览器扩展报告的报告文件夹支持
- 设置了浏览器扩展 HTML 报告样式以匹配更广泛的 RingForge 报告主题
- 改进了整个平台的启动和导航流程
### v1.6 更新日志
#### 启动 / 启动器
- 增加了启动画面支持
- 增加了基于启动器的启动流程
- 增加了针对静态、动态、API、Spec 和浏览器扩展分析的直接工作流选择
- 保留了现有的静态分析界面,同时将其移至新的启动流程之后
#### 浏览览器扩展分析
- 增加了专用的浏览器扩展分析窗口
- 增加了对解压后浏览器扩展文件夹的支持
- 增加了对 ZIP 归档的支持
- 增加了对 CRX 包的支持
- 增加了 manifest 解析和摘要提取
- 增加了浏览器扩展文件清单视图
- 增加了浏览器扩展文件预览面板
- 增加了基于 manifest 和快速源代码审查的风险说明生成
- 增加了风险评分和判定映射
- 增加了颜色编码的判定显示
- 增加了快速保存 JSON 报告导出
- 增加了快速保存 HTML 报告导出
- 增加了报告文件夹支持
#### 报告 / UI
- 将 RingForge 报告样式扩展到浏览器扩展 HTML 报告
- 改进了扩展分析工作区的布局和易用性
- 改进了启动器命名和流程清晰度
- 改进了源选择后的扩展分析焦点行为
- 保持了与 RingForge 深蓝/黑/白样式风格的视觉一致性
### 为什么 v1.6 很重要
版本 1.6 为 RingForge Workbench 提供了更清晰的入口点和更强大的平台标识。应用程序现在不再直接打开进入某个工作流,而是启动到一个品牌选择器中,这使得该工具更易于导航和扩展。
此版本还增加了一个有意义的新分析领域——浏览器扩展分析,将 RingForge Workbench 从 Windows 软件分类扩展到浏览器扩展包、权限、manifest 和相关源内容的结构化审查。
## 早期版本亮点
### v1.5
GUI 模块化和可维护性版本:
- 将主要 GUI 窗口分离到专用模块中
- 将主题逻辑移至 `gui/styles.py`
- 提高了可维护性并降低了未来 GUI 增强的风险
- 为启动器和额外工作流建立了结构基础
### v1.4
分析质量和误报减少版本:
- 调整了动态评分以减少环境和良性运行时噪声
- 改进了对有效签名软件的签名验证处理
- 为大型二进制文件添加了 Capa 超时和大文件跳过支持
- 改进了 YARA 集成和报告可见性
- 强化了 API Spec Analysis,提供了更丰富的端点风险上下文
## 核心工作流
### 静态分析
RingForge Workbench 包含一个用于 Windows 可执行文件和相关软件包的完整静态分类工作流。静态分析支持:
- 文件哈希
- PE 和元数据审查
- 基于 LIEF 的丰富信息
- 字符串分析
- capa 分析
- IOC 提取
- 风险评分
- Markdown / HTML / PDF 报告生成
### 动态分析
动态分析支持 Windows 样本的运行时行为审查和证据收集。根据配置和环境,这可能包括:
- 进程和行为捕获
- 感兴趣的事件过滤
- 丢弃文件审查
- 持久性快照和差异工作流
- 动态发现审查
- HTML 和 PDF 报告
### API 分析
API 分析支持对应用程序和服务 API 进行手动分析师审查,包括:
- 手动 API 请求测试
- 响应检查
- 通过专用 API 窗口的结构化分析师工作流
### API 规范分析
规范分析支持 OpenAPI 和 Swagger 风格的规范审查,包括:
- 端点清单
- 面向风险的规范审查
- 识别潜在风险端点和模式
- HTML 清单报告
### 浏览器扩展分析
浏览器扩展分析是 v1.6 中的新功能,支持浏览器扩展的静态审查,包括:
- 解压后的浏览器扩展文件夹
- ZIP 扩展包
- CRX 包
浏览器扩展分析包括:
- Manifest 解析
- 文件清单
- 文件预览
- 风险说明
- 风险评分
- 风险判定
- 颜色编码的判定显示
- Manifest JSON 查看
- 快速保存 JSON 导出
- 快速保存 HTML 导出
- 报告文件夹支持
## 工作流启动器
RingForge Workbench 现在启动到一个启动器中,提供直接访问:
- 静态分析
- 动态分析
- API 分析
- 规范分析
- 浏览器扩展分析
这为平台提供了一个更清晰的入口点,并使随着时间的推移更容易扩展额外的工作流。
## 浏览器扩展分析概述
浏览器扩展分析模块专为 Chrome、Edge 和 Chromium 风格的扩展设计。
### 支持的来源
- 解压后的文件夹
- ZIP 归档
- CRX 包
### 显示的摘要信息
- 名称
- 版本
- 描述
- Manifest 版本
- 权限
- 主机权限
- 后台 / Service Worker
- 内容脚本
- Web 资源
- 外部可连接
- 更新 URL
- 命令
- CSP
- 风险评分
- 风险判定
- 发现的文件
### 风险说明和检测思路
该模块目前针对以下内容执行快速静态检查:
- Manifest 权限
- 主机权限
- 后台 / service worker 使用情况
- 内容脚本
- Web 可访问资源
- 外部可连接设置
- 常见代码模式,例如:
- `eval`
- `new Function`
- `XMLHttpRequest`
- `fetch`
- `document.cookie`
- `chrome.cookies`
- `chrome.tabs`
- `chrome.scripting`
- `chrome.webRequest`
- 远程 URL
### 导出支持
浏览器扩展结果可以快速保存为:
- JSON
- HTML
HTML 导出使用与主要报告工作流相同的 RingForge 视觉样式。
## 输出
### 静态案例输出
典型的静态案例文件夹可能包含:
```
cases//
analysis.log
api_analysis.json
capa.json
capa.txt
extracted/
extracted_manifest.json
file.txt
iocs.csv
iocs.json
lief_metadata.json
pe_metadata.json
report.html
report.md
report.pdf
runlog.json
signing.json
strings.txt
subfiles/
summary.json
virustotal.json
```
在某些环境中,可能不会生成 `report.pdf`。在这种情况下,请打开 `report.html` 并使用浏览器的“打印到 PDF”选项。
### 动态案例工件
动态分析运行可以产生如下结构:
```
cases//
metadata/
run_config.json
sample_info.json
run_summary.json
procmon/
raw.pml
export.csv
parsed_events.json
interesting_events.json
persistence/
tasks_before.json
tasks_after.json
task_diffs.json
services_before.json
services_after.json
service_diffs.json
files/
dropped_files.json
dropped_files_summary.json
reports/
dynamic_findings.json
dynamic_report.html
dynamic_report.pdf
```
### API 规范案例工件
API 规范分析运行可以产生如下结构:
```
cases//
spec/
spec_inventory__.json
spec_inventory__.html
spec_inventory_latest_.json
spec_inventory_latest_.html
spec_inventory_latest.json
spec_inventory_latest.html
original_.yaml
```
### 浏览器扩展报告输出
浏览器扩展分析运行可以产生如下报告文件夹:
```
ringforge_extension_reports/
_extension_analysis.json
_extension_analysis.html
```
## 仓库布局
```
ringforge-workbench/
assets/
docs/
scripts/
static_triage_engine/
dynamic_analysis/
gui/
tools/
procmon-configs/
cases/ # generated locally, usually gitignored
logs/ # generated locally, usually gitignored
release/
.gitignore
LICENSE
README.md
requirements.txt
```
## 系统要求
### Python
- 推荐使用 Python 3.11 或 3.12
### Python 包
典型依赖项包括:
- `requests`
- `pefile`
- `lief`
- `pyyaml`
- `pyinstaller`
- `weasyprint`(可选,用于直接生成 PDF)
- `pillow`(用于图像支持的品牌和启动资产)
- `requirements.txt` 中列出的任何包
### 动态分析工具
对于 Windows 上的动态分析,需要 Procmon 进行完整的运行时捕获。
典型设置:
- 从 Microsoft Sysinternals 单独获取的 Procmon
- 位于 `tools/procmon-configs` 下的可选 Procmon 配置文件
- 用于执行和观察的专用 Windows VM
- 在捕获和快照需要时具备管理员权限
### capa 资源
您还应该拥有:
- `tools/capa-rules`
- `tools/capa/sigs`
## Windows 设置示例
```
cd C:\RingForge_Analyzer\Static-Software-Malware-Analysis
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install lief
```
可选 PDF 支持:
```
pip install weasyprint
```
如果在 Windows 上 WeasyPrint 依赖项不可用,HTML 导出仍然有效,并且可以从浏览器打印为 PDF。
## Linux 设置示例
```
cd ~/analysis/ringforge-workbench
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pefile pyyaml lief flare-capa
bash scripts/bootstrap_capa_rules.sh
```
## 运行 GUI
### Windows
```
cd C:\RingForge_Analyzer\Static-Software-Malware-Analysis
.\.venv\Scripts\Activate.ps1
python .\scripts\static_triage_gui.py
```
### Linux
```
cd ~/analysis/ringforge-workbench
source .venv/bin/activate
python scripts/static_triage_gui.py
```
## 打包 RingForge Workbench v1.6
### 构建
示例 PyInstaller 构建:
```
pyinstaller --noconfirm --clean --distpath .\dist --workpath .\build .\RingForgeWorkbench.spec
```
### 发布文件夹
创建发布文件夹并复制:
- 构建的应用程序文件夹
- `config.json`
- `README_v1.6.md`
- `LICENSE`
- `requirements.txt`
### Zip
```
Compress-Archive -Path .\release\RingForge_Workbench_v1.6\* -DestinationPath .\release\RingForge_Workbench_v1.6.zip -Force
```
## 安全说明
- 动态分析应仅在隔离的、可还原的 Windows VM 或其他受控沙箱中执行。
- 不要在个人日常使用的主机上运行未知样本。
- 在非隔离系统上,由 Procmon 支持的执行和持久性快照可能会产生大量主机噪声。
- 合法软件仍可能包含强大的 API、安装程序行为或自动运行相关逻辑;评分和发现应始终在上下文中进行审查。
- 浏览器扩展可以请求强大的权限并且仍然是合法的;扩展发现应始终在分析师上下文中进行审查。
- API 规范分析可以突出显示风险路由、方法、身份验证模式和后续测试思路,但发现仍需要在上下文中由分析师审查。
## 说明
- API 分析目前通过导入/API 链分析应用于 Windows PE 可执行文件和 DLL。
- API 规范分析目前支持 JSON 或 YAML 形式的 OpenAPI 和 Swagger 定义文件。
- v1.6 中的浏览器扩展分析专注于静态审查,而不是动态浏览器执行。
- RingForge Workbench 中的动态分析旨在作为实际的分类层,而不是完整的沙箱替代品。
## 许可证
参见 `LICENSE`。
标签:API分析, API接口, Ask搜索, Conpot, DAST, IOC提取, PE文件分析, Python, VirusTotal, VPS部署, Windows安全, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 威胁情报, 开发者工具, 恶意软件分析, 指标提取, 搜索语句(dork), 文件分析, 无后门, 无线安全, 沙箱, 浏览器插件分析, 漏洞挖掘, 网络信息收集, 自动化分析, 跨站脚本, 软件分析, 软件取证, 逆向工具, 逆向工程, 静态分析