p3n-c0/sacs-wep
GitHub: p3n-c0/sacs-wep
将 iOS WhatsApp ChatStorage.sqlite 数据库转换为 CSV 和 HTML 时间线报告的轻量级取证支持工具。
Stars: 0 | Forks: 0
# SACS WEP(SecureAfrica WhatsApp 证据处理器)
SACS WEP 是一个轻量级的取证支持工具,用于将提取的 iOS WhatsApp `ChatStorage.sqlite` 数据库处理为结构化的 CSV 输出和可读的 HTML 时间线。
它专为数字取证审查人员、网络犯罪调查人员、法律支持团队和处理 WhatsApp 证据的学生设计。
## 为什么存在这个工具
直接处理 WhatsApp SQLite 数据库可能既缓慢又容易出错。提取后,调查人员通常只能获得原始表(`ZWAMESSAGE`、`ZWACHATSESSION` 等)、不熟悉的字段名称以及无法直接理解的时间戳。
SACS WEP 提供了一种结构化的方法,将原始数据库记录转换为:
- 可读的时间线
- 有组织的消息导出
- 快速的聊天级别摘要
无需修改原始证据。
## 功能特点
- 处理 iOS WhatsApp `ChatStorage.sqlite`
- 创建带有哈希验证的工作副本
- 从 `ZWAMESSAGE` 提取完整消息记录
- 转换 Apple/Core Data 时间戳(2001 年基准)
- 支持时区偏移(例如,WAT 的 +01:00)
- 导出:
- 完整消息数据集(CSV)
- 聊天摘要(CSV)
- 选定的聊天时间线(CSV)
- 媒体相关记录(CSV)
- 生成 HTML 时间线报告
- 产生:
- 处理日志
- 哈希清单
- 数据库结构报告
## 快速开始
### 1. 准备您的证据文件夹
将提取的 WhatsApp 文件放在一个文件夹中。例如,C:\Users\YourName\Desktop\WhatsApp\ChatStorage.sqlite
- (可选)ChatStorage.sqlite-wal
- (可选)ChatStorage.sqlite-shm
### 2. 运行工具
python sacs_wep.py --input "C:\Users\YourName\Desktop\WhatsApp" --case-id "CASE-001"
重要提示:--input 参数必须指向文件夹,而不是 .sqlite 文件本身。
### 3. 可选:设置本地时区(尼日利亚/WAT)
python sacs_wep.py --input "C:\Users\YourName\Desktop\WhatsApp" --case-id "CASE-001" --timezone-offset "+01:00"
### 4. 可选:导出特定聊天
python sacs_wep.py --input "C:\Users\YourName\Desktop\WhatsApp" --case-id "CASE-002" --chat-filter "2348012345678" --timezone-offset "+01:00"
### 5. 可选:生成完整 HTML 报告(无记录限制)
python sacs_wep.py --input "C:\Users\YourName\Desktop\WhatsApp" --case-id "CASE-003" --report-limit 0
可选结构
示例输出
## 验证
SACS WEP 已根据真实的 WhatsApp 数据库数据进行测试。验证包括:
- 针对直接 SQL 查询的消息计数验证
- 时间戳转换检查(Apple 基准 → UTC → 本地时间)
- 方向字段验证(ZISFROMME)
- 消息文本比较
- 聊天摘要验证
- 选定聊天提取测试
- 哈希完整性检查
参见:VALIDATION_REPORT.md
## 局限性
SACS WEP 是一个取证支持工具,而非完整的取证套件。当前局限性包括:
- 媒体引用检测范围较广,可能包含系统/服务记录
- 聊天/联系人解析取决于可用的数据库字段
- WhatsApp 版本之间的架构差异可能影响字段映射
- 媒体文件提取和哈希尚未实现
- 目前不支持 Android WhatsApp 数据库
## 取证免责声明
SACS WEP:
- 不获取证据
- 不绕过加密或设备锁定
- 不恢复被覆盖的已删除数据
- 不证明作者身份或意图
所有输出必须结合以下内容进行审查:
- 原始证据
- 获取记录
- 哈希验证
- 审查人员分析
此工具协助分析,但不能替代专业取证判断。
## 要求
- Python 3.9+
- 无需外部库(仅使用标准库)
## 未来改进(v0.8.0)
- 改进的媒体检测逻辑
- 改进的聊天和联系人解析
- 输出文件哈希
- 架构适应性增强
- 媒体文件链接和哈希
## 作者
Ibrahim Sulaiman. A.
SACS (Nig) Ltd. 首席执行官
数字取证与网络犯罪调查
示例输出
## 验证
SACS WEP 已根据真实的 WhatsApp 数据库数据进行测试。验证包括:
- 针对直接 SQL 查询的消息计数验证
- 时间戳转换检查(Apple 基准 → UTC → 本地时间)
- 方向字段验证(ZISFROMME)
- 消息文本比较
- 聊天摘要验证
- 选定聊天提取测试
- 哈希完整性检查
参见:VALIDATION_REPORT.md
## 局限性
SACS WEP 是一个取证支持工具,而非完整的取证套件。当前局限性包括:
- 媒体引用检测范围较广,可能包含系统/服务记录
- 聊天/联系人解析取决于可用的数据库字段
- WhatsApp 版本之间的架构差异可能影响字段映射
- 媒体文件提取和哈希尚未实现
- 目前不支持 Android WhatsApp 数据库
## 取证免责声明
SACS WEP:
- 不获取证据
- 不绕过加密或设备锁定
- 不恢复被覆盖的已删除数据
- 不证明作者身份或意图
所有输出必须结合以下内容进行审查:
- 原始证据
- 获取记录
- 哈希验证
- 审查人员分析
此工具协助分析,但不能替代专业取证判断。
## 要求
- Python 3.9+
- 无需外部库(仅使用标准库)
## 未来改进(v0.8.0)
- 改进的媒体检测逻辑
- 改进的聊天和联系人解析
- 输出文件哈希
- 架构适应性增强
- 媒体文件链接和哈希
## 作者
Ibrahim Sulaiman. A.
SACS (Nig) Ltd. 首席执行官
数字取证与网络犯罪调查标签:ChatStorage.sqlite, HTML报告, iOS取证, SQLite分析, WhatsApp取证, ZWAMESSAGE, 取证报告生成, 取证自动化, 司法取证, 哈希验证, 数字取证, 数据库取证, 数据恢复, 时间戳转换, 法证工具, 电子证据, 移动设备取证, 网络犯罪调查, 自动化脚本, 证据处理, 证据完整性