benjari2004-hash/Context-Aware-Kitsune-IDS

GitHub: benjari2004-hash/Context-Aware-Kitsune-IDS

一个基于 Kitsune 的研究型网络入侵检测框架,融合上下文风险评估、自适应决策和可解释 AI,将异常分数转化为可解释的安全决策。

Stars: 0 | Forks: 0

# 上下文感知 Kitsune IDS ![架构图](https://raw.githubusercontent.com/benjari2004-hash/Context-Aware-Kitsune-IDS/main/architecture.png) 上下文感知 Kitsune IDS 是一个入侵检测流水线的研究实现,它将 Kitsune 风格的在线异常检测扩展到上下文风险评估、自适应决策阈值、攻击分类和可操作的反事实解释。 该项目集成了异常检测、上下文分析、自适应决策和可解释 AI 技术,以提高网络入侵检测系统的可解释性和操作相关性。 # 研究动机 传统的网络入侵检测系统通常仅依赖异常分数或分类标签。然而,异常分数并不总是能代表网络事件真实的运营风险。 相同的异常分数可能需要不同的响应,具体取决于: - 流量行为和上下文。 - 历史网络画像。 - 检测到的事件的风险等级。 - 误报和漏报的代价。 该项目研究了一种上下文感知的 IDS 流水线,可将原始异常信号转化为可解释且具备策略意识的安全决策。 # 架构概述 ``` Network Traffic (PCAP) | v Kitsune / KitNET Feature Extraction | v Online Anomaly Detection | v Context Feature Extraction + Profiling | v Risk Engine | v Adaptive Thresholding | v Context-Aware Decision Layer | +---------------+---------------+ | | v v Normal Traffic Attack Classification | v Counterfactual Explanations ``` 该系统遵循多阶段决策过程: 1. 网络流量通过 Kitsune 风格的在线异常检测进行处理。 2. 提取上下文特征和行为画像。 3. 风险评估调整对异常分数的解释。 4. 自适应阈值改善了在不断变化的流量条件下的检测。 5. 决策层确定最终的安全操作。 6. 解释模块为检测到的事件生成可解释的原因。 # 功能 ## 异常检测 - 使用 KitNET 实现基于 Kitsune 的在线异常检测。 - 流式网络流量分析。 - 基于特征的异常评分。 ## 上下文感知风险评估 - 上下文特征提取。 - 流量行为画像分析。 - 风险感知决策。 ## 自适应决策系统 - 动态阈值调整。 - 感知反馈的校准。 - 减少不必要的误报。 ## 攻击分析 - 异常检测后的攻击分类。 - 安全事件分类。 - 基于风险的优先级排序。 ## 可解释 AI - 针对 IDS 决策的反事实解释。 - 识别影响决策的特征变化。 - 用于可解释入侵检测的研究框架。 # 仓库结构 ``` Context-Aware-Kitsune-IDS/ │ ├── KitNET/ │ └── KitNET implementation │ ├── counterfactual_engine/ │ └── Counterfactual explanation methods │ ├── decision_layer/ │ └── Security decision and response policies │ ├── evaluation/ │ └── Evaluation pipelines and metrics │ ├── experiments/ │ └── Research experiments and analysis scripts │ ├── feedback/ │ └── Feedback and adaptive learning components │ ├── profiles/ │ └── Network behaviour profiles │ ├── paper/ │ └── Research paper sources and figures │ ├── main_ids.py │ └── Main IDS execution pipeline │ ├── kitsune_wrapper.py │ └── Kitsune integration interface │ ├── feature_extractor.py │ └── Network feature extraction │ ├── adaptive_threshold.py │ └── Adaptive threshold mechanism │ ├── context_features.py │ └── Context feature generation │ ├── risk_engine.py │ └── Context-aware risk scoring │ ├── attack_classifier.py │ └── Attack classification module │ ├── explain_pipeline.py │ └── Explanation generation pipeline │ ├── requirements.txt │ └── Python dependencies │ └── README.md ``` # 安装说明 ## 前置条件 - Python 3.10 或更新版本 - pip 包管理器 克隆仓库: ``` git clone https://github.com/benjari2004-hash/Context-Aware-Kitsune-IDS.git cd Context-Aware-Kitsune-IDS ``` 创建虚拟环境: ``` python -m venv .venv ``` ## Windows PowerShell 激活环境: ``` .\.venv\Scripts\Activate.ps1 ``` 安装依赖: ``` pip install -r requirements.txt ``` ## macOS/Linux 激活环境: ``` source .venv/bin/activate ``` 安装依赖: ``` pip install -r requirements.txt ``` # 使用说明 ## 在 Packet Capture 上运行 IDS 示例: ``` python main_ids.py --pcap /path/to/capture.pcap --mode NORMAL ``` 可用操作模式: ``` NORMAL SENSITIVE STRICT ``` 查看所有选项: ``` python main_ids.py --help ``` # 评估 该项目提供了一个用于测试检测性能的评估框架。 支持的评估任务包括: - 数据集预处理。 - 检测指标计算。 - 基线比较。 - 实验日志记录。 - 反事实解释评估。 示例: ``` python evaluation/run_unsw_experiment.py \ --csv /path/to/UNSW_NB15_training-set.csv \ --results evaluation/results ``` # 数据集 原始数据集和 packet capture 有意未包含在此仓库中。 支持的数据集包括: - UNSW-NB15 - 网络数据包捕获 (PCAP) 用户应从其官方来源下载数据集,并在执行期间提供本地路径。 数据集文件被排除在 Git 跟踪之外,以保持仓库的轻量化和可复现性。 # 实验框架 实验框架支持研究分析,包括: - 误报注入实验。 - 阈值自适应研究。 - 基于反馈的学习实验。 - 漂移分析。 - 消融研究。 - 反事实解释质量评估。 生成的文件,例如: - CSV 结果。 - 日志。 - 图表。 - Packet capture。 均在本地生成并排除在版本控制之外。 # 研究贡献 该项目探索了以下内容的结合: - 在线异常检测。 - 上下文感知安全分析。 - 自适应决策机制。 - 用于入侵检测的可解释 AI。 主要研究目标是改善异常检测输出与可操作安全决策之间的联系。 # 研究用途 此仓库旨在用于: - 学术研究。 - 实验性评估。 - IDS 算法开发。 在部署到运营网络之前,应在受控环境中验证配置、阈值和安全策略。 ## 研究论文 ### 混合 NIDS 中的覆盖锁定决策:形式化与反事实分解 本研究调查了混合网络入侵检测系统中反事实解释的结构性局限性,并引入了覆盖锁定决策的概念。 提交给 *Journal of Information Security and Applications (JISA)* 的手稿可在下方获取: [📄 阅读手稿](paper/Override_Locked_Decisions_Hybrid_NIDS.pdf) # 引用 如果您在学术研究中使用该项目,请引用: ``` @software{benjari2026contextawarekitsune, author = {Mohamed Benjari}, title = {Context-Aware Kitsune IDS}, year = {2026}, url = {https://github.com/benjari2004-hash/Context-Aware-Kitsune-IDS} } ``` # 许可证 该项目基于 MIT 许可证发布。 详情请参阅 LICENSE 文件。
标签:Kitsune, 可解释AI, 异常检测, 网络安全, 逆向工具, 隐私保护