CISA 预警直指西门子 S7 系列
美国网安局(CISA)联合 FBI 发布的最新预警(ICS-ALERT-24-XXX)没绕弯子,直接点名西门子 S7-1200/1500 系列 PLC 成了 AI 攻击的首选靶标。这事儿跟以往利用 CVE-2023-XXXX 那类已知漏洞完全不是一码事——攻击链的核心不再是溢出利用,而是让大模型生成符合 IEC 61131-3 规范的结构化文本(ST/SCL),再通过被控的工程站或 TIA Portal 工程文件篡改下发给控制器。
这绕过了传统基于特征库的 OT 安全盒子,因为下发的逻辑在语法上完全合法,甚至通过了编译器的静态检查,只有在特定工况触发时才会翻车。
一、门槛被拉平了:不懂梯形图也能写逻辑炸弹
以前想在 PLC 里藏后门,得懂 SCL 语法、懂 FB/FC 调用约定、懂组织块(OB)扫描周期,还得能调通与 HMI 的交互。现在攻击者只需把「在 DB100 偏移量 42 处写入 0xDEADBEEF 并触发 OB82 故障中断」这种自然语言意图扔给模型,几秒钟就能吐出一段能直接在 TIA Portal 里编译通过的代码片段。实测 GPT-4o 和 Claude 3.5 Sonnet 对西门子 SCL 的完成度已经能骗过大多数初中级工控工程师的 Code Review。
二、多态载荷让白名单失效
传统 OT 防护依赖「工程文件哈希值白名单」或「指令集特征匹配」。大模型每次生成的变量命名、指令排序、甚至插入无效 NOP 指令的方式都不同,导致同一恶意意图能产生成千上万个语义等价但二进制完全不同的下发包。某红队实测:同一段「修改 PID 参数导致阀门全开」的指令,让模型重写 50 次,某主流 OT 安全网关仅拦截了 3 次。
三、工程站成了「必争之地」
预警里反复强调「Engineering Workstation Compromise」,这不是危言耸听。现在的攻击路径通常是:
1. 钓鱼/供应链拿下工程师笔记本
2. 窃取 TIA Portal 工程文件
3. 本地调用大模型注入恶意 SCL 代码块
4. 利用合法工程师凭证下发更新
全程流量合法、签名合法、证书合法,网络层面几乎零告警。
防御端该动作了
- 逻辑变更审计要比对 AST,别比对二进制:在 SCADA/Historian 侧解析上传的程序块,提取抽象语法树做语义级 Diff,才能发现「功能等价但意图异常」的注入。
- PLC 侧开启固件签名与下载保护:S7-1500 支持「受保护配置」和「固件完整性校验」,一定要在硬件配置里勾上「禁止未签名块下载」,别图省事全开着。
- 工程站物理隔离+应用控制:把 TIA Portal 运行环境做成不可变镜像(AppLocker/WDAC 锁死哈希),禁止在工程
免费 AI 工具箱 · 全部完全免费
更多可复用的提示词工作流收录在ChatGPT提示词优化指南,有不少直接可参考的案例。