工业协议无认证缺陷的补偿性控制
问题根源
大量在用的工业协议诞生于相对封闭的年代,设计目标是实时性与可靠性,未考虑身份认证和通信加密。这些协议允许任何能访问网络的设备发送控制指令,且不校验指令来源。这意味着一旦攻击者进入控制网,就可以直接对现场设备下发操作指令。由于设备生命周期往往长达十几年,短期内无法通过升级协议解决。
补偿性控制的思路
补偿性控制的核心是在不改变现有设备的前提下,通过外围手段限制和监测风险。基本思路是限制谁能发起通信、限制能做什么操作、以及记录发生过什么。
具体措施
第一,通信关系白名单。在区域边界处配置基于源地址、目的地址和协议的允许清单,只放通确需的通信关系,默认拒绝其他流量。这是最有效的措施,能直接阻止攻击者从非预期位置发起通信。
第二,指令级过滤。具备协议解析能力的边界设备可以识别读写操作类型,对写指令和参数修改做限制或告警。例如允许监控系统读取设备状态,但限制其修改关键参数。
第三,会话与连接控制。限制并发连接数,对通信频率做约束,避免被用于批量控制指令下发。
第四,访问路径收口。工程师站和运维终端的接入应通过受控位置,禁止在控制网内随意接入移动设备。对远程访问统一通过跳板与审批流程。
第五,行为监测。建立通信基线,对新增通信对、异常时间的通信、异常的指令序列保持告警。这类信号在正常生产中很少出现。
第六,物理与准入控制。对现场机柜和网络接口做物理防护,对设备接入实施端口管控,减少非授权接入的机会。
管理配套
技术措施需要与流程配合。建议明确哪些操作属于高风险,需要审批;建立变更记录,任何策略调整都留痕;把现场工程师的日常操作纳入规范,避免为了调试方便而临时放开限制后不恢复。
结语
协议缺陷无法通过打补丁解决,但可以通过限制通信范围和监测异常行为显著降低风险。补偿性控制的关键是持续维护,白名单和基线都需要随业务变化更新。