cchokaaa/malware-hash-scanner

GitHub: cchokaaa/malware-hash-scanner

集成 VirusTotal 威胁情报的恶意软件哈希扫描工具,支持批量文件扫描、威胁评级、历史追踪与多格式报告导出。

Stars: 1 | Forks: 0

# Malware Hash Scanner Pro 一款专业的恶意软件分析工具,支持计算加密哈希、查询 VirusTotal 获取威胁情报、验证文件类型、追踪历史扫描记录,并生成结构化的 JSON 和 PDF 报告。 ## 功能 ### 核心能力 - 多哈希计算(MD5、SHA1、SHA256) - VirusTotal API 集成 - 威胁等级分类 - 批量目录扫描 - JSON 报告导出 ### 高级功能 - 使用文件签名分析验证文件类型 - 历史扫描追踪 - PDF 报告生成 - 结构化审计风格报告 ## 项目结构 ``` malware-hash-scanner/ │ ├── main.py ├── file_hasher.py ├── threat_checker.py ├── file_type_checker.py ├── history_tracker.py ├── report_generator.py │ ├── README.md ├── requirements.txt ├── .gitignore ├── LICENSE │ ├── reports/ │ └── (generated reports) │ ├── history/ │ └── scan_history.json │ └── sample/ └── suspicious_files/ └── test.txt ``` ## 安装说明 ### 1. 克隆仓库 ``` git clone https://github.com/cchokaaa/malware-hash-scanner.git cd malware-hash-scanner ``` ### 2. 创建虚拟环境 ``` python -m venv venv ``` ### 3. 激活虚拟环境 #### Windows PowerShell ``` venv\Scripts\Activate.ps1 ``` #### Git Bash ``` source venv/Scripts/activate ``` ### 4. 安装依赖 ``` pip install -r requirements.txt ``` ## VirusTotal API 设置 本项目使用 VirusTotal API 根据文件的 SHA256 哈希检索恶意软件检测统计数据。 在此创建免费账户: https://www.virustotal.com/ 生成 API 密钥并将其配置为环境变量。 ### PowerShell ``` $env:VT_API_KEY="your_api_key_here" ``` ### Git Bash ``` export VT_API_KEY="your_api_key_here" ``` ## 使用说明 ### 扫描单个文件 ``` python main.py sample/suspicious_files/test.txt ``` ### 导出 JSON 报告 ``` python main.py sample/suspicious_files/test.txt --json reports/report.json ``` ### 导出 PDF 报告 ``` python main.py sample/suspicious_files/test.txt --pdf reports/report.pdf ``` ### 同时导出 JSON 和 PDF 报告 ``` python main.py sample/suspicious_files/test.txt --json reports/report.json --pdf reports/report.pdf ``` ### 批量扫描目录 ``` python main.py sample/suspicious_files ``` ## 示例输出 ``` ============================================================ file_name: test.txt file_path: D:\malware-hash-scanner\sample\suspicious_files\test.txt file_size: 43 md5: a123f7b957092282734d4a91fd193c05 sha1: 77b56de4e98c1a0889224fba1a506a2a870b72f7 sha256: adfa5212baafb6f3b92ad0ed5e093601bcad32d1f29694f66214447b2c8a23eb detected_type: unknown extension_matches: True suspicious: False malicious_count: 0 threat_level: Low ============================================================ ``` ## 威胁等级分类 | 恶意检测次数 | 威胁等级 | |---------------------:|:------------| | 0 | 低(Low) | | 1–3 | 中(Medium) | | 4–10 | 高(High) | | >10 | 严重(Critical) | ## 工作原理 1. **加密哈希计算** 计算每个文件的 MD5、SHA1 和 SHA256 哈希。 2. **文件类型验证** 使用 magic-byte 分析检测扩展名伪造。 3. **VirusTotal 查询** 将 SHA256 哈希发送至 VirusTotal 并检索恶意软件检测统计数据。 4. **威胁评分** 将恶意检测结果映射至低、中、高或严重等级。 5. **历史记录追踪** 将每次扫描结果存储在 `history/scan_history.json` 中。 6. **报告生成** 将扫描结果导出为 JSON 和 PDF 格式。 ## JSON 报告结构示例 ``` { "file_name": "test.txt", "file_path": "D:/malware-hash-scanner/sample/suspicious_files/test.txt", "file_size": 43, "md5": "...", "sha1": "...", "sha256": "...", "detected_type": "unknown", "extension_matches": true, "suspicious": false, "malicious_count": 0, "threat_level": "Low" } ``` ## 涉及的安全概念 - 加密哈希 - 威胁情报集成 - 文件签名分析 - 恶意软件分类筛选 - 风险评分 - 历史审计追踪 - 自动化报告 ## 许可证 本项目基于 MIT 许可证授权。 详见 `LICENSE` 文件。 ## 作者 cchokaaa ## 免责声明 本项目仅供教育、研究和防御性安全目的使用。 用户有责任遵守所有适用的法律、法规和第三方服务条款。
标签:Ask搜索, DAST, Homebrew安装, Python, VirusTotal, 威胁情报, 开发者工具, 恶意软件分析, 文件哈希校验, 无后门, 逆向工具