Vue · 项目报告

yuhuangerdi/InduSecAgent

该仓库暂未提供 GitHub 项目描述。

已完成 打开 GitHub
Y
645星标
12Fork
0Issue
未知许可证

分析结果

项目分析

InduSecAgent 是一个面向工业控制系统(ICS/OT)的智能异常检测、攻击溯源与联动响应平台。项目通过 Vue 3 前端控制台、FastAPI 检测服务、PyTorch/PyTorch Geometric 模型以及 PLC 实时采集能力,将工业流程图、设备点位说明、正常运行时序数据等信息构建为工业时空图(ISTG),用于多变量时序异常检测、异常节点定位、传播路径溯源和告警展示。当前仓库包含可视化演示界面、模型训练与推理代码、实时数据采集服务及示例数据,适合工业安全研究、仿真验证和原型系统开发。

适用领域 工业控制系统安全 / OT 安全 / 异常检测 / 攻击溯源 / 工业时序数据分析 / 图神经网络 / 数字孪生与工业仿真 / PLC 数据采集 / 安全监测平台 / 可解释人工智能
配置难度 中高。前端部分基于 Vue 3/Vite,普通前端开发者较容易运行;但后端涉及 PyTorch、PyTorch Geometric、工业时序数据、图结构建模、PLC S7 通信和工控安全知识,完整理解和接入真实场景需要机器学习、OT 网络、PLC 点位映射和工业过程知识。用于演示或仿真环境难度中等,用于真实工业现场 PoC 或生产化难度较高。
商业价值 该项目适合用于工控安全异常检测产品原型、工业安全科研验证、OT SOC 能力展示和数字孪生安全监测方案探索。其价值在于把多模态工业信息、图神经网络异常检测、异常组件定位和攻击溯源整合到一个可视化平台中,有助于提升工业现场异常发现和安全研判效率。对于安全厂商、工业互联网平台、智能制造企业和科研机构,可作为构建工业安全监测能力的参考实现或 PoC 基础。但由于许可证缺失、生产级安全能力和现场验证情况不明确,直接商用或部署到生产控制网络前需要进行合规确认、代码审计、模型验证、架构加固和现场风险评估。
01

技术亮点

  • 将工业流程图、工艺说明、PLC 点位描述和时序数据进行多模态融合,适合复杂工业场景建模。
  • 采用工业时空图(ISTG)思想,将设备、传感器、执行器、控制器与工艺流程之间的空间依赖和时间演化统一建模。
  • 支持基于图神经网络的时空异常检测,能够输出异常分数和重构误差。
  • 不仅做异常检测,还提供异常节点定位和异常传播路径溯源能力,更贴近工控安全分析需求。
  • 包含 Vue 可视化控制台,便于展示上传、图谱构建、实时检测、曲线、异常组件和响应状态。
  • 提供 FastAPI 检测服务和异步任务接口,便于与其他系统集成。
  • 支持 PLC 实时数据采集,具备从数据接入到检测展示的端到端原型能力。
  • README 对数据结构、API、使用流程和安全注意事项说明较完整,适合快速上手做实验或二次开发。
  • 对工业现场安全风险有明确提示,强调隔离网络、授权环境、人工复核和审计。
02

目标用户

  • 工业互联网安全研究人员
  • 工控安全工程师
  • 制造业/能源/水务等行业的 OT 安全团队
  • 高校和科研机构的工业安全、图神经网络、时序异常检测方向研究者
  • 需要构建 ICS 异常检测原型的开发者
  • 工业仿真平台或数字孪生系统开发团队
  • 安全运营中心中负责 OT 场景监测的分析人员
03

