Akta2311/Malware_Guard
GitHub: Akta2311/Malware_Guard
一个基于 YARA 规则与 PE 分析的实时恶意软件检测平台,提供客户端上传扫描与管理员后台管理功能,支持桌面应用模式。
Stars: 0 | Forks: 0
# 网络安全扫描器 (Malware Guard)
## 概述
网络安全扫描器是一款全面的恶意软件检测和文件分析应用程序。它采用强大的 Python 后端和直观的 HTML/CSS/JS 前端构建,为用户提供了一个安全的平台,以便上传和扫描文件中的漏洞或恶意内容。系统支持完整的基于角色的访问控制,为客户端和系统管理员提供独立的界面,并且可以作为独立的桌面应用程序运行。
## 主要功能
- **高级文件扫描**:使用 YARA 规则、PE 头提取和 magic bytes 验证来分析文件,以检测潜在威胁和恶意软件。
- **客户端门户**:安全的身份验证系统(登录/注册)、个性化用户配置文件,以及简化的拖放式文件上传界面。
- **管理员仪表盘**:一个全面的管理面板,用于查看系统范围的扫描历史记录(具有分页功能)、管理客户端帐户以及监督系统日志。
- **基于角色的访问控制 (RBAC)**:严格的分层权限。具有仅限主管理员使用的强制性行政密码管理工作流程。
- **离线“Galaxy Defender”模式**:包含一个定制开发的太空射击迷你游戏,在意外断网时会自动启动以吸引受影响的用户。
- **桌面应用程序就绪**:使用 `pywebview` 封装,在 Web 界面之外提供无缝的原生桌面用户体验。
- **丰富的文档**:通过 PlantUML 用例图、流程图和全面的数据字典对系统架构进行了详尽的记录。
## 技术栈
- **前端**:HTML5、原生 CSS(无外部框架的自定义样式)、原生 JavaScript
- **后端**:Python 3.x、Flask(以及 Flask-CORS)
- **数据库**:带有 Flask-SQLAlchemy ORM 的 SQLite
- **分析模块**:`yara-python`、`pefile`、`python-magic-bin`
- **桌面封装**:`pywebview`
## 仓库结构
```
.
├── MG/
│ ├── Malware-Guard/ # Core application folder
│ │ ├── frontend/ # Client-side assets: HTML, CSS, JavaScript (including the offline game logic)
│ │ ├── backend/ # Core server: Flask API (app.py), analysis engine (analyzer.py), and YARA signatures
│ │ ├── database/ # Stores the SQLite relational database (database.db)
│ │ └── index.html # Application entry point
│ ├── PPT/ # Presentation files (PDF, PPTX)
│ └── shortcut/ # Desktop application shortcut (.lnk)
└── README.md # Project documentation (this file)
```
## 前置条件
- Python 3.8 或更高版本
- Git(用于版本控制)
- 现代网络浏览器(如果在本地访问 Web 门户)
## 安装与设置
1. **克隆仓库**
git clone https://github.com/Akta2311/Malware_Guard.git
cd Malware_Guard
2. **设置后端环境**
导航至 backend 目录并安装所需的 Python 包:
cd MG/Malware-Guard/backend
pip install -r requirements.txt
3. **数据库初始化**
数据库 (`database.db`) 位于 `database/` 目录中。请确保后端对此文件夹具有写入权限。
4. **启动应用程序**
你可以使用 `pywebview` 直接以桌面窗口模式运行该应用程序,或者作为标准 Web 服务器运行:
- **桌面模式**:
cd MG/Malware-Guard/backend
python desktop.py
- **仅 Web 服务器模式**:
cd MG/Malware-Guard/backend
python app.py
## 使用说明
- **客户端访问**:导航至客户端门户,使用你的用户名和电话号码创建一个帐户,然后即可开始上传文件进行安全分析。
- **管理员访问**:使用管理员凭据登录,以监控最近的扫描、管理用户权限以及管理平台安全规则。
## 贡献
在提交更改之前,请参阅内部编码指南。请务必维护 `frontend`、`backend` 和 `database` 之间严格的角色层级和文件结构依赖关系。
## 许可证
MIT 许可证
标签:DAST, Flask, GraphQL安全矩阵, Python, pywebview, SQLite, YARA, 云资产可视化, 后端开发, 安全扫描器, 恶意软件分析, 数据可视化, 文件分析, 无后门, 逆向工具