JeeveshPandey29/ForensicOps-CPP

GitHub: JeeveshPandey29/ForensicOps-CPP

一款模块化的 C++ 数字取证命令行工具,将磁盘镜像、哈希校验、文件完整性监控、元数据提取与时间线生成整合于一体,帮助取证人员高效完成证据采集和完整性分析。

Stars: 0 | Forks: 0

# 取证完整性分析器 一款为数字取证调查设计的模块化 C++ 命令行应用程序。它将磁盘镜像、加密哈希、文件完整性监控、元数据提取和时间线生成整合到了一个套件中。 ## 功能特性 - **磁盘镜像获取**:将磁盘或文件逐位复制为 RAW `.dd` 格式。 - **哈希生成器**:使用 OpenSSL 生成 MD5 和 SHA-256 哈希,用于文件和镜像的完整性校验。 - **文件完整性监控 (FIM)**:根据基线监控目录的更改(创建、删除、修改)。 - **元数据提取器**:提取深层文件属性,包括 MAC 时间戳(修改、访问、创建)、大小和文件权限。 - **时间线生成器**:将 FIM 日志和元数据合并为按时间排序的时间线 CSV 报告。 ## 🛠️ 前置条件与构建 本项目使用 **CMake** 作为其构建系统,并需要 **OpenSSL** 进行加密哈希处理。 ### Windows 设置 1. **安装 CMake**:从 [cmake.org](https://cmake.org/download/) 下载。 2. **安装 OpenSSL**: - 在 Windows 上最简单的方法是使用 [vcpkg](https://github.com/microsoft/vcpkg) 或下载预编译的二进制文件。 - 如果使用 `vcpkg`,请运行以下命令安装 OpenSSL:`vcpkg install openssl:x64-windows` 3. **构建项目**: 在项目目录(`d:\project c++`)中打开终端并运行: mkdir build cd build # 如果使用 vcpkg,请使用 toolchain 标志。否则,只需运行:cmake .. cmake .. -DCMAKE_TOOLCHAIN_FILE=[path\to\vcpkg]\scripts\buildsystems\vcpkg.cmake # 编译代码 cmake --build . *(注意:编译后的可执行文件 `ForensicIntegrityAnalyzer.exe` 将位于 `build/Debug` 或 `build/Release` 文件夹中,具体取决于您的编译器)。* ## 🚀 如何运行应用程序 该应用程序通过命令行运行。以下是使用各个特定模块的命令。 ### 1. 获取磁盘镜像 从源文件或驱动器创建 `.dd` 原始镜像。 ``` ForensicIntegrityAnalyzer --acquire # 示例:ForensicIntegrityAnalyzer --acquire \\.\PhysicalDrive0 backup.dd ``` ### 2. 生成文件哈希 计算文件或已获取的 `.dd` 镜像的 MD5 和 SHA-256 哈希值。 ``` ForensicIntegrityAnalyzer --hash # 示例:ForensicIntegrityAnalyzer --hash backup.dd ``` ### 3. 文件完整性监控 (FIM) **步骤 A:创建基线** 扫描目录并将当前状态(文件路径及其哈希值)保存到 CSV 文件中。 ``` ForensicIntegrityAnalyzer --fim-baseline # 示例:ForensicIntegrityAnalyzer --fim-baseline C:\important_data baseline.csv ``` **步骤 B:检查完整性** 将当前目录与之前保存的基线进行比较,以查找修改、删除和新增内容。(这些事件将被记录到 `analyzer.log` 中)。 ``` ForensicIntegrityAnalyzer --fim-check # 示例:ForensicIntegrityAnalyzer --fim-check C:\important_data baseline.csv ``` ### 4. 提取元数据 提取目录中所有文件的 MAC 时间戳(修改、访问、创建)和大小,并输出 CSV 报告。 ``` ForensicIntegrityAnalyzer --metadata # 示例:ForensicIntegrityAnalyzer --metadata C:\important_data report.csv ``` ### 5. 生成时间线 将 FIM 记录的事件与目录的时间戳元数据结合,创建按时间排序的主时间线 CSV。 ``` ForensicIntegrityAnalyzer --timeline # 示例:ForensicIntegrityAnalyzer --timeline analyzer.log C:\important_data timeline.csv ```
标签:Bash脚本, C++, CMake, dd镜像, HTTP工具, MAC时间戳, MD5, OpenSSL, ProjectDiscovery, SHA-256, x64dbg, 元数据提取, 加密哈希, 原始磁盘拷贝, 域渗透, 安全合规, 安全测试工具, 数字取证, 数据保护, 数据擦除, 电子数据取证, 磁盘镜像, 网络代理, 网络安全, 网络安全审计, 自动化脚本, 跨平台开发, 进程保护, 隐私保护