Skip to content

Limerencece/MalwareDetector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MalwareDetector

MalwareDetector 是一个本地恶意样本检测平台,支持多引擎扫描(YARA、Loki、Zircolite、Sigma),提供上传、任务管理、结果展示与统计。

目录结构(概览)

MalwareDetector/
├── backend/                 # Node.js/Express 后端
│   ├── python/              # 扫描脚本(YARA)
│   ├── src/                 # 后端核心代码
│   │   ├── scanners/        # 扫描引擎适配(yara/loki/zircolite/sigma)
│   │   └── utils/           # 工具模块
│   ├── sql/                 # 数据库初始化脚本
│   └── uploads/             # 上传文件临时目录
├── frontend/                # Vue 3 + Vite 前端
│   └── src/                 # 前端源码
├── rules/                   # 规则库(YARA/Sigma 等)
├── thirdparty/              # 第三方引擎(Loki/Zircolite)
├── demo/                    # 示例样本
└── README.md

功能特性

  • 多引擎扫描:YARA / Loki / Zircolite / Sigma
  • 批量上传、任务进度、结果表格与风险等级
  • 任务取消与历史结果查看
  • 可选数据库持久化(MySQL)

运行环境

  • Node.js 18+
  • Python 3.x(需安装 yara-python
  • 可选:MySQL 8.x(持久化扫描结果)

后端配置

后端配置集中在 backend/.env(可选)与 backend/src/config.js。 常用变量:

  • PORT:后端端口(默认 8080)
  • SCANNER:默认引擎(yara/loki/zircolite/sigma)
  • RULES_DIR:YARA 规则目录
  • PYTHON_PATH:Python 路径(默认 python
  • DB_ENABLED:是否启用数据库(true/false)
  • MYSQL_HOST / MYSQL_USER / MYSQL_PASSWORD / MYSQL_DATABASE / MYSQL_PORT

启动方式

  1. 后端
cd backend
npm install
npm run dev
  1. 前端
cd frontend
npm install
npm run dev

前端默认通过代理访问后端接口(开发环境)。

数据库(可选)

如需持久化扫描结果,请先初始化数据库:

CREATE DATABASE malware_detector;

然后导入表结构:

mysql -u root -p malware_detector < .\backend\sql\schema.sql

backend/.env 中配置数据库连接,并设置 DB_ENABLED=true

扫描引擎说明

  • YARA:由 backend/python/scanner.py 执行扫描,后端通过进程调用。
  • Loki / Zircolite:位于 thirdparty/,通过后端适配模块调用。
  • Sigma:基于 backend/gobackend/go-sigma-rule-engine-master

说明

  • 规则库路径默认指向 rules/ 下对应目录,可在配置中调整。
  • uploads/ 为临时目录,可定期清理。

About

NKU 恶意代码分析与防治技术大作业

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors