ian-cowley/MLNetAnomalyDetection
GitHub: ian-cowley/MLNetAnomalyDetection
基于 ML.NET 和 WPF 的 Windows 桌面网络异常检测系统,提供实时流量监控与 AI 驱动的异常告警。
Stars: 0 | Forks: 0
# ML.NET 网络异常检测
一个专业的、由 **ML.NET** 和 **WPF** 驱动的实时网络流量监控与异常检测系统。本应用采用 Service-Client 架构,提供高性能的数据包分析与丰富、交互式的仪表板。
## 🚀 功能特性
- **实时分析**:使用 `SharpPcap` 以毫秒级延迟监控网络流量。
- **AI 驱动检测**:利用 ML.NET 异常检测来识别异常流量模式、端口扫描和数据峰值。
- **Service-Client 架构**:
- **后台服务**:一个高权限 Windows Service,负责执行繁重的数据包捕获和 AI 推理任务。
- **系统托盘 UI**:一个低权限用户应用程序,提供即时警报和仪表板访问功能。
- **交互式仪表板**:
- 显示流量与异常分数的实时图表。
- 详细指标:数据包/秒、唯一 IP 数、异常端口流量和出站比例。
- 支持手动选择适配器的高对比度 UI。
- **持久化**:在机器重启后记住您首选的网络适配器。
## 🏗️ 架构
```
graph TD
A["Network Interface (NIC)"] -->|Raw Packets| B["SharpPcap Capture Engine"]
B --> C["ML.NET Anomaly Service"]
C -->|Stats & Anomalies| D["Named Pipe Server (LocalSystem)"]
D -->|IPC| E["WPF Dashboard (User Context)"]
E -->|UI Commands| D
E --> F["System Tray / Toast Alerts"]
```
## 🛠️ 入门指南
### 前置条件
- **.NET 10 SDK** 或更高版本。
- **NPcap**(安装时需选择 WinPcap 兼容模式)。
- **WiX Toolset v4**(用于构建安装程序)。
### 安装说明
1. 从 [Releases](https://github.com/ian-cowley/MLNetAnomalyDetection/releases) 页面下载最新的 `MLNetAnomalyDetection.msi`。
2. 运行安装程序以注册后台服务和托盘应用程序。
3. 从开始菜单或通过托盘图标启动应用程序。
### 开发指南
```
# 克隆 repository
git clone https://github.com/ian-cowley/MLNetAnomalyDetection.git
# Navigate 到 source
cd src
# 还原并构建
dotnet build
```
## 📊 异常指标
系统基于以下标准评估流量:
- **数据包速度 (Packet Velocity)**:数据包频率的突然激增。
- **IP 多样性 (IP Diversity)**:异常数量的唯一 IP 连接。
- **端口画像 (Port Profiling)**:针对罕见或非标准端口的流量。
- **非对称性 (Asymmetry)**:高出站与入站流量比率。
## 📜 致谢
由 **Ian Cowley** 和 **Antigravity (Google DeepMind)** 开发。
## 📄 许可证
本项目基于 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。
标签:Apex, IPC通信, ML.NET, .NET 10, SharpPcap, Windows服务, Windows桌面应用, WPF, 人工智能, 仪表盘, 异常检测, 机器学习, 用户模式Hook绕过, 端口扫描检测, 系统托盘, 统计可视化, 网络安全, 网络智能, 防御绕过, 隐私保护