amarnathmohan9010/MalwareMind-AI

GitHub: amarnathmohan9010/MalwareMind-AI

一款基于 FastAPI 的自动化静态恶意软件分析平台,通过整合 PE 解析、YARA 扫描、熵分析和 VirusTotal 查询,为安全分析师提供快速的风险评分与调查报告。

Stars: 0 | Forks: 0

# 🛡️ MalwareMind AI ## 基于 AI 的恶意软件分析与威胁情报平台

![Python](https://img.shields.io/badge/Python-3.11+-blue) ![FastAPI](https://img.shields.io/badge/FastAPI-REST_API-green) ![Ubuntu](https://img.shields.io/badge/Ubuntu-24.04%2B-orange) ![License](https://img.shields.io/badge/License-MIT-red) ![Cybersecurity](https://img.shields.io/badge/Cybersecurity-Malware_Analysis-black)

# 📖 简介 MalwareMind AI 是一个现代化的网络安全平台,旨在自动化静态恶意软件分析和威胁情报收集。它通过单个 REST API 对可疑文件执行多项安全检查,从而协助安全运营中心 (SOC) 分析师、恶意软件研究人员、事件响应者和网络安全学生。 该项目将恶意软件分析、YARA 检测、威胁情报、风险评分和自动化报告整合到一个平台中。 MalwareMind AI 不再需要使用多个安全工具手动分析文件,而是自动执行整个工作流程,并在几秒钟内生成调查报告。 # 🎯 项目目标 MalwareMind AI 的主要目标是: * 自动化恶意软件分诊。 * 缩短调查时间。 * 检测可疑的 Windows 可执行文件。 * 整合外部威胁情报。 * 为分析师提供风险评分。 * 自动生成调查报告。 * 作为一个教育性的恶意软件分析平台。 # 🚀 主要功能 ## 文件分析 * 安全的文件上传 * 生成 SHA256 哈希 * 生成 MD5(可选) * 文件元数据提取 * 文件大小检测 * 扩展名检测 * MIME 类型检测 ## 静态恶意软件分析 * PE 头分析 * 节区分析 * 导入表分析 * 导出表分析 * 入口点检测 * 编译时间戳 * DLL 检测 * 资源分析 ## 恶意软件检测 * YARA 规则匹配 * 可疑 API 检测 * 加壳文件检测 * 熵分析 * 字符串提取 ## 威胁情报 * VirusTotal 哈希查询 * 检出率 * 信誉信息 * 已知恶意软件检测 ## 风险引擎 该平台使用多个指标计算动态恶意软件评分。 示例: | 特征 | 评分 | | -------------------- | ----- | | 高熵值 (High Entropy) | +20 | | YARA 匹配 | +25 | | 可疑 API (Suspicious APIs) | +20 | | VirusTotal 标记为恶意 | +25 | | 可疑字符串 (Suspicious Strings) | +10 | 最终得分: ``` 0-25 Low 26-50 Medium 51-75 High 76-100 Critical ``` # 🏗 整体架构 ``` User │ ▼ Upload Suspicious File │ ▼ FastAPI REST Backend │ ┌───────────────────┼────────────────────┐ │ │ │ ▼ ▼ ▼ File Validation Metadata Engine Hash Engine │ │ │ └───────────────┬───┴────────────────────┘ ▼ Malware Analysis Engine │ ┌──────────┬──────────┬────────────┬────────────┐ │ │ │ │ │ ▼ ▼ ▼ ▼ ▼ Entropy Strings PE Scan YARA VirusTotal │ ▼ Risk Calculation │ ▼ Report Generator │ ┌───────────┴─────────────┐ ▼ ▼ JSON Response PDF Report ``` # 🔄 完整工作流程 ## 步骤 1 用户上传可疑文件。 支持格式: * EXE * DLL * PDF * DOCX * ZIP * MSI ## 步骤 2 服务器验证 * 文件名 * 扩展名 * 大小 * 完整性 ## 步骤 3 生成 SHA256 示例 ``` SHA256 d5f4c7f9a44e8... ``` ## 步骤 4 提取元数据 * 名称 * 大小 * 类型 * 创建时间 * 修改时间 ## 步骤 5 熵分析 检测 * 加密 * 加壳 * 混淆 ## 步骤 6 提取字符串 示例 ``` powershell cmd.exe kernel32.dll VirtualAlloc CreateRemoteThread WinExec URLDownloadToFile ``` ## 步骤 7 PE 分析 收集 * 导入表 * 导出表 * 节区 * 资源 * DLL 列表 * 入口点 ## 步骤 8 YARA 检测 扫描本地恶意软件规则。 可能检测到的类型 * 勒索软件 * 木马 * 下载器 * 键盘记录器 * 窃密器 ## 步骤 9 VirusTotal 查询文件哈希。 收集 * 检测次数 * 信誉 * 已知恶意软件家族 ## 步骤 10 风险引擎 结合 * 熵 * API * YARA * VirusTotal * 字符串 计算 ``` Overall Malware Risk Score ``` ## 步骤 11 生成 PDF 报告 包含 * 文件信息 * SHA256 * 元数据 * PE 分析 * YARA 结果 * VirusTotal * 风险评分 * 摘要 ## 步骤 12 返回 JSON FastAPI 返回 ``` { "status":"completed", "risk":"High", "score":82 } ``` # 📂 项目结构 ``` MalwareMind-AI/ ├── analyzer.py ├── main.py ├── virustotal.py ├── yara_scan.py ├── risk.py ├── report.py ├── requirements.txt ├── README.md ├── LICENSE ├── .gitignore │ ├── uploads/ ├── reports/ ├── yara_rules/ ├── screenshots/ ├── docs/ └── tests/ ``` # ⚙ 使用的技术 后端 * FastAPI * Python 恶意软件分析 * pefile * yara-python 威胁情报 * VirusTotal API 报告生成 * ReportLab 服务器 * Uvicorn 操作系统 * Ubuntu Linux 开发工具 * Visual Studio Code 版本控制 * Git * GitHub # 🔌 REST API ## GET / 健康检查 ``` GET / Response { "tool":"MalwareMind AI", "status":"online" } ``` ## POST /api/v1/analyze 上传恶意软件样本。 返回 * JSON 报告 * 风险评分 * VirusTotal * YARA 结果 # 🖥 部署 操作系统 Ubuntu Server 应用服务器 Uvicorn 框架 FastAPI 反向代理(未来支持) Nginx 容器(未来支持) Docker # 📈 未来路线图 第二阶段 * MITRE ATT&CK 映射 * IOC 提取 * Sigma 规则检测 * Docker 部署 * HTML 仪表板 * 身份验证 * 数据库 第三阶段 * Wazuh 集成 * TheHive 集成 * MISP 集成 * Suricata 警报 * Zeek 日志 第四阶段 * AI 调查助手 * Ollama 集成 * Llama 3 * AI 事件摘要 * AI 推荐引擎 # 📚 教育价值 该项目展示了以下方面的实用技能: * 恶意软件分析 * 威胁情报 * Python 开发 * REST API 设计 * 数字取证 * 安全自动化 * YARA 规则开发 * 事件响应 * SOC 运营 * 报告生成 # 👨‍💻 作者 **Amarnath Mohan** 工程技术学士(计算机科学与工程 – 网络安全) 有志成为 SOC 分析师 | 恶意软件分析 | 威胁情报 | 事件响应 # 📜 许可证 基于 MIT 许可证授权。 # ⭐ 支持 如果您觉得这个项目有用: * 为本仓库点 Star ⭐ * Fork 🍴 该项目 * 提交改进建议的 issues * 提交 pull requests * 与网络安全社区分享它
标签:AV绕过, DAST, FastAPI, Python, YARA, 云安全监控, 云资产可视化, 威胁情报, 开发者工具, 恶意软件分析, 无后门, 逆向工具, 静态分析