a-tushar-a/Malware-Detection-System
GitHub: a-tushar-a/Malware-Detection-System
基于 TensorFlow/Keras 深度学习的全栈恶意软件检测系统,支持文件上传后实时分类并记录分析历史。
Stars: 0 | Forks: 0
# 基于深度学习的恶意软件检测系统
Python · FastAPI · TensorFlow/Keras · Java Spring Boot · React.js · PostgreSQL · Docker · JWT · CI/CD
• 使用 TensorFlow/Keras 深度学习开发了自动化威胁分析 pipeline——实现了高精度的实时恶意软件分类。
• 通过 FastAPI 编写 Python 自动化脚本,以编排跨服务的文件摄取、模型推理和结果持久化。
• 设计了多服务系统(Python ML 后端 + Java Spring Boot API + React 前端)架构,并使用 Docker 进行容器化以支持 CI/CD 就绪部署。
• 实现了 JWT 认证以及跨所有 API 端点的端到端安全机制,并提供了完整的架构文档。
## 项目结构
```
MalwareDetectionSystem/
├── ai-service/ # Python FastAPI service for the ML model
│ ├── main.py
│ └── requirements.txt
├── backend/ # Java Spring Boot application
│ ├── src/
│ └── pom.xml
├── frontend/ # React.js frontend application
│ ├── src/
│ ├── package.json
│ └── vite.config.js
└── schema.sql # PostgreSQL database schema
└── README.md
```
## 技术栈
- **后端**:Java 17、Spring Boot 3、Maven
- **前端**:React.js (Vite)、Tailwind CSS
- **AI 模型**:Python 3.10、FastAPI、TensorFlow/Keras
- **数据库**:PostgreSQL
- **认证**:JWT (JSON Web Tokens)
## 前置条件
请确保您的 Windows 11 机器上已安装以下软件:
- **Java 17 JDK**:[OpenJDK](https://adoptium.net/) 或任何其他发行版。
- **Maven**:[Apache Maven](https://maven.apache.org/download.cgi)。
- **Python 3.10**:[Python.org](https://www.python.org/downloads/release/python-31011/)。
- **Node.js 和 npm**:[Node.js](https://nodejs.org/)。
- **PostgreSQL**:[PostgreSQL](https://www.postgresql.org/download/windows/)。
## 设置说明
### 1. 数据库设置
1. **安装 PostgreSQL** 并确保服务正在运行。
2. **创建数据库**:
- 打开 `psql` 或类似 pgAdmin 的工具。
- 创建一个名为 `malware_detection_db` 的新数据库。
CREATE DATABASE malware_detection_db;
3. **创建数据表**:
- 连接到 `malware_detection_db` 数据库。
- 运行项目根目录下 `schema.sql` 文件中的脚本来创建 `users` 和 `malware_samples` 表。
4. **更新凭据**:
- 打开 `backend/src/main/resources/application.properties`。
- 更新 `spring.datasource.username` 和 `spring.datasource.password` 以匹配您的 PostgreSQL 配置。默认值为 `postgres` 和 `password`。
### 2. AI 服务
1. **进入 AI 服务目录**:
cd C:\Users\DELL\Desktop\MalwareDetectionSystem\ai-service
2. **创建虚拟环境**:
python -m venv venv
3. **激活虚拟环境**:
.\venv\Scripts\activate
4. **安装依赖**:
pip install -r requirements.txt
由于包含 TensorFlow,这可能需要一些时间。
5. **运行服务**:
uvicorn main:app --reload
AI 服务将在 `http://localhost:8000` 上启动。首次运行时,它将训练并保存一个简单的模型(`malware_model.h5`)。
### 3. 后端
1. **进入后端目录**:
cd C:\Users\DELL\Desktop\MalwareDetectionSystem\backend
2. **安装依赖**:
mvn clean install
3. **运行应用程序**:
mvn spring-boot:run
后端服务将在 `http://localhost:8080` 上启动。
### 4. 前端
1. **进入前端目录**:
cd C:\Users\DELL\Desktop\MalwareDetectionSystem\frontend
2. **安装依赖**:
npm install
3. **运行应用程序**:
npm run dev
前端开发服务器将在 `http://localhost:5173`(或下一个可用端口)上启动。
## 如何使用
1. **打开浏览器** 并访问前端 URL(例如,`http://localhost:5173`)。
2. **注册新用户账号**。
3. 使用您的新凭据**登录**。
4. 您将被重定向到**仪表板**。
5. **上传文件**以进行分析。系统将显示预测结果。
6. 在右侧的表格中查看**分析历史记录**。
标签:API安全, AV绕过, DAST, Docker, FastAPI, GNU通用公共许可证, JSON输出, JS文件枚举, JWT认证, Keras, Maven, NIDS, Node.js, PostgreSQL, Python, React.js, Spring Boot, Tailwind CSS, TensorFlow, Vite, 人工智能安全, 关系型数据库, 前后端分离, 合规性, 域名枚举, 威胁分析, 威胁情报, 安全防御评估, 实时分类, 容器化, 密钥泄露防护, 开发者工具, 微服务架构, 恶意软件分析, 无后门, 机器学习安全, 测试用例, 深度学习, 漏洞验证, 系统架构, 网络安全, 自动化侦查工具, 自动化分析流水线, 请求拦截, 逆向工具, 隐私保护