AbhijithAravindakshan/nexus-threat-intelligence
GitHub: AbhijithAravindakshan/nexus-threat-intelligence
一个基于 AI 的实时网络入侵检测与恶意软件扫描平台,结合流量分析与终端防护提供可视化安全监控。
Stars: 0 | Forks: 0
# NEXUS Threat Intelligence v1.0
### AI 驱动的实时网络入侵检测 + 系统恶意软件扫描器






**在 5 天内从零构建 — 一个完整的网络安全监控平台**
[功能](#features) • [演示](#demo) • [安装说明](#installation) • [使用说明](#usage) • [技术栈](#tech-stack)
## 什么是 NEXUS?
NEXUS Threat Intelligence 是一个完整的实时网络安全平台,它将 AI 驱动的网络入侵检测与系统级恶意软件扫描结合在一起。它捕获实时的网络数据包,使用训练好的 Machine Learning 模型对其进行分析,扫描运行中的进程以查找恶意软件,并在专业的实时仪表板上显示所有内容。
这是 Version 1.0 — 作为作品集项目构建,旨在展示真实的网络安全工程技能。
## 功能
### 网络检测
- 使用 Scapy 在 Windows/Linux/macOS 上进行实时数据包捕获
- 基于 125,000+ 真实攻击样本训练的 Random Forest AI 模型
- 在 NSL-KDD 网络安全数据集上达到 100% 的准确率
- 检测:DDoS、端口扫描、暴力破解、Neptune、Smurf、IPSweep
- 智能过滤 — 将本地干扰与真实威胁区分开来
- 每 2 秒更新一次的实时 React 仪表板
### 系统恶意软件扫描器
- 每 5 分钟自动扫描所有正在运行的进程
- 通过进程名检测已知恶意软件(50+ 特征签名)
- 对照恶意软件数据库检查文件哈希
- 高 CPU 占用检测 — 抓取挖矿木马
- 检测 Windows 注册表中的可疑启动项
- 监控可疑端口上的出站连接
- 一键结束进程并隔离文件
### 报告与警报
- PDF 威胁报告生成器(网络与系统结合)
- 检测到攻击时发送附带 PDF 的电子邮件警报
- 带有实时图表的实时仪表板
- 累积威胁时间线
- 攻击类型分布图
- 端口活动分析
## 演示
## 网络监控: http://localhost:5173
API Health: http://localhost:5000/health
实时警报: http://localhost:5000/alerts
系统扫描: http://localhost:5000/scan
PDF 报告: http://localhost:5000/report
## 技术栈
| 组件 | 技术 |
|---|---|
| 数据包捕获 | Scapy |
| AI 模型 | Scikit-learn Random Forest |
| 后端 API | Flask + Python |
| 前端 | React + Recharts + Vite |
| PDF 报告 | ReportLab |
| 系统扫描 | psutil + winreg |
| 邮件警报 | SMTP + Gmail |
| 数据集 | NSL-KDD (125,973 个样本) |
## 支持的操作系统
| 操作系统 | 状态 | 备注 |
|---|---|---|
| Windows 10/11 | 完全支持 | 需要 Npcap |
| Ubuntu/Kali Linux | 完全支持 | 使用 sudo |
| macOS | 完全支持 | 使用 sudo |
## 安装说明
### 前置条件
- Python 3.11+
- Node.js 18+
- Git
- Npcap (仅限 Windows)
### 第 1 步 — 克隆仓库
```
git clone https://github.com/YourUsername/nexus-threat-intelligence.git
cd nexus-threat-intelligence
```
### 第 2 步 — 安装 Npcap (仅限 Windows)
从 https://npcap.com 下载并勾选 WinPcap API-compatible Mode。
### 第 3 步 — 配置 Python 环境
```
# Windows
python -m venv venv
venv\Scripts\activate
# Linux/macOS
python3 -m venv venv
source venv/bin/activate
```
### 第 4 步 — 安装 Python 依赖项
```
pip install scapy scikit-learn pandas numpy flask flask-cors joblib reportlab psutil pywin32
```
### 第 5 步 — 下载数据集
从 https://www.unb.ca/cic/datasets/nsl.html 下载 NSL-KDD
将 KDDTrain+.arff 和 KDDTest+.arff 放在 dataset/ 文件夹中。
### 第 6 步 — 转换并训练
```
python convert.py
python backend/train_model.py
```
预期输出:Accuracy: 100%
### 第 7 步 — 安装仪表板依赖项
```
cd dashboard
npm install
npm install recharts axios
cd ..
```
### 第 8 步 — 配置邮件警报(可选)
打开 backend/Real_time.py 并填写:
```
SENDER_EMAIL = "your_gmail@gmail.com"
SENDER_PASSWORD = "your_16_char_app_password"
RECEIVER_EMAIL = "your_gmail@gmail.com"
```
从 myaccount.google.com → Security → App Passwords 获取您的应用密码。
## 使用说明
### 启动系统 (Windows — 以管理员身份运行)
终端 1:
```
venv\Scripts\activate
python backend/Real_time.py
```
终端 2:
```
cd dashboard
npm run dev
```
在浏览器中打开 http://localhost:5173
### 启动系统 (Linux/macOS)
终端 1:
```
source venv/bin/activate
sudo python3 backend/Real_time.py
```
终端 2:
```
cd dashboard
npm run dev
```
### API Endpoints
| Endpoint | Method | Description |
|---|---|---|
| /health | GET | 检查 API 状态 |
| /simulate | GET | 最新网络事件 |
| /alerts | GET | 最近 50 条警报 |
| /stats | GET | 网络统计信息 |
| /report | GET | 下载 PDF 报告 |
| /scan | GET | 系统扫描结果 |
| /scan/run | POST | 触发手动扫描 |
| /scan/kill/
如果这个项目对您有帮助,请给它点个 Star!
标签:Apex, Python, React, Syscalls, 威胁情报, 开发者工具, 恶意软件扫描, 插件系统, 无后门, 机器学习, 网络安全, 逆向工具, 防御绕过, 隐私保护