xtr4ng3-oxlgr/coldcase

GitHub: xtr4ng3-oxlgr/coldcase

COLDCASE 是一个用 Rust 构建的本地数字取证 triage 工作台,帮助管理员和分析师在系统异常时收集、组织本地证据并生成防御性报告。

Stars: 0 | Forks: 0

# COLDCASE cc **COLDCASE** 是一个使用 Rust 构建的本地取证 triage 平台,旨在组织案例、捕获 snapshots、生成时间线、计算 hashes、检测可疑 artifacts 并生成防御性报告。 由 **xtr4ng3** 创建。 ## 目的 当一台机器开始表现异常时,第一步不应是在不了解发生了什么的情况下直接删除、清理或格式化。 第一步是观察。 **COLDCASE** 旨在收集本地证据,整理重要信号并生成清晰的报告。其目标是帮助技术用户、管理员和分析师回答基本问题: - 出现了哪些文件, - 更改了哪些文件, - 哪些路径值得审查, - 生成了哪些 hashes, - 敏感区域中存在哪些 scripts 或可执行文件, - 哪些事件可以构成时间线的一部分, - 在做出决定之前值得记录哪些要素。 COLDCASE 不会删除文件。 COLDCASE 不会修改系统。 COLDCASE 不会将证据上传到互联网。 COLDCASE 仅用于组织本地信息以进行防御性审查。 ## 主要功能 - Rust 编写的 CLI。 - 每个案例独立的 SQLite 数据库。 - 独立的工作区。 - 系统快照捕获。 - 文件夹扫描。 - 计算 SHA-256。 - 估算熵值。 - 防御性 triage 规则。 - scripts 检测。 - 可执行文件检测。 - 压缩文件检测。 - 敏感路径检测。 - 高风险名称检测。 - 生成时间线。 - HTML 报告。 - JSON 报告。 - SARIF 报告。 - 本地静态 Dashboard。 - GitHub Actions 工作流。 - Windows 构建脚本。 ## 架构 ``` case workspace -> SQLite database -> snapshot collector -> file scanner -> rule evaluator -> timeline builder -> report generator -> static dashboard ``` 主要组件: ``` src/ ├─ main.rs -> entrada CLI ├─ case.rs -> creación y estado de casos ├─ collectors.rs -> snapshots del sistema ├─ scanner.rs -> escaneo de carpetas ├─ hashing.rs -> SHA-256 y entropía ├─ rules.rs -> reglas de triage ├─ db.rs -> almacenamiento SQLite ├─ report.rs -> HTML / JSON / SARIF ├─ models.rs -> modelos de datos └─ util.rs -> utilidades internas ``` ## 命令 创建案例: ``` coldcase new cases/my-case --title "Suspicious download review" ``` 捕获本地快照: ``` coldcase snapshot cases/my-case ``` 扫描文件夹: ``` coldcase scan cases/my-case C:\Users\User\Downloads ``` 生成时间线: ``` coldcase timeline cases/my-case ``` 生成报告: ``` coldcase report cases/my-case ``` 查看案例状态: ``` coldcase status cases/my-case ``` 创建默认规则文件: ``` coldcase rules coldcase.rules ``` ## 推荐流程 ``` coldcase new cases/test-case --title "PC triage" coldcase snapshot cases/test-case coldcase scan cases/test-case C:\Users\User\Downloads coldcase scan cases/test-case C:\Users\User\AppData\Roaming coldcase timeline cases/test-case coldcase report cases/test-case ``` 生成报告后,打开以下路径中的 HTML 文件: ``` cases/test-case/reports/ ``` ## 案例结构 ``` my-case/ ├─ CASE.md ├─ coldcase.db ├─ evidence/ ├─ exports/ └─ reports/ ├─ coldcase_.html ├─ coldcase_.json └─ coldcase_.sarif ``` 每个案例都有其独立的 SQLite 数据库和报告。 ## COLDCASE 的检测内容 COLDCASE 会对以下 artifacts 进行标记和记录: - scripts, - 可执行文件, - 压缩文件, - 敏感路径中的文件, - 高熵值的 artifacts, - 包含风险词汇的文件名, - 在快照中检测到的可疑启动项, - 对时间线有用的要素。 敏感路径示例: ``` AppData Temp Downloads Descargas Public ``` 检查的扩展名示例: ``` ps1, vbs, js, jse, wsf, hta, bat, cmd, scr, pif, lnk exe, dll, sys, msi zip, rar, 7z, iso, img ``` ## 报告 COLDCASE 生成三种格式: ``` HTML -> lectura humana JSON -> integración / dashboard / archivo estructurado SARIF -> revisión compatible con flujos de seguridad ``` HTML 报告包含: - 结论, - 评分, - 发现, - artifacts, - hashes, - 时间线, - snapshots, - 建议。 ## 仪表板 Dashboard 是本地且静态的: ``` dashboard/index.html ``` 它可以加载由 COLDCASE 生成的 JSON 报告,以审查: - 摘要, - 发现, - artifacts, - 时间线。 不需要外部服务器。 ## 规则 基础规则文件位于: ``` rules/coldcase.rules ``` 也可以通过以下命令生成: ``` coldcase rules coldcase.rules ``` 初始规则简单且具有防御性。它们旨在用于本地 triage,而不是进行自动判定。 ## 编译 需要 Rust。 ``` cargo build --release ``` 在 Windows 上可以使用: ``` build_windows\BUILD_RELEASE.bat ``` 生成的二进制文件位于: ``` target/release/coldcase ``` 在 Windows 上: ``` target\release\coldcase.exe ``` ## Windows 快速安装 1. 通过 `rustup` 安装 Rust。 2. 在项目文件夹中打开终端。 3. 执行: ``` build_windows\BUILD_RELEASE.bat ``` 4. 使用 `CLIENTE_PORTABLE` 中生成的二进制文件。 ## 安全性 COLDCASE 不执行破坏性操作。 它不会: - 删除文件, - 自动隔离, - 关闭进程, - 禁用启动项, - 更改注册表, - 上传证据, - 进行漏洞利用, - 实现持久化, - 静默修改系统。 COLDCASE 只负责收集、组织和报告。 ## 负责任的使用 COLDCASE 的发现结果是审查的切入点。 高严重性的发现并不单纯意味着文件是恶意的。它只代表该文件值得进行手动分析。 上下文很重要: - 文件来源, - 创建日期, - 位置, - 数字签名, - hash, - 观察到的行为, - 与其他事件的关联。 ## 项目状态 COLDCASE v1.0 是本地 triage 的专业基础。 未来可能的领域: - 更多的 collectors, - 更高级的事件解析, - 导出为 CSV, - 更完善的可配置规则, - 分析 `.lnk` 快捷方式, - 在快照之间进行比较, - 更高级的便携式打包, - 可选的外部 dashboards 集成。 # 许可证 giphy (25) **xtr4ng3** MIT.
标签:Homebrew安装, Rust, SQLite, 可视化界面, 多模态安全, 库, 应急响应, 数字取证, 网络流量审计, 自动化脚本, 通知系统