kemdude/Traceyze

GitHub: kemdude/Traceyze

基于 Sleuth Kit 的轻量级命令行磁盘取证工具,专注于从原始磁盘镜像中提取浏览器历史和注册表证据,重建并可视化用户的网络活动时间线。

Stars: 0 | Forks: 1

# Traceyze Traceyze 是一款 CLI 优先的 DFIR 工具,仅通过 Sleuth Kit CLI 工具分析原始磁盘镜像。它接受磁盘镜像作为输入,使用 `mmls`、`fls` 和 `icat` 查找浏览器和注册表证据,解析浏览器 SQLite 数据库,并将重构的网络活动以结构化 JSON、终端报告以及交互式时间轴查看器的形式返回。 ## 功能 - 同步 CLI 分析工作流,支持按案例存储 - 支持键盘导航的交互式时间轴查看器 - Raw/DD 镜像验证与流式上传处理 - 使用 `mmls` 进行分区发现及自动分区评分 - 针对 Windows 上 Chrome、Edge、Firefox 和 Brave 风格 Chromium 历史记录的浏览器证据发现 - SQLite 解析支持: - Chrome/Edge/Brave `History` - Firefox `places.sqlite` - 使用 `regipy` 解析注册表配置单元以发现 NTUSER Wi-Fi 配置文件 - 结构化 JSON 输出包含: - 已访问域名 - URL - 时间戳 - 已下载文件 - 可能的 IP - Wi-Fi 网络名称 - 可疑域名启发式检测针对: - 非 HTTPS 流量 - 不常见的 TLD - 按案例的日志记录和文件系统持久化 - 用于终端的纯文本取证报告和交互式时间轴查看器 - 用于终端会话的霓虹风格启动横幅 - 如果您后续仍希望使用 HTTP 访问,可选 FastAPI 层 ## 项目结构 ``` app/ |-- cli.py |-- main.py |-- routes/ | |-- analyze.py | `-- results.py |-- services/ | |-- analysis_service.py | |-- artifact_finder.py | |-- extractor.py | |-- parser.py | |-- reconstruction.py | `-- sleuthkit_runner.py |-- models/ | `-- schemas.py `-- utils/ |-- config.py |-- helpers.py |-- logging.py |-- report_formatter.py |-- storage.py `-- validators.py tools/ |-- generate_sample_image.py `-- view_timeline.py tests/ |-- test_analysis_service.py |-- test_api.py |-- test_artifact_finder.py |-- test_cli.py |-- test_parser_helpers.py |-- test_reconstruction.py |-- test_report_formatter.py `-- test_sleuthkit_runner.py storage/ `-- cases/ ``` ## 环境要求 - Python 3.10+ - Sleuth Kit 已安装并可在 `PATH` 中访问 - 所需命令:`mmls`、`fls`、`icat` ## 设置 ``` git clone cd NetworkForensicsAPI python -m venv .venv . .venv/Scripts/activate pip install -r requirements.txt pip install -e . ``` 运行 CLI: ``` tez --help ``` ## CLI 用法 ### 分析磁盘镜像 分析原始磁盘镜像并在本地保存案例。 ``` tez analyze sample_data/network_forensics_sample.img --output report ``` 默认情况下,面向用户的命令会显示终端横幅和彩色输出。面向原始 JSON 的命令有意跳过横幅,以保持其对脚本的友好性。 ### 以 JSON 格式显示已保存的案例 ``` tez results --pretty ``` ### 渲染纯文本报告 ``` tez report --timeline-limit 15 ``` 时间轴过滤器示例: ``` tez report --event-type download --since 2026-04-13 tez report --domain mozilla --source firefox ``` ### 打开交互式时间轴查看器 ``` tez timeline --page-size 5 ``` 您也可以在此处使用相同的时间轴过滤器: ``` tez timeline --event-type visit --since 2026-04-13 --domain example.com ``` 控制键: - `n` 下一页 - `p` 上一页 - `q` 退出 ### 列出最近的案例 ``` tez cases --limit 10 ``` ## 交互式时间轴查看器 在键盘驱动的终端 UI 中打开已保存的案例时间轴: ``` python tools/view_timeline.py f8a7b87a846141d7a6fcf0d50d356d1b --page-size 5 ``` 控制键: - `n` 下一页 - `p` 上一页 - `q` 退出 查看器按从最新到最旧的顺序显示时间轴条目,并显示当前页码、总页数和可见条目范围。 ### 在需要时禁用横幅 ``` tez --no-banner report ``` ## 可选 API 如果您仍然希望使用旧的 Web/API 层进行测试或演示: ``` uvicorn app.main:app --reload ``` ## 注意事项 - v1 官方仅支持 raw/DD 镜像。 - 浏览器解析对于 Chrome、Edge、Firefox 和 Chromium 风格的 Brave 历史记录布局,目前以 Windows 优先。 - 注册表解析目前侧重于 NTUSER Wi-Fi 配置文件发现,以丰富取证信息。 - 如果 `PATH` 中缺少 Sleuth Kit,案例将被标记为 `failed`,并附带清晰的依赖项错误提示,而不是导致应用程序崩溃。
标签:API安全, AV绕过, FastAPI, HTTPS请求, HTTP工具, JSON输出, Python, Sleuth Kit, SQLite解析, Wi-Fi记录提取, Windows取证, 交互式时间线, 后渗透, 库, 应急响应, 攻击路径可视化, 数字取证, 数据提取, 无后门, 注册表分析, 浏览器取证, 磁盘镜像分析, 结构化数据, 网络安全, 网络安全审计, 网络活动重建, 自动化脚本, 逆向工具, 隐私保护, 黑客工具