sagarkorde/bead-nids
GitHub: sagarkorde/bead-nids
基于本福特定律与香农熵的轻量级无监督网络入侵检测系统,无需解密即可对加密流量进行抗模仿的异常检测。
Stars: 0 | Forks: 0
# BEAD — 本福特熵异常检测器
**BEAD** 是一个轻量级的无监督网络入侵检测系统 (NIDS)
它将基于**本福特定律**的首位数字一致性分析与**香农熵**相结合,
形成一个单一的混合异常分数,以实现对恶意流量的抗模仿检测
——而无需解密有效载荷。
本仓库附属于 IEEE 会议论文:
## BEAD 工作原理
```
Raw Packets
│
▼
[Layer 1] Data Acquisition — libpcap / DPDK / BPF filtering
│
▼
[Layer 2] Flow Preprocessing — 5-tuple hash, IAT & packet-size extraction
│
▼
[Layer 3] Statistical Analysis — MAD, Chi-square, KS conformity tests
+ Shannon Entropy Hybrid Engine
│
▼
[Layer 4] Decision & Alerting — Threshold comparison → SIEM / CEF alert
```
### 混合异常分数
```
S = α · MAD + (1 − α) · |H_obs − H_B|
```
其中 `MAD` 是与本福特分布的平均绝对偏差,
`H_obs` 是观测到的香农熵,`H_B ≈ 3.134 bits` 是
本福特分布的期望熵,`α = 0.65` 是经验校准的权重。
当 `S > τ`(第 95 百分位基线阈值)
或 `χ² > 15.51`(α = 0.05, df = 8)时触发警报。
## 仓库结构
```
bead-nids/
├── benford_analyzer.py # Core BEAD engine (MAD, χ², KS, entropy, hybrid score)
├── test_demo.py # Synthetic test suite and visualisation demo
├── conference_paper.tex # IEEE LaTeX source of the companion paper
├── requirements.txt # Python dependencies
└── README.md
```
## 快速开始
```
# 1. Clone
git clone https://github.com/sagarkorde/bead-nids.git
cd bead-nids
# 2. 安装依赖
pip install -r requirements.txt
# 3. 运行测试套件
python test_demo.py
```
### 编程式使用
```
from benford_analyzer import BenfordAnalyzer
analyzer = BenfordAnalyzer()
# 分析一系列数据包大小(整数,字节)
packet_sizes = [64, 1500, 128, 576, 1024, ...]
results = analyzer.analyze(packet_sizes, verbose=True)
print(f"MAD: {results['mad']:.4f}")
print(f"Chi-square: {results['chi_square_statistic']:.4f}")
print(f"Compliant: {results['compliant']}")
```
## 核心特性
| 属性 | 值 |
|---|---|
| 检测范式 | 无监督(无需标签) |
| 需要访问有效载荷 | 否 |
| 加密不可知 | 是(TLS 1.3, QUIC, HTTP/3) |
| 计算复杂度 | 每个滑动窗口 O(n) |
| 默认窗口大小 | 1 000 个数据包 |
| MAD 阈值 | > 0.015 → 可疑 |
| 卡方阈值 | > 15.51 (α = 0.05, df = 8) |
| 吞吐量 (ARM Cortex-A72) | 148 000 pps,6.7 µs 延迟 |
| 模仿攻击下的 F1 分数 | 0.891(对比仅使用 MAD 的 0.612) |
## NSL-KDD 结果(平均值 ± 1 标准差,10 次运行)
| 方法 | 准确率 | 召回率 | F1 | 误报率 (FPR) |
|---|---|---|---|---|
| 仅本福特 MAD(无标签) | 0.881 ± .012 | 0.863 ± .015 | 0.872 ± .011 | 0.112 ± .009 |
| RF, 41 特征 † | 0.952 ± .010 | 0.941 ± .006 | 0.946 ± .006 | 0.047 ± .004 |
| Kitsune AE † | 0.934 ± .009 | 0.958 ± .009 | 0.946 ± .007 | 0.063 ± .005 |
| Draper-Gil et al. † | 0.906 ± .009 | 0.882 ± .014 | 0.894 ± .010 | 0.091 ± .007 |
| **BEAD(本文提出,无标签)** | **0.943 ± .009** | **0.937 ± .008** | **0.940 ± .008** | **0.058 ± .004** |
† 监督学习——使用带标签的训练数据;仅作为背景参考。
## 引用
如果本研究对您的工作有所帮助,请引用:
```
@inproceedings{korde2025bead,
title = {{BEAD}: A Benford-Entropic Anomaly Detector for
Mimicry-Resistant Intrusion Detection in Encrypted Network Traffic},
author = {Korde, Anuprita S. and Siddavatam, Irfan},
booktitle = {Proc. IEEE Conf.},
year = {2025}
}
```
## 许可证
详情请参阅 [LICENSE](LICENSE)。
标签:5元组, CEF, DPDK, IEEE论文, KS检验, NIDS, Python, 加密流量分析, 卡方检验, 学术研究, 安全告警, 容器化, 异常检测, 抗伪装检测, 无后门, 无监督学习, 本福特定律, 混合异常评分, 统计检验, 网络入侵检测系统, 网络安全, 网络流量分析, 逆向工具, 隐私保护, 香农熵