Srijan-XI/ThreatFusion
GitHub: Srijan-XI/ThreatFusion
ThreatFusion 是一个融合 C++、Python 和 Go 的多层网络安全分析平台,提供恶意软件检测、网络流量分析和实时威胁监控功能。
Stars: 0 | Forks: 0
# ThreatFusion: 统一网络安全分析平台
## 🛡️ 概述
**ThreatFusion** 是一个全面的多层网络安全分析平台,结合了 C++、Python 和 Go 的强大功能,提供企业级的威胁检测和分析。凭借集成的 **Web 界面**、实时监控和高级报告功能,ThreatFusion 为现代安全运营提供了完整的解决方案。
### 主要特性
- 🔍 **高级恶意软件检测** - PE/ELF 解析、熵分析、签名匹配
- 🌐 **网络分析** - 数据包捕获、协议分析、流量异常检测
- 🚨 **实时监控** - 基于 WebSocket 的实时威胁更新
- 📊 **交互式 Web 仪表板** - 现代化 React 界面
- 📈 **综合报告** - HTML、PDF、Excel、CSV 导出
- 🤖 **ML 集成** - 基于机器学习的异常检测
- 🔌 **RESTful API** - FastAPI 后端及完整文档
## 🚀 快速开始
### Web 界面(推荐)
**Windows:**
```
cd web
run.bat
```
**Linux/Mac:**
```
cd web
chmod +x run.sh
./run.sh
```
访问仪表板地址:**http://localhost:3000**
### 命令行
```
python run.py
```
## 📁 项目结构
```
ThreatFusion/
├── web/ # Web Interface (NEW!)
│ ├── api/ # FastAPI Backend
│ │ ├── main.py # REST API + WebSocket
│ │ └── requirements.txt
│ ├── src/ # React Frontend
│ │ ├── components/ # UI Components
│ │ ├── pages/ # Dashboard, Scans, Threats, Reports, Settings
│ │ └── services/ # API Client + WebSocket
│ ├── run.bat # Windows startup script
│ ├── run.sh # Linux/Mac startup script
│ └── package.json
│
├── scanner_cpp/ # C++ Advanced Scanner
│ ├── advanced_scanner.cpp # PE/ELF parser, entropy analysis
│ ├── advanced_scanner.hpp # Header definitions
│ └── advanced_main.cpp # Scanner entry point
│
├── net_analyzer_go/ # Go Network Scanner
│ └── netscan.go # Concurrent network scanning
│
├── analyzer_py/ # Python Analysis Engine
│ ├── analyzer.py # Main analyzer
│ └── models/
│ └── heuristics.py # Detection heuristics
│
├── core/ # Core Modules
│ ├── logger.py # Advanced logging system
│ ├── error_handler.py # Error handling & recovery
│ └── reporting.py # Multi-format reporting
│
├── network/ # Network Analysis
│ └── network_analyzer.py # Packet capture & analysis
│
├── configs/ # Configuration Files
│ ├── rules.json # Signature database
│ ├── malware_hashes.json # Known malware hashes
│ └── suspicious_strings.txt
│
├── data/ # Test Data
│ └── samples/ # Sample files for testing
│
├── outputs/ # Output Directory
│ ├── logs/ # Log files
│ └── reports/ # Generated reports
│
├── run.py # Main orchestrator
└── requirements.txt # Python dependencies
```
## 🌐 Web 界面
### 功能
- **🏠 仪表板** - 实时统计、威胁可视化、系统状态
- **🔍 扫描** - 配置扫描、上传文件、监控进度、查看历史
- **⚠️ 威胁** - 过滤威胁、详细分析、导出为 CSV
- **📄 报告** - 生成并下载多种格式的报告
- **⚙️ 设置** - 配置扫描器、通知、API 密钥、系统设置
### 技术栈
- **Frontend**: React 18, Vite, Tailwind CSS, Chart.js
- **Backend**: FastAPI, WebSockets, Uvicorn
- **Design**: Glassmorphism, Dark theme, Responsive
### 访问入口
- **Frontend**: http://localhost:3000
- **Backend**: http://localhost:8000
- **API Docs**: http://localhost:8000/docs
### 启动脚本
- **Windows**: `web/run.bat` - 一键启动
- **Linux/Mac**: `web/run.sh` - 带自动清理的 Bash 脚本
- **PowerShell**: `web/start-all.ps1` - PowerShell 替代方案
## 🔧 前置条件
### 必需软件
- **Node.js** 18+ (用于 Web 界面)
- **Python** 3.8+ (已测试 3.13.7)
- **C++** 支持 C++17 的编译器 (g++, clang++, MSVC)
- **Go** 1.16+ (用于网络扫描器)
### Python 依赖
```
pip install -r requirements.txt
```
**核心包:**
- pandas >= 1.5.0
- matplotlib >= 3.5.0
- fpdf >= 1.7.2
- scikit-learn >= 1.0.0
- scapy >= 2.5.0
- fastapi >= 0.110.0
- uvicorn >= 0.27.0
### Web 界面依赖
```
cd web
npm install
```
## 💻 用法
### 1. Web 界面(最简单)
**启动所有服务:**
```
cd web
run.bat # Windows
./run.sh # Linux/Mac
```
**打开浏览器:**
- 访问 http://localhost:3000
- 点击 "Start Quick Scan"
- 监控实时结果
- 查看威胁和报告
### 2. 命令行(传统方式)
**运行完整分析:**
```
python run.py
```
**运行特定组件:**
```
# C++ 扫描器
cd scanner_cpp
g++ -std=c++17 -O2 -o advanced_scanner advanced_main.cpp advanced_scanner.cpp
./advanced_scanner ../data/samples
# Go 网络扫描器
cd net_analyzer_go
go run netscan.go
# Python 分析器
python -m analyzer_py.analyzer
```
### 3. API 集成
**启动 API 服务器:**
```
cd web/api
uvicorn main:app --reload --port 8000
```
**API 端点:**
```
import requests
# 开始扫描
response = requests.post('http://localhost:8000/api/scan/start', json={
'target_directory': 'data/samples',
'scan_type': 'full',
'enable_ml': True
})
# 获取威胁
threats = requests.get('http://localhost:8000/api/threats').json()
# 生成报告
reports = requests.get('http://localhost:8000/api/reports').json()
```
## 📊 功能特性
### 高级恶意软件检测
- ✅ PE/ELF 可执行文件解析
- ✅ 用于加壳检测的熵分析
- ✅ 34+ 签名数据库
- ✅ 基于哈希的恶意软件识别
- ✅ 字符串提取和分析
- ✅ 反调试技术检测
- ✅ 5 级威胁分类
### 网络分析
- ✅ 使用 Scapy 进行数据包捕获
- ✅ 协议分析 (HTTP, DNS, TLS)
- ✅ 流量异常检测
- ✅ 端口扫描检测
- ✅ DDoS 检测
- ✅ IP 地理定位
- ✅ 威胁情报集成
### 报告与日志
- ✅ HTML 交互式仪表板
- ✅ PDF 执行摘要
- ✅ 包含多个工作表的 Excel 工作簿
- ✅ 用于 SIEM 集成的 CSV 导出
- ✅ 结构化 JSON 日志
- ✅ 实时 WebSocket 更新
### Web 功能
- ✅ 实时威胁监控
- ✅ 文件上传扫描
- ✅ 高级过滤和搜索
- ✅ 导出功能
- ✅ 可配置设置
- ✅ 通知系统 (Email, Discord, Telegram)
- ✅ API 密钥管理
## 🎯 使用场景
### 安全运营中心
- 实时威胁监控仪表板
- 自动告警生成
- 面向不同利益相关者的多格式报告
### 应急响应
- 快速恶意软件分析
- 网络流量调查
- 详细威胁情报
### 恶意软件研究
- 深度文件分析
- 模式签名开发
- 威胁家族分类
### 合规与审计
- 自动化安全扫描
- 全面的审计报告
- 历史数据追踪
## 📚 文档
- **`web/README.md`** - Web 界面文档
- **`web/QUICKSTART.md`** - 快速入门指南
- **`web/FEATURE_GUIDE.md`** - 完整功能参考
- **`scanner_cpp/README_ADVANCED.md`** - C++ 扫描器指南
- **`CHANGELOG.md`** - 版本历史与更新
## 🛠️ 配置
### 扫描器设置
编辑 `configs/rules.json` 以更新签名:
```
{
"signatures": [
{
"name": "UPX Packer",
"pattern": "555058",
"offset": 0,
"type": "packer"
}
]
}
```
### Web 界面设置
通过 **设置页面** 访问 (http://localhost:3000/settings):
- 扫描器配置
- 通知首选项
- API 密钥
- 系统参数
## 🔐 安全
### API 密钥(可选)
在设置页面配置:
- **VirusTotal** - 增强威胁情报
- **AbuseIPDB** - IP 信誉检查
### 通知
通过以下方式设置警报:
- **Email** - SMTP 配置
- **Discord** - Webhook URL
- **Telegram** - Bot token & chat ID
## 📈 性能
- **扫描速度**: ~1000 文件/秒 (小文件 < 1MB)
- **网络分析**: 实时数据包处理
- **Web 界面**: 响应式,支持 WebSocket 更新
- **API 响应**: 大多数端点 < 100ms
## 🤝 贡献
本项目致敬网络安全专业人员的严谨与传统。欢迎秉持这些标准的贡献。
## 📄 许可证
专为网络安全研究和分析开发的专有软件。
## 👤 作者
**Srijan** - 首席开发者和架构师
## 🎯 版本
**当前版本**: 3.0.0 (Web Interface Release)
详见 `CHANGELOG.md` 获取完整的版本历史。
## 🚀 入门清单
- [ ] 安装 Node.js, Python, C++, Go
- [ ] 克隆仓库
- [ ] 安装 Python 依赖 (`pip install -r requirements.txt`)
- [ ] 安装 Web 依赖 (`cd web && npm install`)
- [ ] 运行 Web 界面 (`cd web && run.bat` 或 `./run.sh`)
- [ ] 访问仪表板 (http://localhost:3000)
- [ ] 开始首次扫描
- [ ] 探索功能
**快速入门,请参阅:`web/QUICKSTART.md`**
**详细功能,请参阅:`web/FEATURE_GUIDE.md`**
**为网络安全专业人员用 ❤️ 打造**
标签:AMSI绕过, Apex, AV绕过, C++, ELF解析, FastAPI, Go, HTTP/HTTPS抓包, PE文件分析, Python, React, RESTful API, Ruby工具, Syscalls, TCP/IP协议栈, Web界面, 云存储安全, 仪表盘, 企业安全, 反取证, 多语言编程, 威胁检测, 安全评估, 异常检测, 态势感知, 提示词优化, 数据擦除, 无后门, 日志审计, 机器学习, 网络安全, 网络安全平台, 网络扫描, 网络资产管理, 自定义DNS解析器, 行为监控, 逆向工具, 隐私保护