MOHAMEDB999/MalwareLab

GitHub: MOHAMEDB999/MalwareLab

一个集静态二进制分析、行为检测、YARA 规则自动生成和威胁情报查询于一体的恶意软件分析框架。

Stars: 0 | Forks: 0

# 🔍 MalwareLab [![Python 3.8+](https://img.shields.io/badge/Python-3.8+-blue.svg)](https://www.python.org/downloads/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![GitHub stars](https://img.shields.io/github/stars/MOHAMEDB999/MalwareLab?style=social)](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规则生成, 二进制分析, 云安全监控, 云安全运维, 哈希查询, 威胁情报, 开发者工具, 异常检测, 恶意软件分析, 沙箱检测, 漏洞搜索, 熵值检测, 系统运维工具, 网络信息收集, 网络安全, 行为检测, 逆向工具, 隐私保护, 静态分析