redzeptech/VoxTrace-DFIR

GitHub: redzeptech/VoxTrace-DFIR

集成音频取证与 Windows 主机取证的全能型 DFIR 时间线重建框架,支持多语言语音转录和取证证据关联分析。

Stars: 0 | Forks: 0

# VoxTrace-DFIR v0.3.0 **用于 DFIR 调查的音频 + 系统取证框架** VoxTrace-DFIR 最初是一个多语种 **音/视频证据处理** 工具包。 自 **v0.3.0** 起,它还提供了一个 **Windows 系统取证** 层(EVTX/MFT + 关联分析),使其转变为一个混合 DFIR 框架,可在单一工作流中同时支持 **音频取证** 和 **主机取证分析**。 ## 为什么开发此工具 / Neden var? 在调查过程中,分析人员经常遇到: - Telegram 语音消息 - WhatsApp 语音备注 - 宣传视频 - 外语 VoIP 录音 - 被扣押的多媒体设备 然而,调查人员往往不懂证据中所使用的语言。 VoxTrace-DFIR 允许分析人员 **在不懂语言的情况下理解语音内容**。 与此同时,许多案件需要快速的 **主机取证** 和 **基于取证文件的时间线**。v0.3.0 增加了一个模块化收集引擎,用于提取/解析关键的 Windows 取证文件并生成统一的运行报告。 ## 新功能 (v0.3.0) / Yeni Özellikler - **混合分析 (Live/Path)**:在 live host (`--live`) 上运行收集器,或针对离线取证文件夹 (`--path`) 运行 - **高级取证解析器 (EVTX/MFT)**:面向时间线分析的事件日志 + MFT 解析 - **模块化插件系统**:在 `src/modules/` 下放置收集器(动态发现 + 每模块参数) ## 核心能力 / Temel Yetenekler - 自动音频提取 (FFmpeg) - GPU 加速语音转文字转录 (Whisper CUDA) - 翻译流水线 (TXT/SRT,保留时间戳) - 字幕 (SRT) 翻译并保留时间戳 - 证据处理日志 - 批量处理支持 - 通过插件收集器进行 Windows 取证分析 (EVTX/MFT) - 统一时间线构建器 (EVTX + MFT 关联) ## 工作流 / İş Akışı (ASCII) ``` ┌───────────────────────────────┐ │ Inputs/ │ │ Audio/Video Evidence Files │ └───────────────┬───────────────┘ │ │ ┌────────────────▼────────────────┐ │ Media Pipeline │ │ FFmpeg → Whisper → Translation │ └────────────────┬────────────────┘ │ Outputs// (TXT/SRT/Logs) │ │ ┌────────────────▼────────────────┐ │ Artifact Pipeline (v0.3.0) │ │ --live or --path collectors │ │ EVTX / MFT → Correlation → TL │ └────────────────┬────────────────┘ │ Logs/*.json + PDF report ``` ## 输出 / Çıktılar 对于每个媒体文件,工具会生成: - 原始转录文本 - 翻译转录文本 - 原始字幕 - 翻译字幕 - 处理日志 - 可选的针对提取 IP/哈希的威胁情报报告 对于取证分析运行(v0.3.0 收集引擎),工具会生成: - 统一的运行报告 JSON (`Logs/voxtrace_run__.json`) - 位于 `Outputs/_/modules//` 下的各模块取证文件 - 可选的统一时间线 (`timeline_builder`),格式为 JSONL/CSV ## 系统要求 / Gereksinimler - Windows 10 / 11 - Python 3.10+ - FFmpeg 已安装并添加到 PATH - Whisper 已安装 - NVIDIA GPU(推荐) - `pip install -r requirements.txt` - 对于旧版翻译脚本 (TXT/SRT):`pip install -r requirements-media.txt` ## 技术栈 / Teknik Altyapı - **媒体**: - FFmpeg 用于音频提取/标准化 - OpenAI Whisper 用于语音转文字(支持 CUDA) - 翻译脚本 (TXT/SRT) 使用 `deep-translator`(见 `requirements-media.txt`) - **取证分析 (v0.3.0)**: - **EVTX**:内置收集器解析 `.evtx`,并可在 live 模式下使用 Windows 原生 `wevtutil` - 可选高性能 **基于 Rust 的 EVTX 引擎**:`evtx_dump` (Rust) / `pyevtx-rs` 绑定(若外部安装)。这与插件设计兼容,可作为替代后端。 - **MFT**: - 通过 MFT 解析器进行离线解析(分块 + 多进程汇总) - Live 获取选项: - 基于 VSS 的副本(首选时) - 低级原始卷访问 (`\\.\C:`) 以在 Windows 上提取 `$MFT`(需要管理员权限) ## 混合收集引擎 / Hibrit Collector Engine (Live Triage + Path Analysis) VoxTrace-DFIR 现在在 `src/` 下包含一个基于插件的收集引擎: - **Live Triage**:`python -m src.main --live` - **Path 分析**:`python -m src.main --path ` ### 用法 / Kullanım (`--live` / `--path`) ``` # 列出已发现的 collectors python -m src.main --live --list-modules # 实时 triage 运行(写入统一 JSON 报告) python -m src.main --live --case mycase --out Logs\run.json --output-dir Outputs\triage_out # 离线/路径分析运行 python -m src.main --path C:\triage --case mycase --out Logs\run.json --output-dir Outputs\triage_out ``` 常用命令: - 列出模块: - `python -m src.main --live --list-modules` - 运行选定模块: - `python -m src.main --live --modules system_info --out Logs\\run.json --output-dir Outputs\\triage_out` 模块参数(高级): - 传递可重复的 `--param module.key=value` - 示例 (EVTX): - `python -m src.main --live --modules event_log_collector --param event_log_collector.channels=System,Application --param event_log_collector.limit=200 --param event_log_collector.inline_records=false --param event_log_collector.prefer_wevtutil=true` - 事件 ID 过滤示例 (Logon/Process Creation): - `python -m src.main --live --modules event_log_collector --param event_log_collector.channels=Security --param event_log_collector.event_ids=4624,4688 --param event_log_collector.prefer_wevtutil=true --param event_log_collector.inline_records=false` - 注意:Security 通道通常需要以管理员身份运行 shell;否则可能会看到 "access denied"。 示例 (MFT): - Path 模式(已复制的 `$MFT`): - `python -m src.main --path C:\\triage\\$MFT --modules mft_parser --param mft_parser.profile=quick --param mft_parser.timestomp_threshold_seconds=86400 --param mft_parser.write_csv=true` - Live 模式(VSS 快照;需要管理员): - `python -m src.main --live --modules mft_parser --param mft_parser.drive=C --param mft_parser.vss_cleanup=true` 示例 (统一时间线): - 运行 EVTX + MFT 然后构建合并的时间线: - `python -m src.main --live --modules event_log_collector,mft_parser,timeline_builder --param event_log_collector.channels=Security --param event_log_collector.event_ids=4624,4688 --param event_log_collector.prefer_wevtutil=true --param event_log_collector.inline_records=false --param timeline_builder.window_seconds=300` MFT 速度调优: - 多进程汇总批次(默认每个任务 100,000 条记录): - `--param mft_parser.multiprocessing=true --param mft_parser.mp_records_per_task=100000 --param mft_parser.mp_workers=8 --param mft_parser.process_chunk_files_limit=0` 所有模块输出将聚合为具有稳定 Schema 的单个 JSON 报告。 ## MFT Collector (原始磁盘) - Windows `mft_collector` 可以通过原始卷访问提取 `$MFT`(需要管理员权限): - Live: - `python -m src.main --live --modules mft_collector --param mft_collector.drive=C --param mft_collector.max_bytes=1073741824 --param mft_collector.format=csv` - Path(已复制的 `$MFT`): - `python -m src.main --path C:\\triage\\$MFT --modules mft_collector --param mft_collector.format=csv` ## 媒体处理 (旧版 Runner) / Ses İşleme (Eski Runner) 1. 将证据文件放入 `Inputs/` 2. 运行: tools\calistir.bat 3. 结果将出现在 `Outputs//` ## 威胁情报 - 可选 `threat_intel.py` 模块扫描生成的输出/日志以提取: - IPv4 地址 - 文件哈希 (MD5/SHA1/SHA256) 然后查询 VirusTotal API v3 进行快速信誉检查。 ### 在处理过程中启用 - 设置环境变量: - `VOXTRACE_THREAT_INTEL=1` - `VT_API_KEY=` Runner 将在 `Logs/` 下为每个处理过的文件创建 JSON 报告。 ### 手动运行 示例: - 扫描 `Outputs/` 下的所有内容: - `python threat_intel.py Outputs` - 扫描一个特定的输出文件夹并写入报告: - `python threat_intel.py Outputs\\some_file --out Logs\\threat_intel.json` 注意: - 公共 VirusTotal API 有速率限制;默认请求间隔约为 16 秒。 - 您可以使用 `VT_REQ_INTERVAL_SECONDS` 和 `VOXTRACE_THREAT_INTEL_CONCURRENCY` 进行调整。 - 默认情况下会与 JSON 一起生成 CSV 输出(或使用 `--out-csv`)。 ## 报告引擎 (PDF) - 可选 `reporting_engine.py` 模块根据以下内容生成专业的 PDF 报告: - `Outputs//` 下的输出取证文件 - 可选的来自 `Logs/threat_intel_*.json` 的威胁情报 JSON - 可选的运行日志 `Logs/run_*.log` ### 在处理过程中启用 - 设置环境变量: - `VOXTRACE_REPORT=1` 如果同时启用了威胁情报,PDF 将包含 VirusTotal 汇总表。 ### 手动运行 - 为一个输出文件夹创建报告: - `python reporting_engine.py Outputs\\some_file --run-log Logs\\run_xxx.log --threat-intel-json Logs\\threat_intel_xxx.json --out Logs\\report.pdf` ## 重要提示 **请勿**将实际证据文件上传到 GitHub。 此存储库特意忽略了: - Inputs/ - Outputs/ - Logs/ - 媒体文件 ## 法律免责声明 此工具仅供合法的研究、教育和合法的数字取证调查使用。 用户需自行遵守当地法律和组织政策。 ## 作者 Recep Şenel 独立 DFIR & Windows 取证分析师 ## 演示 ### 处理中 ![Processing](https://raw.githubusercontent.com/redzeptech/VoxTrace-DFIR/main/docs/screenshot1.png) ### 生成输出 ![Output](https://raw.githubusercontent.com/redzeptech/VoxTrace-DFIR/main/docs/screenshot2.png)
标签:CUDA加速, EVTX分析, FFmpeg, HTTPS请求, HTTP工具, MFT解析, Python, Vectored Exception Handling, Whisper, Windows取证, 主机取证, 可视化界面, 域渗透, 多语言翻译, 子域名变形, 安全调查, 库, 应急响应, 情报分析, 数字取证, 无后门, 时间线重构, 电子数据取证, 网络诊断, 自动化报告, 自动化脚本, 自动转录, 证据固定, 语音识别, 语音转文字, 逆向工具, 音频取证