abfatnassi/malware-behavior-analyzer
GitHub: abfatnassi/malware-behavior-analyzer
一款零上传、纯浏览器运行的恶意软件静态分析教育平台,提供哈希计算、PE 解析、IOC 提取、OSINT 链接生成和 MITRE ATT&CK 映射功能。
Stars: 0 | Forks: 0
# 🛡️ Malware Behavior Analyzer
.github.io/malware-behavior-analyzer/` 访问
### 方法 2 — 本地测试
无需安装!只需在浏览器中打开 `index.html`:
```
# Linux/macOS
open index.html
# Windows
start index.html
```
或者使用任何静态服务器托管该文件夹:
```
# Python 3
python -m http.server 8000
# Node.js
npx serve .
# PHP
php -S localhost:8000
```
然后访问 `http://localhost:8000`
## 📁 结构
```
malware-behavior-analyzer/
├── index.html # Page principale (entry point)
├── css/
│ └── style.css # Theme SOC complet
├── js/
│ ├── app.js # Logique principale (Alpine.js)
│ ├── static-analyzer.js # Analyse statique
│ ├── mitre-mapper.js # Mapping MITRE ATT&CK
│ ├── osint-lookup.js # Génération liens OSINT
│ └── report-generator.js # Export HTML/JSON
├── docs/
│ ├── ARCHITECTURE.md
│ └── LEGAL.md
├── LICENSE
└── README.md
```
## 🧠 工作原理
### 分析流水线(5 个步骤)
```
┌──────────────────┐
│ USER drops file │
└────────┬─────────┘
▼
┌─────────────────────────────────────────────────┐
│ 1. STATIC ANALYSIS │
│ • FileReader API → Uint8Array │
│ • Web Crypto API → MD5/SHA-1/SHA-256 │
│ • Shannon entropy calculation │
│ • PE header parsing (offset 0x3C) │
│ • String extraction (ASCII + UTF-16LE) │
│ • IOC extraction (regex) │
└────────┬────────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────┐
│ 2. OSINT LINKS │
│ • Build URLs to VT, MB, Hybrid, OTX, etc. │
│ • User clicks to open in new tabs │
└────────┬────────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────┐
│ 3. SANDBOX (skipped — client-side limitation) │
│ • Behavior inferred from static analysis │
└────────┬────────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────┐
│ 4. MITRE MAPPING │
│ • API patterns → ATT&CK techniques │
│ • String patterns → ATT&CK techniques │
│ • Compute kill chain coverage │
└────────┬────────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────┐
│ 5. REPORT GENERATION │
│ • Render HTML report (Blob API) │
│ • Render JSON report (Blob API) │
│ • User downloads via │
└─────────────────────────────────────────────────┘
```
### 判定结果计算(启发式)
| 指标 | 分数 |
|-----------|--------|
| 熵 > 7.2(加壳) | +30 |
| 检测到比特币地址 | +30 |
| 5 个以上可疑关键词 | +25 |
| 1-4 个可疑关键词 | +10 |
| 5 个以上 URL(可能的 C2) | +15 |
| 3 个以上外部 IP | +10 |
| 具有异常熵的 PE 节区 | +15 |
**级别**:低(<20) · 中等(20-50) · 高(50-75) · 严重(75-100)
## ⚠️ 静态版本的局限性
对用户保持透明:
| 功能 | 状态 | 原因 |
|---------|--------|----------|
| **动态沙箱** | ❌ 不可用 | 需要服务器 VM (CAPE/Cuckoo) |
| **YARA 扫描** | ❌ 不可用 | yara-python = C 语言库,无法在浏览器中移植 |
| **直接调用 VT/MB API** | ❌ 被 CORS 阻止 | 解决方案:直接链接 |
| **原生 PDF 导出** | ❌ 有限制 | 解决方案:从 HTML 中 Ctrl+P |
| **完整 PE 解析** | ⚠️ 基础 | 主要头信息 + 节区,无详细的 IAT/exports |
有关包含 YARA、CAPE 沙箱和 API 调用的**完整服务器版本**,请参见 `flask-server` 分支。
## 🔒 隐私
- ✅ **任何文件都不会被发送到互联网**
- ✅ **无 Cookie,无追踪器**
- ✅ **不在浏览器之外存储任何数据**
- ✅ **100% 透明的源代码**
- ⚠️ 统计数据(分析计数器)存储在 `localStorage` 中 —— 纯本地存储
您可以通过 DevTools(Network 选项卡)验证您的文件**没有发出任何网络请求**。
## 🤝 贡献
欢迎贡献!扩展项目的建议:
- **添加检测规则**:`js/static-analyzer.js` → `SUSPICIOUS_KEYWORDS`
- **添加 MITRE 技术**:`js/mitre-mapper.js` → `API_TO_TECHNIQUE` 或 `STRING_TO_TECHNIQUE`
- **添加 OSINT 来源**:`js/osint-lookup.js` → `buildLinks()`
## 📚 参考
- [MITRE ATT&CK Framework](https://attack.mitre.org/)
- [VirusTotal](https://www.virustotal.com/)
- [MalwareBazaar (Abuse.ch)](https://bazaar.abuse.ch/)
- [Web Crypto API (MDN)](https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API)
- [PE Format Documentation](https://docs.microsoft.com/en-us/windows/win32/debug/pe-format)
## 📜 许可证
本项目基于 **MIT** 许可证 —— 参见 [`LICENSE`](LICENSE)。
## 👤 作者
**Hakim** — 网络安全工程师与威胁情报研究员
Built with ❤️ for defensive cybersecurity research
▸ Stay curious. Stay defensive.
标签:Client-side分析, CTF安全, DAST, DeepSeek, DNS 反向解析, IOC提取, MITRE ATT&CK映射, OSINT情报收集, PE文件解析, SIEM集成, SOC控制台, Web安全, 云安全监控, 多模态安全, 威胁情报, 安全可视化, 安全运营中心, 开发者工具, 恶意软件分析, 数据可视化, 数据展示, 无线安全, 本地文件分析, 沙箱分析, 熵值分析, 红队, 纯前端分析, 网络威胁狩猎, 网络安全审计, 网络安全教育, 网络映射, 自定义脚本, 蓝队分析, 零上传隐私保护, 静态分析