MOHAMEDB999/MalwareLab
GitHub: MOHAMEDB999/MalwareLab
一个集静态二进制分析、行为检测、YARA 规则自动生成和威胁情报查询于一体的恶意软件分析框架。
Stars: 0 | Forks: 0
# 🔍 MalwareLab
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
[](https://github.com/MOHAMEDB999/MalwareLab)
一个强大且可扩展的框架,用于分析恶意软件、检测威胁并生成检测规则。专为安全研究人员、应急响应人员和 CTF 爱好者构建。
## ✨ 主要特性
- **二进制分析**: PE 文件解析、熵值检测和可疑模式识别
- **行为检测**: 系统调用监控和异常检测
- **YARA 规则生成**: 从恶意软件样本自动生成检测规则
- **威胁情报 API**: 集成 VirusTotal 和 AlienVault OTX 支持
- **网络分析**: 针对 C2 通信模式的数据包检查
- **交互式仪表板**: 用于分析可视化和报告的 Web UI
- **哈希查询**: 支持 MD5、SHA-1、SHA-256 及富化信息
- **导入检测**: 分析 API 导入并检测可疑项
- **熵值分析**: 检测加壳和加密的二进制文件
## 🚀 快速开始
### 安装
```
git clone https://github.com/MOHAMEDB999/MalwareLab.git
cd MalwareLab
pip install -r requirements.txt
```
### 基本用法
```
from malwarelab import MalwareAnalyzer
# 初始化 analyzer
analyzer = MalwareAnalyzer()
# 分析 binary
result = analyzer.analyze_file('suspect_binary.exe')
# 获取 results
print(result.entropy)
print(result.imports)
print(result.suspicious_patterns)
```
## 📋 架构
### 核心模块
```
MalwareLab/
├── malwarelab/
│ ├── analyzers/
│ │ ├── binary_analyzer.py # PE file analysis
│ │ ├── behavioral_analyzer.py # System call detection
│ │ └── network_analyzer.py # C2 detection
│ ├── generators/
│ │ ├── yara_generator.py # YARA rule generation
│ │ └── ioc_generator.py # IOC extraction
│ ├── integrations/
│ │ ├── virustotal.py # VT API integration
│ │ └── alienvault.py # AlienVault OTX integration
│ └── core.py # Main analyzer class
├── tests/
├── examples/
└── requirements.txt
```
## 🔧 高级用法
### 自定义规则生成
```
from malwarelab.generators import YARAGenerator
# 从 samples 生成 YARA rules
generator = YARAGenerator()
rules = generator.generate_from_directory('samples/')
# 保存 rules
generator.save_rules('output.yar')
```
### 威胁情报集成
```
from malwarelab.integrations import VirusTotal, AlienVault
# 查询 VirusTotal
vt = VirusTotal(api_key='YOUR_VT_KEY')
result = vt.check_hash('d41d8cd98f00b204e9800998ecf8427e')
# 查询 AlienVault OTX
otx = AlienVault(api_key='YOUR_OTX_KEY')
indicators = otx.search_file_hash('sample_hash')
```
## 📊 示例输出
```
═══════════════════════════════════════════════════════════
Malware Analysis Report
═══════════════════════════════════════════════════════════
File: suspicious.exe
MD5: d41d8cd98f00b204e9800998ecf8427e
SHA1: da39a3ee5e6b4b0d3255bfef95601890afd80709
[ENTROPY]
Score: 7.2/8.0 Status: ⚠️ SUSPICIOUS (Packed)
[IMPORTS]
Total: 45
Suspicious: 12
- CreateRemoteThread (Process Injection)
- WinHttpConnect (Network)
- RegSetValueEx (Registry Modification)
[PATTERNS]
Detected: 23
✓ String obfuscation
✓ API hooking indicators
✓ Potential C2 communication
[VIRUSTOTAL]
Detections: 34/72
Threats: W32.Trojan.Gen, Adware.Win32.Generic
[YARA]
Generated 5 detection rules
Confidence: 95%
```
## 🔍 检测能力
### 二进制模式
- 加壳和加密检测
- 代码混淆指标
- 可疑导入分析
- 节区异常
### 行为指标
- 进程注入技术
- 注册表操作
- 文件系统活动
- 网络通信模式
### 威胁情报
- 多源哈希查询
- 信誉评分
- 关联样本发现
- 攻击活动归因提示
## 🛠️ 配置
在项目根目录下创建 `config.yaml`:
```
api:
virustotal_key: YOUR_API_KEY
alienvault_key: YOUR_API_KEY
analysis:
timeout: 30
sample_size_limit: 50MB
output:
format: json # json, pdf, html
include_yara: true
verbose: true
```
## 📚 文档
- [安装指南](docs/INSTALL.md)
- [API 参考](docs/API.md)
- [YARA 集成](docs/YARA.md)
- [贡献指南](CONTRIBUTING.md)
## 🧪 测试
```
# 运行所有 tests
python -m pytest tests/
# 带 coverage 运行
pytest --cov=malwarelab tests/
# 运行特定 test
pytest tests/test_binary_analyzer.py -v
```
## 🎯 使用场景
- **应急响应**: 快速恶意软件分类和分析
- **威胁研究**: 深度恶意软件特征刻画
- **SOC 运营**: 自动化威胁检测和告警
- **CTF 竞赛**: 恶意软件逆向挑战
- **教育**: 学习二进制分析和逆向工程
## 🔐 安全注意事项
⚠️ **安全处理恶意软件:**
- 仅在隔离环境中进行分析
- 使用虚拟机或容器处理样本
- 在环境变量中安全保管 API 密钥
- 切勿执行可疑样本
## 📈 路线图
- [ ] 具备实时分析功能的 Web 仪表板
- [ ] 基于机器学习的威胁评分
- [ ] Linux/macOS 二进制支持
- [ ] 用于自定义分析器的插件系统
- [ ] 集成主流 EDR
- [ ] 基于云的沙箱
- [ ] 移动恶意软件分析
## 📝 许可证
本项目采用 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。
## ⚠️ 免责声明
MalwareLab 仅供教育和授权安全研究目的使用。未经授权访问计算机系统是非法的。用户有责任在分析任何恶意软件或系统之前确保拥有适当的授权。
## 🔗 资源
- [MITRE ATT&CK 框架](https://attack.mitre.org/)
- [YARA 文档](https://yara.readthedocs.io/)
- [PE 格式规范](http://www.openrce.org/articles/files/pneuma.pdf)
- [VirusTotal API](https://developers.virustotal.com/)
## 👨💻 作者
**Mohamed Ben** (@MOHAMEDB999)
- 🎓 USTHB 大学网络安全专业学生
- 🔬 恶意软件分析与逆向工程爱好者
- 🏆 CTF 选手
- 📺 内容创作者
## 💬 支持与讨论
- **问题反馈**: [GitHub Issues](https://github.com/MOHAMEDB999/MalwareLab/issues)
- **讨论交流**: [GitHub Discussions](https://github.com/MOHAMEDB999/MalwareLab/discussions)
- **邮箱**: [联系信息]
**⭐ 如果您觉得 MalwareLab 有用,请给本仓库点个 Star!**
标签:API导入分析, C2通信检测, CTF工具, DAST, DNS 反向解析, IP 地址批量处理, PE文件解析, Python安全工具, SolidJS, VirusTotal集成, Web仪表盘, YARA规则生成, 二进制分析, 云安全监控, 云安全运维, 哈希查询, 威胁情报, 开发者工具, 异常检测, 恶意软件分析, 沙箱检测, 漏洞搜索, 熵值检测, 系统运维工具, 网络信息收集, 网络安全, 行为检测, 逆向工具, 隐私保护, 静态分析