ysf-sheikh/security-event-correlation-and-risk-scoring-system

GitHub: ysf-sheikh/security-event-correlation-and-risk-scoring-system

一个端到端的安全情报处理管道,模拟企业SIEM行为,结合规则引擎与机器学习实现多源事件的异常检测、多步骤攻击关联和风险评分。

Stars: 1 | Forks: 0

# Nexus Engine – 安全事件关联与威胁检测系统 ## 概述 Nexus Engine 是一个模拟的安全运营中心 (SOC) pipeline,专为实时事件摄取、异常检测、基于规则的分析和跨事件关联而设计。 它模拟了现代安全平台(SIEM/UEBA 系统)如何处理和分析来自多种来源的遥测数据,例如身份验证日志、金融交易和网络流量。 该系统将确定性规则与机器学习相结合,以检测可疑行为并生成基于风险的警报。 ## 主要功能 ### 多源事件模拟 - 身份验证事件生成(登录尝试、暴力破解模拟) - 交易事件生成(类欺诈金融行为) - 网络事件生成(端口扫描和流量模拟) ### 事件处理 Pipeline - 将原始事件标准化为统一的 schema - 用于实时处理的内存摄取队列 - 用于下游分析的批量检索 ### 检测引擎 - 针对已知攻击模式的基于规则的检测 - 使用 Isolation Forest 的机器学习异常检测 - 跨多个事件的状态化关联 ### 关联引擎 - 检测多步骤攻击模式,例如: - 账户接管序列 - 不可能旅行行为 - 跨事件攻击链 ### 风险评分系统 - 混合评分模型,结合: - 基于规则的严重性信号 - 机器学习异常分数 - 输出标准化的风险级别(LOW、MEDIUM、HIGH) ### 可视化仪表板 - 基于 Streamlit 的 SOC 仪表板 - 实时事件监控 - 风险分布和事件跟踪 - 交互式威胁可视化 ## 系统架构 系统被组织为以下几个层级: 1. 数据生成层 - AuthEventGenerator - TransactionEventGenerator - NetworkEventGenerator 2. 摄取层 - IngestionPipeline - Normalizer 3. 检测层 - RuleEngine - AnomalyModel (Isolation Forest) - CorrelationEngine 4. 评分层 - RiskScorer 5. 展示层 - Streamlit SOC 仪表板 ## 数据流 1. 事件从模拟源生成 2. 事件被标准化为统一的 schema 3. 事件进入 ingestion pipeline 的队列中 4. 规则引擎评估确定性安全规则 5. ML 模型分配异常分数 6. 关联引擎识别多步骤攻击 7. 风险评分器将信号组合为最终的风险分数 8. 仪表板实时可视化结果 ## 核心技术 - Python 3.10+ - NumPy - scikit-learn (Isolation Forest) - Streamlit - Pandas - Plotly ## 安装说明 ### 1. 克隆仓库 ``` git clone https://github.com/ysf-sheikh/security-event-correlation-and-risk-scoring-system cd security-event-correlation-and-risk-scoring-system ``` ### 2. 创建虚拟环境 ``` python -m venv venv source venv/bin/activate # Linux / Mac venv\Scripts\activate # Windows ``` ### 3. 安装依赖 ``` pip install -r requirements.txt ``` ## 运行系统 ### 启动仪表板 ``` streamlit run app.py ``` ### 运行核心 Pipeline(可选 CLI 模式) ``` python main.py ``` ## 示例使用场景 1. 安全监控 - 检测暴力破解登录尝试 - 识别异常的交易行为 - 标记可疑的网络扫描活动 2. 行为分析 - 随时间跟踪用户活动模式 - 检测偏离基线的行为 - 关联跨系统事件 3. 威胁模拟 - 多步骤攻击链建模 - 内部威胁模拟 - 跨位置异常检测 ## 配置 ### 系统参数通过以下方式控制: ``` config/settings.py ``` ## 许可证 本项目仅供教育和研究目的使用。
标签:Kubernetes, 逆向工具