CYSECPRP/zt-dt-industrial-cps

GitHub: CYSECPRP/zt-dt-industrial-cps

该项目通过零信任数字孪生和机器学习模型,实现对工业网络物理系统的实时异常检测,以增强安全韧性。

Stars: 105 | Forks: 2

ZT-DT
# 工业网络物理系统实时异常检测的
零信任数字孪生方案
[![Python](https://img.shields.io/badge/Python-3.8+-3776AB?style=for-the-badge&logo=python&logoColor=white)](https://python.org) [![TensorFlow](https://img.shields.io/badge/TensorFlow-2.16+-FF6F00?style=for-the-badge&logo=tensorflow&logoColor=white)](https://tensorflow.org) [![scikit-learn](https://img.shields.io/badge/scikit--learn-1.3.2-F7931E?style=for-the-badge&logo=scikit-learn&logoColor=white)](https://scikit-learn.org) [![Streamlit](https://img.shields.io/badge/Streamlit-Dashboard-FF4B4B?style=for-the-badge&logo=streamlit&logoColor=white)](https://streamlit.io) [![License](https://img.shields.io/badge/License-MIT-22C55E?style=for-the-badge)](LICENSE) [![IEEE Published](https://img.shields.io/badge/📄%20Published-IEEE%20NMITCON%202025-8B5CF6?style=for-the-badge)](https://doi.org/10.1109/NMITCON65824.2025.11188236) [![Zero Trust](https://img.shields.io/badge/🔒%20Security-Zero%20Trust-0EA5E9?style=for-the-badge)]() [![F1 Score](https://img.shields.io/badge/🎯%20F1--Score-≥94.5%25-EF4444?style=for-the-badge)]() [![Response Time](https://img.shields.io/badge/⚡%20Response-<2%20seconds-F59E0B?style=for-the-badge)]()

**TTEH 实验室 · 达亚南德萨加尔大学工程学院** *印度卡纳塔克邦班加罗尔 – 562112*
| | | |:---:|---| | **🏭 问题** | 工业网络物理系统面临绕过传统边界安全模型的网络攻击 | | **💡 解决方案** | 数字孪生 + 双重机器学习模型 + 零信任引擎,实现实时连续威胁检测 | `零信任安全`  ·  `数字孪生`  ·  `异常检测`  ·  `工业CPS`  ·  `实时机器学习`

📋 目录

  | # | 章节 | 描述 | |:-:|---------|-------------| | 1 | [🔍 问题陈述](#-1-problem-statement) | 传统工业控制系统安全为何失效 | | 2 | [🏗️ 系统架构](#️-2-system-architecture) | 三层防御设计 | | 3 | [⚙️ 工作原理](#️-3-how-it-works) | 端到端流水线详解 | | 4 | [🔧 核心模块](#-4-core-modules) | 深入探讨每个组件 | | 5 | [🖥️ 实时仪表盘](#️-5-live-dashboard) | 实时安全运营中心监控界面 | | 6 | [📊 结果与基准](#-6-results--benchmarks) | 性能指标与对比 | | 7 | [🗂️ 项目结构](#️-7-project-structure) | 代码库组织 | | 8 | [🚀 快速入门](#-8-quick-start) | 安装与使用指南 | | 9 | [📦 数据集](#-9-datasets) | BATADAL 与 SWaT 基准数据集 | | 10 | [⚠️ 局限性](#️-10-limitations) | 已知约束条件 | | 11 | [🤝 贡献指南](#-11-contributing) | 如何参与贡献 | | 12 | [👥 团队](#-12-team) | 贡献者与导师 |  
## 🔍 1. 问题陈述 工业网络物理系统运营着关键基础设施——水处理厂、电网、生产线。这些系统严重依赖相互连接的传感器、可编程逻辑控制器和人机界面。然而,它们仍受**过时的基于边界的安全模型**保护,该模型假设一旦用户或数据包进入网络边界即被信任。这导致检测延迟、运营中断和更高的安全风险。 **当前安全缺口:** | 缺口 | 影响 | |-----|--------| | 🚪 **边界信任模型** | 传统防御假设网络边界内是可信的,使得攻击者一旦突破边界便可不受限制地访问 | | ⏱️ **检测延迟** | 基于规则的入侵检测系统通常在攻击开始数小时甚至数天后才发现入侵,此时系统已被操纵 | | 🔎 **上下文有限** | 标准异常检测缺乏历史上下文,容易受到逐步偏离正常基线的复杂攻击的影响 | | 🧑 **手动响应** | 大多数异常检测系统需要人工干预来确认威胁并触发缓解措施,引入危险的延迟 | **零信任方法:** 零信任不信任一次认证的用户或系统,而是持续根据行为基线验证所有活动。在工业背景下,"信任"意味着基于物理/历史模式,相信传感器的读数在数学上是真实的。每个传感器读数和事务都会被实时评估,结合: - **行为预测:** 机器学习模型充当数字孪生,根据历史物理和操作模式预测物理系统的预期正常状态。 - **持续验证:** 每个传感器读数都会根据这些预测进行评分。默认不给予任何"信任"或"疑点利益",即使数据来自已知的经认证的PLC。 - **自适应执行:** 访问控制策略基于衰减模型动态调整。系统不仅能进行二元"阻止/允许"操作,还可以实时限制操作或完全隔离可疑组件。 本框架的目标是通过针对工业环境优化的零信任设计,提供持续验证、实时异常检测和自适应访问控制。 ### 传统安全 vs. 零信任 ``` graph LR subgraph TRADITIONAL["❌ Traditional Perimeter Security"] direction TB A["🔓 Trust Boundary"] --> B["Trusted Zone"] B --> C["Attacker moves freely"] C --> D["Breach detected hours later"] end subgraph ZEROTRUST["✅ Zero Trust Architecture"] direction TB E["🔒 Never Trust"] --> F["Verify ALL entities"] F --> G["Verify at ALL times"] G --> H["🛡️ Immediate response"] end TRADITIONAL -. "Our Approach" .-> ZEROTRUST style TRADITIONAL fill:#2d1117,stroke:#f85149,color:#fff style ZEROTRUST fill:#0d1f0d,stroke:#3fb950,color:#fff style A fill:#1a1a2e,stroke:#f85149,color:#fff style B fill:#1a1a2e,stroke:#f85149,color:#fff style C fill:#1a1a2e,stroke:#f85149,color:#fff style D fill:#1a1a2e,stroke:#f85149,color:#fff style E fill:#0f3460,stroke:#3fb950,color:#fff style F fill:#0f3460,stroke:#3fb950,color:#fff style G fill:#0f3460,stroke:#3fb950,color:#fff style H fill:#0f3460,stroke:#3fb950,color:#fff ``` ## 🏗️ 2. 系统架构 该框架由**三个协调的子系统**组成,它们以闭环流水线方式工作,持续识别、验证和响应威胁:
🔮 数字孪生核心 🛡️ 零信任引擎 💉 攻击注入器
正常CPS行为的虚拟副本。它持续监控传入的操作数据,并通过隔离森林集成评分机制检测偏差。 **输出:** 异常分数 `(0–1)` 为异常提供时间上下文。使用基于EMA的信任评分,通过自适应、基于风险的阈值,根据过去行为评估异常证据。 **输出:** `允许` · `限制` · `隔离` 模拟真实攻击场景(放大、欺骗、漂移)进行验证。 **输出:** 带标签的攻击真实情况
### 架构图 ``` flowchart TD A["🏭 Physical CPS Components\n(Sensors / Actuators)"] B["🔮 Digital Twin Module\n(Behavior Prediction)"] C["🔍 Anomaly Detection Engine\n(Isolation Forest + AutoEncoder)"] D["🛡️ Zero Trust Policy Engine\n(Trust Scoring + EMA)"] E["🚦 Access Decision Module\nALLOW · RESTRICT · ISOLATE"] F["📊 MONITOR"] G["📝 LOG & UPDATE"] H["🔒 ENFORCE"] A -->|"Real-time Sensor Data"| B B -->|"Predicted Behavior d̂"| C C -->|"Anomaly Score Aᵢ"| D D -->|"Trust Score Tᵢ(t)"| E E --> F E --> G E --> H style A fill:#1a1a2e,stroke:#00B4D8,color:#fff style B fill:#16213e,stroke:#0EA5E9,color:#fff style C fill:#1a1a2e,stroke:#F59E0B,color:#fff style D fill:#16213e,stroke:#8B5CF6,color:#fff style E fill:#1a1a2e,stroke:#EF4444,color:#fff style F fill:#0f3460,stroke:#22C55E,color:#fff style G fill:#0f3460,stroke:#22C55E,color:#fff style H fill:#0f3460,stroke:#22C55E,color:#fff ``` ### 📸 系统仪表盘预览
![仪表盘初始化](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/0e37feacc6153043.png) *安全运营中心仪表盘 — 初始状态* ![实时监控](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/91a9f1ec2a153044.png) *实时监控 — 安全状态*
## ⚙️ 3. 工作原理 该框架通过**三个集成的阶段**在连续反馈循环中运行:
### 阶段一 — 训练与基线建立 ``` 📥 Collect clean operational data (50-100 timesteps) ↓ 🧠 Train Isolation Forest on normal behavior distribution ↓ 🎯 Calibrate anomaly thresholds via grid search + 5-fold CV ↓ 💾 Store model weights & initial trust scores ```
### 阶段二 — 实时监控与信任评估 *系统并非对单个孤立数据点做出二元决策,而是计算一个运行的"信任分数"。指数移动平均确保单个噪声读数不会触发误报,而持续攻击会在数学上迫使信任分数低于可接受阈值,触发自动隔离。* ``` 📡 Ingest streaming sensor data (no buffering) ↓ 🔮 Digital Twin computes reconstruction error ↓ 🌲 Isolation Forest scores: normal (−1) or anomalous (+1) ↓ 📊 Normalize to 0–1 anomaly score ↓ 🛡️ Update trust via EMA: Trust(t) = α × Trust(t-1) + (1−α) × (1 − Anomaly) ↓ 🚦 Apply policy: T ≥ 0.80 → ALLOW │ 0.50 ≤ T < 0.80 → RESTRICT │ T < 0.50 → ISOLATE ```
### 阶段三 — 攻击模拟与验证 ``` 💉 Inject controlled anomalies (scaling, spoofing, drift) ↓ 📏 Measure TPR, FPR, detection latency ↓ 📈 Evaluate Precision, Recall, F1-Score against ground truth ↓ 🔄 Fine-tune thresholds without disrupting live operations ```
## 🔧 4. 核心模块 ### 4.1 🔮 数字孪生核心 系统的行为基础——对预期工厂运行建模并识别偏差。与分析"正常"数据(在动态工业系统中可能在统计上复杂)不同,数字孪生使用**隔离森林**算法来隔离异常。因为异常的读数变化罕见且在统计上不同,它们在数学上更容易被隔离,从而实现极快的实时威胁检测。
**隔离森林集成:** - 100个估计器,污染率 = 0.05 - 在高维空间中工作,无需距离度量。这避免了具有数百个传感器的系统中的"维度灾难"。 - 毫秒级推理(每样本约1ms) - 使用50个时间步的清洁基线数据进行训练 **传感器输入:** | 传感器 | 基线 | 噪声σ | |--------|----------|---------| | 流速 | 50.0 | ±2.0 | | 压力 | 120.0 | ±5.0 | | 温度 | 22.5 | ±0.5 | | 液位 | 8.0 | ±0.2 | | 泵速 | 1500.0 | ±10.0 | ``` class DigitalTwin: def __init__(self): self.model = IsolationForest( contamination=0.05, random_state=42 ) self._baseline_training() def evaluate(self, sensor_data): """Returns 1 (anomaly) or 0 (normal)""" features = np.array( [list(sensor_data.values())] ) prediction = self.model.predict( features )[0] return 1 if prediction == -1 else 0 ```
### 4.2 🛡️ 零信任策略引擎 将时间点异常分数转换为具有动态访问控制的**持久信任状态**。
**信任公式:** ``` Trust(t) = α × Trust(t-1) + (1−α) × Behavior_Score ``` | 参数 | 值 | 用途 | |-----------|-------|---------| | α (alpha) | 0.80 | 80%历史权重 | | τ_high | 0.80 | 允许阈值 | | τ_low | 0.50 | 隔离阈值 | | 初始信任 | 1.0 | 完全信任起始 | **策略动作:** | 动作 | 信任范围 | 响应 | |--------|:-----------:|----------| | ✅ **允许** | `T > 0.80` | 完全访问,正常操作 | | ⚠️ **限制** | `0.50 ≤ T ≤ 0.80` | 只读,速率限制 | | ⛔ **隔离** | `T < 0.50` | 网络隔离,警报 |
**信任状态转换示例:** ``` Time │ Anomaly │ Calculation │ Trust │ Action ──────┼─────────┼──────────────────────────────────────────┼────────┼────────── t₀ │ 0.00 │ 0.80 × 1.00 + 0.20 × 1.00 = 1.00 │ 1.00 │ ✅ ALLOW t₁ │ 0.95 │ 0.80 × 1.00 + 0.20 × 0.05 = 0.81 │ 0.81 │ ✅ ALLOW t₂ │ 0.98 │ 0.80 × 0.81 + 0.20 × 0.02 = 0.65 │ 0.65 │ ⚠️ RESTRICT t₃ │ 1.00 │ 0.80 × 0.65 + 0.20 × 0.00 = 0.52 │ 0.52 │ ⚠️ RESTRICT t₄ │ 1.00 │ 0.80 × 0.52 + 0.20 × 0.00 = 0.42 │ 0.42 │ ⛔ ISOLATE ``` ### 4.3 💉 攻击注入器 模拟现实威胁场景进行验证,无需将运行系统暴露于实际网络攻击。这些攻击模式旨在模仿真实的高级持续性威胁,如Stuxnet或Triton,它们专门针对工业逻辑。 | 攻击类型 | 方法 | 示例 | 威胁目标 | |-------------|--------|---------|-------------| | **数据放大** | 将传感器值乘以7.5倍 | 温度22°C → 165°C | 迅速迫使系统关闭或造成灾难性物理故障。 | | **传感器欺骗** | 用伪造值替换真实读数 | 压力120 bar → 500 bar | 使操作员对制造厂的真实物理状态失明。 | | **渐进漂移** | 随时间步缓慢增加偏差 | 每周期+1°C,持续50个周期 | 绕过静态阈值警报,同时缓慢将系统推出安全边界。 | ``` def inject_anomaly(sensor_data): """Simulates severe data manipulation attack on CPS.""" anomalous_data = {} multiplier = 7.5 # Extreme manipulation for key, value in sensor_data.items(): anomalous_data[key] = value * multiplier return anomalous_data ``` ### 4.4 🔄 集成流程 ``` graph LR subgraph PIPELINE["🔄 CONTINUOUS MONITORING PIPELINE"] direction LR STREAM["📤 Real-time CPS Data Stream"] DT["Digital Twin Core
Model: IF Ensemble
Reads: [flow, pressure, temp, level, speed]
Output: anomaly_score (0.0 – 1.0)"] ZTE["Zero Trust Engine
Policy: Threshold
Updates: Trust(t) = EMA(Trust(t-1), score)
Output: {ALLOW, RESTRICT, ISOLATE}"] LOG["Enforce & Log
Apply action → Log decision → Audit trail"] NEXT["⏱️ [Next Observation in ~100ms]"] STREAM --> DT DT --> ZTE ZTE --> LOG LOG --> NEXT end style PIPELINE fill:#0d1117,stroke:#3b82f6,stroke-width:2px,color:#fff style STREAM fill:#1a1a2e,stroke:#3b82f6,color:#fff style DT fill:#16213e,stroke:#0EA5E9,color:#fff style ZTE fill:#1a1a2e,stroke:#F59E0B,color:#fff style LOG fill:#16213e,stroke:#8B5CF6,color:#fff style NEXT fill:#1a1a2e,stroke:#22C55E,color:#fff ``` ## 🖥️ 5. 实时仪表盘 该项目包含一个**基于Streamlit的企业安全运营中心仪表盘** (`dashboard.py`),用于实时可视化和交互式攻击模拟。 ### 仪表盘功能 | 功能 | 描述 | |---------|-------------| | 📊 **实时监控** | 信任分数、异常分数和传感器流速的实时Plotly图表 | | 🌐 **CPS拓扑** | 带有信任级别进度条的工业网络状态视图 | | 📝 **审计日志** | 带完整历史的颜色编码零信任策略决策日志 | | 💉 **攻击注入** | 一键式定向攻击注入,用于实时测试 | | ⚙️ **模拟控制** | 可调节的节拍率、启动/停止和环境重置 | ### 📸 仪表盘截图
![安全状态](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/91a9f1ec2a153044.png) *🟢 系统安全 — 信任: 1.0 — 允许* ![检测到入侵](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/60d22d6114153045.png) *🔴 检测到入侵 — 信任: 0.79 — 限制*
![实时图表](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/4b04241172153046.png) *📈 零信任评估引擎 — 实时图表* ![节点信任级别](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/8f8f22ce81153047.png) *🌐 CPS拓扑 — 节点信任级别*
![审计日志](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/247cc10d86153049.png) *📝 审计日志 — 零信任策略决策历史*
## 📊 6. 结果与基准 ### 准确率与检测指标
| 方法 | 精确率 (%) | 召回率 (%) | F1分数 (%) | 提升 | |--------|:---:|:---:|:---:|:---:| | 🥇 **ZT-DT (所提方案)** | **95.2** | **93.8** | **94.5** | — | | 仅隔离森林 | 91.0 | 88.7 | 89.8 | +4.7% | | 仅自编码器 | 89.6 | 86.1 | 87.8 | +6.7% | | 基于规则的IDS | 84.2 | 82.5 | 83.3 | +11.2% |
### 效率与资源指标
| 方法 | 误报率 (%) ↓ | 延迟 (s) ↓ | CPU使用率 (%) ↓ | |--------|:---:|:---:|:---:| | 🥇 **ZT-DT (所提方案)** | **2.8** | **1.7** | **24.7** | | 仅自编码器 | 6.3 | 1.4 | 28.5 | | 仅隔离森林 | 5.5 | 1.6 | 32.2 | | 基于规则的IDS | 8.1 | 2.1 | 36.8 |
### 性能可视化
``` xychart-beta title "CPU Usage vs Latency Trade-off (Lower is Better)" x-axis "Detection Method & Latency" ["AutoEncoder (1.4s)", "Isolation Forest (1.6s)", "ZT-DT Proposed (1.7s)", "Rule-Based IDS (2.1s)"] y-axis "CPU Usage (%)" 20 --> 40 bar [28.5, 32.2, 24.7, 36.8] ```
![性能图表](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/2973f70a42153050.png) *所有检测方法的F1分数、精确率、召回率和误报率对比* ### 💡 为何ZT-DT表现更优
**🔄 双重检测** 隔离森林立即标记突发、极端的物理异常(如压力尖峰),而数字孪生的持续预测能捕捉细微、渐进的操作(如缓慢隐蔽的篡改)。两者结合,使攻击者几乎没有盲点。 **📈 信任历史** 随时间累积证据——区分噪声与持续攻击。实现2.8%误报率。 **⚡ 持续验证** 传统系统通常每隔几分钟批量分析网络日志。ZT-DT每100毫秒直接从数据流评估遥测数据,在可操作的损害发生前可靠地捕捉物理入侵。 **🎯 自适应阈值** 通过交叉验证经验调优。平衡早期预警与操作员疲劳。
## 🗂️ 7. 项目结构 ``` zt-dt-industrial-cps/ │ ├── 📄 main.py # CLI entry point — streaming anomaly detection ├── 📊 dashboard.py # Streamlit SOC dashboard with live visualization ├── 📋 requirements.txt # Python dependencies │ ├── 🔧 framework/ # Core detection & policy modules │ ├── digital_twin/ │ │ ├── dt_core.py # DigitalTwin class — IF-based anomaly scoring │ │ └── __init__.py │ └── zero_trust_engine/ │ ├── zt_policy.py # ZeroTrustPolicyEngine — EMA trust scoring │ └── __init__.py │ ├── 🧠 models/ # ML model definitions & training scripts │ ├── autoencoder/ │ │ ├── ae_model.py # LSTM AutoEncoder architecture (TensorFlow) │ │ ├── train_ae.py # Training script for BATADAL/SWaT datasets │ │ └── checkpoints/ # Saved model weights │ └── isolation_forest/ │ ├── if_model.py # Isolation Forest builder + persistence │ ├── train_if.py # Training script with 3D→2D reshape │ └── checkpoints/ # Saved model weights │ ├── 🛠️ utils/ # Data processing & attack simulation │ ├── preprocess.py # Synthetic sensor data generator (5 sensors) │ ├── attack_injector.py # 7.5× multiplier attack simulation │ └── __init__.py │ └── 🖼️ images/ # Dashboard screenshots & result graphs ├── First_Dashboard.png ├── Live_Graph.png ├── Breach_Detected.png ├── No_Breach_Detected.png ├── Node_Trust_Level.png ├── Logs.png └── Graph.png ``` ## 🚀 8. 快速入门 ### 前置条件 | 要求 | 版本 | |-------------|---------| | Python | 3.8+ | | TensorFlow | 2.16+ | | scikit-learn | 1.3.2 | | Streamlit | 最新 | ### 安装 ``` # 克隆 repository git clone https://github.com/your-repo/zt-dt-industrial-cps.git cd zt-dt-industrial-cps # 安装 dependencies pip install -r requirements.txt ``` ### 使用
#### 🖥️ 命令行模式 ``` python main.py ``` **预期输出:** ``` Initializing components... Initialization complete. Starting live stream... Timestamp | Status | Anomaly | Trust Score | ZTP Action --------------------------------------------------------------------------- 2024-01-15 10:30:15.123 | Normal | 0.12 | 0.9500 | ✅ ALLOW 2024-01-15 10:30:16.456 | Normal | 0.08 | 0.9600 | ✅ ALLOW 2024-01-15 10:30:17.789 | Attack | 0.87 | 0.3400 | ⛔ RESTRICT ``` #### 📊 仪表盘模式 ``` streamlit run dashboard.py ``` **功能:** - 🟢 启动/停止监控 - 💉 注入定向攻击 - 📈 实时信任与异常图表 - 📝 颜色编码审计日志 - ⚙️ 可调节节拍率
### 训练模型(可选) ``` # 在 BATADAL 和 SWaT 数据集上训练 AutoEncoder python models/autoencoder/train_ae.py # 训练 Isolation Forest python models/isolation_forest/train_if.py ``` ## 📦 9. 数据集 该项目在**新加坡科技设计大学网络安全研究中心iTrust**提供的行业标准工业控制系统异常检测基准上进行验证。 | 数据集 | 记录数 | 传感器数 | 攻击场景 | 领域 | |---------|:-------:|:-------:|:----------------:|--------| | **安全水处理 (SWaT)** | ~900K | 51 | 6次真实攻击 | 安全水处理试验台 | | **BATADAL** | ~500K | 43 | 34次标记攻击 | 水分配网络 | 这些数据集由**新加坡科技设计大学iTRUST**(iTRUST@sutd.edu.sg,地址:8 Somapah Road, Building 2, Level 7, Singapore 487372)正式申请并授予。 ### 📜 使用条件 使用这些数据集即表示同意以下条件: ## ⚠️ 10. 局限性 | 局限性 | 详情 | |:----------:|---------| | 📊 **数据集依赖性** | 性能仅在BATADAL和SWaT水处理数据集上验证 | | 🖥️ **计算要求** | TensorFlow模型受益于GPU以实现最佳训练性能 | | 🏭 **现实部署** | 生产使用需要与实际SCADA/PLC系统集成 | | 💉 **攻击多样性** | 仅限于模拟攻击类型;未覆盖所有现实APT场景 | | 📐 **可扩展性** | 当前实现设计用于单系统监控 |

🧪 实验设置(点击展开)

  | 参数 | 详情 | 原理 | |-----------|---------|-----------| | **环境** | Python 3.8+ 基于套接字通信 | 真实网络模拟 | | **组件** | 5个虚拟传感器 + PLC + 执行器 | 最小水处理拓扑 | | **基线数据** | 50–100个时间步的清洁操作数据 | 足够IF正常性学习 | | **IF配置** | 100个估计器,污染率=0.05 | 通过网格搜索优化 | | **异常阈值** | 网格搜索 (0.5–0.9),5折交叉验证 | 最优TPR/FPR权衡 | | **信任参数** | EMA α=0.80, τ_high=0.80, τ_low=0.50 | 根据ICICI-2025论文 | | **数据划分** | 70/30训练/测试,60个时间步窗口 | 防止时间泄漏 | | **攻击注入** | 每10个时间步一次(10%频率) | 真实攻击频率 | | **硬件** | Intel i7 (4核), 16 GB RAM, 无GPU | 验证边缘可行性 | | **评估指标** | 精确率, 召回率, F1, 误报率, 延迟, CPU | 全面评估 |  
## 👥 12. 团队 ### 🧑‍🏫 导师 **Prajwalasimha S N 博士**, 博士,博士后 (NewRIIS) 副教授 — 计算机科学与工程系(网络安全方向) 达亚南德萨加尔大学工程学院

[![Made with Love](https://img.shields.io/badge/Made_with-💖-ff69b4?style=for-the-badge)](https://github.com/yourusername) [![Built at TTEH LAB](https://img.shields.io/badge/Built_at-TTEH_LAB-8b5cf6?style=for-the-badge)](https://tteh.dsu.edu.in)
**TTEH 实验室 • 工程学院 • 达亚南德萨加尔大学** *印度卡纳塔克邦班加罗尔 — 562112*
*如果您觉得此工作有用,请考虑给它一个* ⭐
标签:Apex, BATADAL数据集, Kubernetes, Python, scikit-learn, Streamlit, TensorFlow, 代码示例, 孤立森林, 工业安全, 工业网络物理系统, 工业韧性, 异常检测, 快速响应, 控制系统安全, 数字孪生, 数据分析, 无后门, 机器学习, 水分布系统, 网络安全, 自编码器, 访问控制, 逆向工具, 隐私保护, 零信任安全, 高性能检测