配置要求

  • Node.js 版本需满足 20.19+ 或 22.12+。
  • Python 版本需为 3.10+。
  • 需要安装前端依赖,包括 Vue 3、TypeScript、Vite、Vue Router、Pinia 等。
  • 需要安装 Python 后端与机器学习依赖,包括 FastAPI、Uvicorn、PyTorch、PyTorch Geometric、NumPy、Pandas、scikit-learn 等。
  • 实时采集 PLC 数据时需要 python-snap7,并且目标 PLC 或仿真环境需支持 S7 通信。
  • 实时检测前需要准备与场景匹配的依赖图、模型检查点和点位映射。
  • 模型检查点、依赖图、训练数据和实时数据的特征顺序必须一致,否则检测结果可能无效或任务失败。
  • 典型数据目录应包含 train_orig.csv、test_orig.csv、list.txt、llm_edge_index.pt、tc_edge_index.pt、sensor_dependency_graph_physical_final.json 等文件。
  • CSV 数据应按行表示采样时刻、按列表示传感器/执行器/控制变量;如果存在标签,attack 列表示样本状态。
  • 若部署到非本机后端,需要通过 .env.local 配置 VITE_DETECTION_API_URL。
  • 接入真实 PLC 前必须在隔离测试网络中完成 PLC 地址、rack/slot、点位映射、模型版本和权限策略校验。
04

适用场景

  • 基于正常运行数据训练工业时序异常检测模型
  • 将流程图、点位表、设备描述和时序数据融合为工业依赖图或工业时空图
  • 在仿真 PLC 或隔离测试网络中进行实时异常检测演示
  • 识别异常发生区间、异常传感器/执行器/控制点位及其重构误差
  • 根据工业依赖关系追踪异常传播路径,辅助判断潜在攻击源和影响范围
  • 搭建工业安全监测平台原型,用于科研展示、课程实验或 PoC 验证
  • 验证图神经网络在工业多变量时序检测中的效果
  • 为工控安全产品设计提供界面、流程和检测服务参考
05

部署与配置

  • 安装 Node.js 20.19+ 或 22.12+、npm、Python 3.10+。
  • 克隆仓库:git clone https://github.com/yuhuangerdi/InduSecAgent.git && cd InduSecAgent。
  • 安装前端依赖:npm ci。
  • 启动 Vue Web 控制台:npm run dev。
  • 在浏览器访问 Vite 输出的本地地址,通常为 http://localhost:5173。
  • 如需使用检测服务,创建 Python 虚拟环境:python3 -m venv .venv。
  • 激活虚拟环境:Linux/macOS 使用 source .venv/bin/activate,Windows 使用 .venv\Scripts\activate。
  • 升级 pip:python -m pip install --upgrade pip。
  • 安装后端依赖:python -m pip install -r I*/requirements.txt。
  • 启动检测服务:python I*/main.py。
  • 检测服务默认监听 http://127.0.0.1:8000。
  • 如果检测服务地址不是默认地址,在项目根目录创建 .env.local 并配置 VITE_DETECTION_API_URL=http://127.0.0.1:8000/api/detect,然后重启前端开发服务器。
06

风险与注意事项

  • 仓库尚未声明开源许可证,在许可证补充前,复制、修改、分发或商用存在法律不确定性,需要获得维护者授权。
  • 项目星标较高但 fork 数较少,社区协作和生产级验证程度可能有限。
  • 真实工业现场接入风险较高,错误的 PLC 地址、点位映射、rack/slot 配置或联动策略可能影响生产系统安全。
  • 模型效果强依赖训练数据质量、特征顺序、依赖图质量和场景匹配程度,跨场景泛化能力需要单独验证。
  • 如果训练数据中混入异常样本或正常工况覆盖不足,可能导致误报、漏报或不可解释的异常评分。
  • PyTorch Geometric、python-snap7 等依赖在不同操作系统和硬件环境下安装可能有兼容性问题。
  • README 未体现完善的权限控制、身份认证、审计、告警闭环、模型版本管理等生产级安全能力。
  • 联动响应不应直接用于生产控制决策,必须增加人工确认、故障安全和回滚机制。
  • 如果前后端服务暴露到不可信网络,可能带来接口滥用、敏感工艺信息泄露或对 PLC 网络的间接攻击面。
  • 仓库描述为空、license 为空,项目成熟度和维护策略还需要进一步评估。

历史记录

热榜历史快照

2026-08-10 第10名 新收录 · github_search
2026-08-09 第14名 新收录 · github_search
2026-08-08 第27名 新收录 · github_search