jacobecontreras/suiteDFIR

GitHub: jacobecontreras/suiteDFIR

suiteDFIR 是一款本地化的数字取证套件,整合 iOS/Android 设备提取、LEAPP 痕迹解析、时间轴重建与地理空间可视化于一体。

Stars: 8 | Forks: 3

![macOS](https://img.shields.io/badge/macOS-000000?style=flat-square&logo=apple&logoColor=white) ![Windows](https://img.shields.io/badge/Windows-0078D6?style=flat-square&logo=windows&logoColor=white) ![Linux](https://img.shields.io/badge/Linux-FCC624?style=flat-square&logo=linux&logoColor=black) ![suiteDFIR 横幅](https://static.pigsec.cn/wp-content/uploads/repos/cas/be/be8f822a49a6a0a1da534f17e5c52abfff18d59a879b6f21838edf89afd11577.webp) suiteDFIR 是一款专为速度、易用性和隐私而构建的取证提取与分析套件。 **共同开发者**:[Slay3r00](https://github.com/Slay3r00) ## 功能 - **设备提取**:通过 USB 使用 libimobiledevice 提取 iOS 备份。支持加密和非加密备份,并提供进度跟踪。 - **LEAPP 分析**:集成了 iLEAPP (iOS) 和 aLEAPP (Android) 取证解析器以提取数字痕迹。 - **时间轴事件**:将来自多个数据源的数据重建为可搜索的按时间顺序排列的视图。 - **地理空间查看器**:自动从 LEAPP 报告中提取 KML 文件。具备图层切换(卫星、混合、默认)、自定义 KML 导入以及位置搜索标定功能。 - **设置管理**:在此处设置并存储 Google Maps API key,以便访问地理空间页面。 - **私密与本地化**:所有数据处理均在您的本地机器上完成。取证数据绝不会被发送到外部服务器。 ## 功能展示 #### 仪表盘 ![仪表盘](https://static.pigsec.cn/wp-content/uploads/repos/cas/ad/ad8093bcac5aea1fe8634e86966e3cbc15a292cd08e4c8a0ba27784d961221a9.png) #### 备份提取 ![备份](https://static.pigsec.cn/wp-content/uploads/repos/cas/95/951e41e91564db2ec5e7945965be9bf2876cb171806d64bf2508201d903c182e.png) #### 痕迹分析 ![分析](https://static.pigsec.cn/wp-content/uploads/repos/cas/43/436be82ad64e66c096e22dd4fa0c11874147bfc2a754d1eb7314da443cd23fcb.png) #### 时间轴事件 ![时间轴](https://static.pigsec.cn/wp-content/uploads/repos/cas/0a/0a92fd5685364d1e7da98f049a829423cc3d56931966d94e47f02850b1088260.png) #### 位置地图 ![地图](https://static.pigsec.cn/wp-content/uploads/repos/cas/bd/bd1915e1852aad716f47437af0587fd3b97e0217f5cffc22b35750de08370939.png) #### 嵌入式 LEAPP 报告 ![报告](https://static.pigsec.cn/wp-content/uploads/repos/cas/c5/c50bf24a11188749ea9054e42ce6018b69766424c136e5ccd2d10dda04bb6a4b.png) ## 隐私与数据本地化 suiteDFIR 旨在优先考虑您的隐私和取证数据的安全性。了解数据在何处保持本地化以及何时建立外部连接,对于维护取证完整性至关重要。 ### 保持本地化的内容 - **取证提取**:所有设备镜像和备份提取均通过 USB 在本地执行。 - **痕迹解析**:iLEAPP 和 aLEAPP 引擎完全在您的本地环境中运行。 - **案件数据库**:所有调查数据、元数据和案件文件均存储在您的本地磁盘上。 - **分析与时间轴**:数据关联和时间轴重建 100% 离线进行。 ### 非本地化依赖项 虽然处理过程是在本地进行的,但某些 UI 和实用功能需要互联网连接: - **地图页面**:渲染地图图块和图层需要连接到服务提供商(Google, Carto, OpenStreetMap)。 - **位置搜索**:地理编码和地址搜索是通过外部 API 调用(例如 Google Maps API)执行的。 ## 快速开始 1. **启动**:在您的工作站上打开 suiteDFIR。 2. **创建案件**:创建一个新案件并添加相关的调查详情。 3. **连接**:导航至 **Backups** 页面,并通过 USB 连接目标设备。 4. **提取**:启动本地提取以对设备进行镜像。 5. **分析**:导航至 **Analysis** 页面以处理提取的数据。 6. **时间轴**:导航至 **Timeline** 页面以查看重建后的事件历史。 7. **地图**:导航至 **Map** 页面以可视化地理数据。 ## 技术栈 - **桌面端**:[Electron](https://www.electronjs.org/) - **前端**:[React](https://reactjs.org/), [TypeScript](https://www.typescriptlang.org/), [Tailwind CSS](https://tailwindcss.com/) - **后端**:[Python](https://www.python.org/), [FastAPI](https://fastapi.tiangolo.com/), [Pydantic](https://docs.pydantic.dev/) - **构建**:[PyInstaller](https://pyinstaller.org/), [Vite](https://vitejs.dev/) ## 技术支持 suiteDFIR 站在巨人的肩膀上。有关完整的版权归属和许可证文本,请参阅 [THIRD-PARTY-NOTICES.md](./THIRD-PARTY-NOTICES.md)。 - [iLEAPP](https://github.com/abrignoni/iLEAPP) & [aLEAPP](https://github.com/abrignoni/aLEAPP) - [libimobiledevice](https://libimobiledevice.org/)(基于 LGPL 2.1+ 许可证授权) ## 许可证 本项目基于 **Apache License 2.0** 授权。有关详细信息,请参阅 [LICENSE](./LICENSE) 和 [NOTICE](./NOTICE) 文件。 ## 开发 ### 环境设置 1. **Node.js**:确保已安装 Node.js 18.12+(推荐使用 Node 24 LTS;CI 运行在 24 上)。 2. **Yarn**:本仓库通过 `package.json` 中的 `packageManager` 字段固定了 Yarn 版本, 并期望由 [corepack](https://github.com/nodejs/corepack) 来提供: npm uninstall -g yarn # 首先移除任何全局安装的 Yarn 1.x corepack enable # 使 `yarn` 遵循固定的版本 如果找不到 `corepack`,说明它是缺失的,而不是损坏了。常见原因有两种: - **发行版打包的 Node 遗漏了它。** 无论 Node 版本如何,Debian/Ubuntu 都会从其 `nodejs` 包中剥离 corepack(因为它会在运行时获取二进制文件, 这违反了它们的策略)。Ubuntu 24.04 的 `nodejs 18.19.1+dfsg` 没有 corepack,尽管上游 Node 18 捆绑了它。请从 [NodeSource](https://github.com/nodesource/distributions) 或 `nvm` 安装 Node。 - **Node 25+ 不再捆绑它** — Node TSC 投票决定停止分发它。 Node 24 及更早版本仍然包含它。 在以上任一情况下: npm install -g corepack && corepack enable 确认您获得的是固定版本 — **而不是** 1.22.x: yarn --version 全局通过 npm 安装的 Yarn 1 会忽略 `packageManager`,并会将 `yarn.lock` 重写为不兼容的 v1 格式。请参阅下文的 *Yarn 版本*。 3. **Python**:后端取证引擎需要 Python 3.9+。 4. **虚拟环境**:初始化 Python 环境: cd backend python3 -m venv venv source venv/bin/activate pip install -r requirements.txt ### 安装 为根目录、前端和 electron 层安装所有依赖项: ``` yarn install:all ``` ### Yarn 版本 锁文件采用 Yarn 4 (Berry) 格式 — 以 `__metadata: version: 10` 开头。 Yarn 1 (Classic) 会写入一种完全不同的 `# yarn lockfile v1` 格式,因此如果 贡献者使用了错误的主版本,将会在他们的首次 `yarn install` 时静默重写整个锁文件, 导致产生无法审查的 diff 和无法解决的冲突。 ### 本地开发 启动并发开发环境(Vite + Electron): ``` yarn dev:electron ``` ### 构建流程 suiteDFIR 采用多阶段构建流程来打包 Python 环境、Vite 前端和 Electron 外壳。 #### 桌面应用程序 为您当前的平台构建完整的生产环境包: - **macOS**:`yarn build:mac` - **Windows**:`yarn build:win` - **Linux**:`yarn build:linux` #### 组件构建 - **仅后端**:`yarn build:backend`(通过 PyInstaller 打包 Python) - **仅前端**:`yarn build:frontend`(构建静态 Vite 资产) ## 许可证 本项目基于 **Apache License 2.0** 授权。有关详细信息,请参阅 [LICENSE](./LICENSE) 和 [NOTICE](./NOTICE) 文件。 第三方组件受其各自的许可证约束。有关完整的版权归属,请参阅 [THIRD-PARTY-NOTICES.md](./THIRD-PARTY-NOTICES.md)。
标签:漏洞挖掘, 逆向工具