rudhrancodes-dev/Aegis

GitHub: rudhrancodes-dev/Aegis

一个基于隔离森林的实时网络异常检测系统,通过模拟流量与带声音警报的深色 UI 帮助识别可疑行为。

Stars: 0 | Forks: 0

# Aegis — 神经网络防御系统 ## 功能 Aegis 持续监控模拟网络流量,并使用 **隔离森林(Isolation Forest)** 模型标记可疑活动——该算法类别与企业级入侵检测系统相同。 每秒它会: - 生成真实的网络数据包(IP、端口、数据包大小、持续时间、TCP 标志) - 以 1/5 的概率注入随机异常 - 运行机器学习推理,将流量分类为 **NORMAL** 或 **ALERT** - 在带有声音警报的实时更新深色 UI 中显示结果 ## 特性 - **通过 scikit-learn 隔离森林实现的 ML 驱动检测**(无监督学习,无需标注数据) - **模拟网络流量**,包含真实字段和注入的异常 - **使用 Tkinter 构建的实时 UI**——深色主题、霓虹蓝色点缀、滚动日志面板 - **异常检测时的声音警报**(macOS 系统提示音) - **用于跨异常相似性检查的内存模块** - **通过 PyInstaller 打包为 macOS `.app`** ## 技术栈 | 层 | 工具 | |---|---| | 语言 | Python 3.11 | | 机器学习模型 | 隔离森林(scikit-learn) | | UI | Tkinter | | 数据模拟 | NumPy + 自定义数据包生成器 | | 打包 | PyInstaller + create-dmg | ## 项目结构 ``` Aegis/ ├── main.py # Entry point — orchestrates detection pipeline ├── detector.py # Isolation Forest anomaly detection ├── simulator.py # Network traffic + anomaly generator ├── memory.py # Stores past anomalies, similarity check ├── ui.py # Tkinter dark UI with live logs └── requirements.txt ``` ## 快速开始 ``` # 安装依赖 pip install -r requirements.txt # 运行 UI python3 ui.py # 或无头运行 python3 main.py ``` ## 检测内容 | 异常类型 | 信号 | |---|---| | 端口扫描 | 不寻常/高数值端口号 | | 数据包洪水 | 超大数据包大小(>9000 字节) | | 慢速攻击 | 异常长的连接持续时间 | | 畸形流量 | 可疑的 TCP 标志组合 | ## 截图 *(运行 `python3 ui.py` 查看实际效果)* *由 [@rudhrancodes-dev](https://github.com/rudhrancodes-dev) 构建——将咖啡 ☕ 转化为安全代码 🔐*
标签:Apex, create-dmg, Isolation Forest, macOS打包, PyInstaller, Python, scikit-learn, SEO: 实时异常检测, SEO: 机器学习入侵检测, SEO: 网络安全工具, Tkinter, 内存模块, 图形界面, 声音告警, 实时日志, 异常检测, 慢速攻击检测, 数据包生成, 无后门, 无监督学习, 暗色主题, 机器学习, 流量洪泛检测, 漏洞挖掘, 相似性检测, 端口扫描检测, 网络安全, 网络流量仿真, 隐私保护, 隔离森林