ilielucianno/DarkGhost-NDR
GitHub: ilielucianno/DarkGhost-NDR
一个基于行为异常检测的网络检测与响应(NDR)系统,旨在以透明、轻量的方式识别内网中的未知威胁与异常流量。
Stars: 1 | Forks: 0
# DarkGhost NDR v3.0.1
网络检测与响应 — 基于异常的行为分析
由 Ilie Lucian 构建 — 2026 年 4 月
## 截图

## 功能
DarkGhost 监控网络流量并学习每台设备的正常行为。当出现变化时,它会抛出一个 0 到 1 之间的异常分数警报。
它不使用特征码。它检测异常行为,而不仅仅是已知攻击。
## 检测功能
| 功能 | 描述 |
|------|------|
| 基线学习 | 按设备学习正常行为(协议、端口、目的地、每小时模式) |
| 异常评分 | 分数范围 0.0 到 1.0 |
| 风险等级 | 严重 / 高 / 中 / 低 |
| TTL 指纹识别 | 检测 MAC/IP 欺骗(Windows=128,Linux=64,路由器=255) |
| 端口扫描检测 | 识别对多个端口的快速连接尝试 |
| 敏感端口告警 | SSH(22)、RDP(3389)、Metasploit(4444)、VNC(5900) |
| 大包检测 | 标记可能的数据外泄 |
| 夜间流量检测 | 00:00 至 06:00 之间的活动 |
| 流量突增检测 | 报文速率的突然增加 |
## 版本历史
### v1(初始版本)
- 每台设备的基线学习
- 带加权公式的异常评分
- 实时仪表板(含操作系统识别)
- 用于欺骗检测的 TTL 指纹识别
### v2
- 新增端口扫描检测
- 新增敏感端口告警
- 新增大包检测
- 新增夜间流量检测
- 改进评分算法
### v3(当前版本)
- 新增流量突增检测(基于速率的异常)
- 优化告警引擎
- 提升稳定性并减少误报
## 计分原理
每一项异常都会加分。最终分数按权重计算:
最终 =(最高值 × 0.6)+(平均值 × 0.4)
分数范围从 0.1(正常)到 0.95(严重)。
风险等级:
- 0.80 - 1.00:严重
- 0.60 - 0.79:高
- 0.40 - 0.59:中
- 0.20 - 0.39:低
- 0.00 - 0.19:正常
## 架构
网络流量(SPAN 端口)→ Scapy 捕获 → 基线引擎 → 异常检测器 → 告警引擎 → Flask 仪表板
无需数据库。基线每 30 秒保存到 baseline.json。
## 使用技术
- Python 3(Scapy、Flask、requests)
- HTML/CSS/JS(仪表板)
- JSON 用于存储
## 仓库结构
DarkGhost-NDR/
├── README.md
├── screenshot.png
└── docs/
├── architecture.md
├── deployment.md
└── anomaly_scoring.md
注意:本仓库仅包含文档。源代码为专有。
## 部署要求
- Ubuntu 22.04 或更高版本
- Python 3.10 或更高版本
- 混杂模式的网络接口
- 核心交换机上的 SPAN / 镜像端口
## 为什么选择 DarkGhost 而非商业 NDR
| 方面 | 商业产品 | DarkGhost |
|------|----------|-----------|
| 价格 | 50k - 200k 欧元/年 | 可负担 |
| 检测 | 行为 + 专有机器学习 | 行为 + 透明 |
| 误报 | 已知问题 | 可调节 |
| 透明度 | 黑盒 | 开放逻辑 |
| 部署 | 复杂 | 轻量 |
## 作者
Ilie Lucian — 网络安全工程师
塞浦路斯
LinkedIn:linkedin.com/in/ilielucian
GitHub:github.com/ilielucianno
## 许可证
专有。不开放源代码。如需授权或演示,请联系作者。
## 备注
基于管理一个 15 人 IT 团队的网络安全的实际经验构建。在家庭和小型企业网络上测试通过。
标签:AMSI绕过, Darktrace替代, NDR, TTL指纹识别, 反欺骗, 基线学习, 多模态安全, 夜间流量检测, 大包检测, 威胁检测, 异常评分, 敏感端口告警, 数据可视化, 流量突增检测, 端口扫描检测, 网络检测与响应, 网络流量分析, 行为异常检测, 设备行为画像, 逆向工具