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, 加密流量分析, 卡方检验, 学术研究, 安全告警, 容器化, 异常检测, 抗伪装检测, 无后门, 无监督学习, 本福特定律, 混合异常评分, 统计检验, 网络入侵检测系统, 网络安全, 网络流量分析, 逆向工具, 隐私保护, 香农熵