byarudev/Malware-Analyst
GitHub: byarudev/Malware-Analyst
基于 Flask 和 MongoDB 的开源恶意软件分析平台,结合静态分析与 AI 自动生成可读报告,简化安全研究人员的样本分析流程。
Stars: 0 | Forks: 0
# 恶意软件分析器
## 功能
### 当前
- Flask 后端
- 基于 Environment 的配置
- 安全的应用程序设置
- 健康检查 endpoint
- 模块化的项目结构
### 计划中
- 文件上传与验证
- 静态 PE 分析
- Hash 生成 (MD5, SHA1, SHA256)
- Strings 提取
- Import/Export 分析
- YARA 规则扫描
- IOC 提取
- MITRE ATT&CK 映射
- VirusTotal 集成
- MalwareBazaar 集成
- AlienVault OTX 集成
- CAPE/Cuckoo sandbox 集成
- AI 生成的恶意软件摘要
- 报告生成 (PDF/JSON)
- 用户身份验证
- 分析历史 dashboard
# 技术栈
### 后端
- Python
- Flask
- Pydantic Settings
### 数据库
- MongoDB
### 人工智能
- Ollama (本地)
- OpenAI API (可选)
### 威胁情报
- VirusTotal
- MalwareBazaar
- AlienVault OTX
- Hybrid Analysis
# 项目结构
```
malware-analyst/
│
├── backend/
│ ├── app.py
│ ├── config.py
│ └── __init__.py
│
├── uploads/
├── logs/
│
├── .env.example
├── requirements.txt
└── README.md
```
# 快速开始
## 1. 克隆仓库
```
git clone https://github.com/byarudev/malware-analyst.git
cd malware-analyst
```
## 2. 创建虚拟环境
Windows
```
python -m venv .venv
.venv\Scripts\activate
```
Linux/macOS
```
python3 -m venv .venv
source .venv/bin/activate
```
## 3. 安装依赖
```
pip install -r requirements.txt
```
## 4. 配置环境变量
复制示例配置。
```
cp .env.example .env
```
如果你打算使用外部服务,请填入你的 API 密钥。
示例:
```
APP_SECRET_KEY=change-me
MONGO_URI=mongodb://localhost:27017
MONGO_DB_NAME=malware_analyst
AI_PROVIDER=ollama
OLLAMA_MODEL=llama3.1
OPENAI_API_KEY=
VIRUSTOTAL_API_KEY=
ALIENVAULT_OTX_API_KEY=
MALWAREBAZAAR_API_KEY=
```
## 5. 运行应用程序
```
python backend/app.py
```
API 将启动于
```
http://localhost:5000
```
# API
## 健康检查
```
GET /api/health
```
响应
```
{
"status": "ok",
"env": "development"
}
```
# 配置
该应用程序支持:
- 特定环境配置
- 上传大小限制
- 允许的文件扩展名
- MongoDB 配置
- AI 提供商选择
- 威胁情报 API 密钥
- Sandbox 集成
- 速率限制
# 路线图
- [x] Flask 应用程序工厂
- [x] 环境配置
- [x] 安全的密钥管理
- [ ] Docker 支持
- [ ] MongoDB 集成
- [ ] 身份验证
- [ ] 文件上传 API
- [ ] Hash 计算
- [ ] 静态 PE 分析
- [ ] Strings 提取
- [ ] IOC 提取
- [ ] VirusTotal 查询
- [ ] MalwareBazaar 查询
- [ ] AI 恶意软件解释
- [ ] 报告生成
- [ ] Web dashboard
- [ ] 用户账户
- [ ] 动态 sandbox 集成
# 安全
本项目用于**恶意软件分析和网络安全研究**。
上传的文件**绝不应**在宿主机上直接执行。未来版本将支持通过以下集成进行隔离的 sandbox 执行:
- CAPE
- Cuckoo Sandbox
- ANY.RUN
# 许可证
本项目基于 MIT 许可证授权。
## AI 使用情况
本项目主要通过我个人的开发和问题解决能力构建而成。
AI 作为助手被用于:
- 头脑风暴架构和实现方法。
- 解释不熟悉的概念和技术。
- 疑难解答复杂的 bug 或边缘情况。
- 审查代码并提出改进建议。
- 起草文档。
应用程序逻辑、项目结构、实现、调试以及绝大多数代码均由我编写和集成。AI 被用作生产力工具——而不是替代对软件的理解或编写。
## 作者
由 **byarudev** 构建
标签:AI风险缓解, DAST, Flask, MongoDB, Petitpotam, YARA, 云安全监控, 云资产可视化, 威胁情报, 开发者工具, 恶意软件分析, 逆向工具, 静态分析