bebaZN/IOS-ARTIFACTS-ANALYZER
GitHub: bebaZN/IOS-ARTIFACTS-ANALYZER
一个基于Python的数字取证初筛工具,用于从iOS设备备份中提取并解析多种关键取证痕迹,生成可读报告。
Stars: 0 | Forks: 0
# iOS 取证分析器
### 数字取证学期项目
一个基于Python的取证初筛工具,用于从iOS设备备份中提取并报告取证痕迹。
## 📁 项目结构
```
ios_analyzer/
├── analyzer.py ← Main CLI entry point
├── report_generator.py ← HTML report builder
├── demo_mode.py ← Test without a real device
├── requirements.txt
└── extractors/
├── backup_parser.py ← Parses Manifest.db + Info.plist
├── sms_extractor.py ← SMS & iMessage (sms.db)
├── call_extractor.py ← Call logs (CallHistory.storedata)
├── contacts_extractor.py← Contacts (AddressBook.sqlitedb)
├── safari_extractor.py ← Browser history (History.db)
├── photos_extractor.py ← Photos + EXIF (Photos.sqlite)
├── apps_extractor.py ← Installed apps (Info.plist)
└── location_extractor.py← GPS history (cache_encryptedA.db)
```
## ⚡ 快速开始 (演示 — 无需真实iPhone)
```
# 1. 安装依赖项
pip install exifread iphone-backup-decrypt Pillow
# 2. 使用合成数据运行演示
python demo_mode.py
# 3. 打开报告
open demo_output/forensic_report.html # macOS
start demo_output\forensic_report.html # Windows
```
## 📱 完整使用流程 (使用真实iPhone备份)
### 步骤一 — 创建iOS备份
**选项A: iTunes / Finder (推荐)**
1. 通过USB将iPhone连接到PC/Mac
2. 打开iTunes (Windows) 或 Finder (macOS Ventura及以上)
3. 点击您的设备 → "立即备份"
4. 非加密备份:密码留空
5. 加密备份:设置一个密码(短信/通讯录/通话记录需要此密码)
**备份位置:**
- **Windows:** `C:\Users\\AppData\Roaming\Apple Computer\MobileSync\Backup\`
- **macOS:** `~/Library/Application Support/MobileSync/Backup/`
每个备份是一个以长UUID命名的文件夹,例如:
`00008110-001234567890ABCD`
**选项B: libimobiledevice (适用于Linux/任何操作系统)**
```
# 安装
sudo apt install libimobiledevice-utils # Ubuntu/Debian
brew install libimobiledevice # macOS
# 创建备份
idevicebackup2 backup --full /path/to/backup_folder
```
### 步骤二 — 安装依赖项
```
pip install exifread iphone-backup-decrypt Pillow
```
### 步骤三 — 运行分析器
```
# 未加密备份
python analyzer.py /path/to/backup --output ./case_output --case CASE-2024-001
# 加密备份
python analyzer.py /path/to/backup --output ./case_output --password yourpass --case CASE-2024-001
```
### 步骤四 — 查看报告
在任意浏览器中打开 `case_output/forensic_report.html`。
## 🔍 提取的取证痕迹
| 痕迹 | 源文件 | 记录数量 |
|-------------------|------------------------------------|----------|
| 短信 / iMessage | `sms.db` | 最近500条 |
| 通话记录 | `CallHistory.storedata` | 最近300条 |
| 通讯录 | `AddressBook.sqlitedb` | 最近500条 |
| Safari 历史记录 | `History.db` | 最近500条 |
| 照片 + EXIF | `Photos.sqlite` | 最近300张 |
| 已安装应用 | `Info.plist` | 全部 |
| 位置历史 | `cache_encryptedA.db` | 最近200条 |
## 🔐 取证最佳实践 (用于您的报告)
1. **切勿在原始备份上操作** — 首先复制一份
2. **哈希验证** — 本工具会在操作前后自动计算SHA-256值
3. **监管链** — 在报告头部有详细记录
4. **只读模式** — 本工具绝不会修改备份内容
## ⚠️ 法律声明
本工具仅用于**授权的取证检验**。
请仅分析您拥有或已获明确书面许可的设备/备份。
未经授权访问设备数据可能违反计算机欺诈相关法律。
## 📦 依赖项
| 包名 | 用途 |
|------|------|
| `exifread` | 从图片中提取EXIF元数据 |
| `iphone-backup-decrypt` | 解密加密的iOS备份 |
| `Pillow` | 图像处理 |
| `sqlite3` | Python内置库 — 解析iOS数据库 |
| `plistlib` | Python内置库 — 解析 .plist 文件 |
| Leaflet.js | 交互式GPS地图 (从CDN加载) |
标签:HTML报告生成, iOS取证, iOS备份工具, Python编程, SQLite数据库, 位置数据提取, 内核监控, 取证分诊, 后端开发, 备份分析, 多模态安全, 应用列表提取, 数字取证, 数字取证工具, 数据恢复, 数据提取, 数据解析, 浏览器历史提取, 照片分析, 电子证据, 短信提取, 移动取证, 联系人提取, 自动化脚本, 逆向工具, 通话记录提取