aayesha00/yara-malware-scanner
GitHub: aayesha00/yara-malware-scanner
基于 Python 和 YARA 的轻量级静态恶意软件扫描器,通过 MITRE ATT&CK 对齐的规则集检测勒索软件、键盘记录器等威胁并生成 CSV 报告。
Stars: 0 | Forks: 0
# 基于 YARA 的恶意软件扫描器
一个使用 Python 和 YARA 构建的轻量级、基于规则的恶意软件检测工具。可根据映射到 MITRE ATT&CK 技术的精选检测规则集扫描单个文件或整个目录,并生成带有时间戳的 CSV 报告。
## 功能
- 多类别检测:勒索软件、键盘记录器、反弹 shell、可疑脚本执行以及 PE 结构异常
- 使用 SHA256 文件哈希进行唯一文件标识
- 为每个检测规则提供 MITRE ATT&CK 技术映射
- 自动生成带有时间戳的 CSV 报告
- 支持单文件和递归目录扫描
## 检测类别
| 规则 | 类别 | MITRE ATT&CK | 严重性 |
|------|----------|---------------|----------|
| Ransomware_Indicators | Ransomware | T1486 | High |
| Keylogger_Indicators | Keylogger | T1056.001 | Medium |
| Suspicious_Script_Commands | Script Execution | T1059 | Medium |
| Reverse_Shell_Indicators | Reverse Shell | T1059 / T1071 | High |
| Suspicious_Generic_Keywords | Generic | — | Low |
| Suspicious_PE_Structure | PE Analysis | T1027 | Medium |
## 环境要求
- Python 3.x
- yara-python
安装依赖项:
```
pip install yara-python
```
## 使用说明
扫描单个文件:
```
python3 scanner.py samples/test.txt
```
扫描整个目录:
```
python3 scanner.py samples/
```
结果将输出到终端并追加到 `scan_report.csv` 中。
## 示例输出
文件: samples/ransomware_test.txt
大小: 58 bytes
SHA256: 609cbf51e5aa8d58cdce3f5...
状态: [!] SUSPICIOUS
匹配规则: Ransomware_Indicators
## 项目结构
yara-malware-scanner/
├── rules/
│ └── my_first_rule.yar
├── samples/
├── scanner.py
├── scan_report.csv
└── README.md
## 免责声明
本项目是作为探索静态恶意软件分析技术的实践而开发的。此扫描器体现了检测工程的核心概念(基于规则的模式匹配、MITRE ATT&CK 对齐),但不能替代商业防病毒/EDR 解决方案。所有测试数据均为合成数据。
## 作者
Ayesha Noor
标签:DAST, DNS 反向解析, IP 地址批量处理, Python, Web技术栈, YARA, 云安全监控, 云资产可视化, 恶意软件分析, 无后门, 逆向工具, 静态分析