3. OT安全基础
在OT威胁狩猎与事件响应中,最基础也最关键的一步,是建立对工业控制系统的“空间感”:谁在控制现场设备,谁在采集数据,谁在监控生产,谁又负责把数据送往企业IT。Purdue模型与ISA-95层级正是描述这种分层结构的通用语言。理解它们,才能在告警、日志、流量和资产之间建立正确的关联,避免把PLC当成普通服务器处理,也避免在响应时误断关键控制链路。
核心原理:Purdue模型与ISA-95的分层逻辑
Purdue模型最初用于描述制造自动化系统的层级,ISA-95(IEC 62264)则从企业控制系统集成角度定义了功能层级。两者常被结合使用,形成从现场设备到企业云的纵向视图。典型分层如下:
- Level 0:物理过程——传感器、执行器、阀门、电机等直接作用于物理世界的设备。
- Level 1:基本控制——PLC、RTU、DCS控制器等,执行逻辑控制、闭环调节和安全联锁。
- Level 2:监督控制——HMI、SCADA服务器、操作员站,负责监视、报警、手动干预和批次管理。
- Level 3:生产管理——历史数据库、MES、批处理管理、资产管理系统,负责生产调度、质量追溯和性能分析。
- Level 4/5:企业IT与云——ERP、邮件、互联网、云分析平台,负责经营管理和跨厂协同。
关键点在于:层级之间通常通过防火墙或DMZ隔离,但数据流和控制流方向不同。控制流自上而下,数据流自下而上。威胁狩猎时,必须同时关注“谁在向下发指令”和“谁在向上传数据”,因为攻击者往往利用合法通道进行横向移动或数据窃取。
核心组件:DCS、SCADA、PLC、RTU、HMI与历史数据库
这些组件不是孤立设备,而是按层级协作的“角色”。理解每个角色的职责、协议和典型弱点,是威胁狩猎的起点。
| 组件 | 典型层级 | 核心职责 | 常见协议 | 狩猎关注点 |
|---|---|---|---|---|
| PLC | Level 1 | 执行逻辑控制、顺序控制、联锁 | Modbus、EtherNet/IP、Profinet | 程序下载、固件篡改、未授权写线圈 |
| RTU | Level 1 | 远程站点数据采集与控制 | DNP3、IEC 60870-5-101/104 | 遥测突变、未授权遥控、通信中断 |
| DCS | Level 1-2 | 连续过程控制、回路调节、安全联锁 | 专有协议、OPC | 控制器切换、组态变更、异常回路设定值 |
| SCADA | Level 2 | 广域监视、数据采集、报警与调度 | OPC、IEC 104、DNP3 | 非法操作员指令、报警抑制、历史数据篡改 |
| HMI | Level 2 | 人机交互、画面显示、操作入口 | RDP、VNC、Web | 异常登录、画面篡改、USB接入 |
| 历史数据库 | Level 3 | 存储时序数据、趋势分析、报表 | SQL、OPC HDA、专有接口 | 批量删除、异常查询、数据外传 |
方法流程:从层级到狩猎假设
在威胁狩猎中,Purdue层级可以转化为“狩猎假设生成器”。例如:
- Level 1 异常:PLC程序校验和变化,但无变更工单。假设:攻击者正在植入恶意逻辑。
- Level 2 异常:HMI出现非工作时间的RDP登录,且随后SCADA下发异常设定值。假设:操作员站被攻陷,攻击者横向移动至控制层。
- Level 3 异常:历史数据库出现大量非计划导出,目标IP为外部云存储。假设:数据窃取或勒索前奏。
- Level 4 异常:企业IT出现与OT同名的账户登录,且该账户在DMZ有防火墙策略变更。假设:IT到OT的横向移动。
实用技巧:在狩猎平台中,为每个资产打上Purdue层级标签。当告警发生时,先看层级,再看协议,最后看行为。层级决定了响应优先级:Level 0/1的异常通常比Level 4更紧急,因为直接影响物理过程。
案例/场景:一次跨层横向移动的狩猎复盘
某化工厂SCADA系统出现间歇性通信中断。初始告警仅显示“PLC无响应”,但狩猎团队按层级展开:
- Level 1:PLC通信模块日志显示大量来自Level 2网段的异常ARP请求。
- Level 2:HMI主机存在一个隐藏的本地管理员账户,最近被启用。
- Level 3:历史数据库的SQL日志显示该账户曾查询所有PLC的IP列表。
- DMZ:防火墙策略被临时修改,允许HMI网段访问外部IP。
最终确认攻击者通过钓鱼邮件攻陷工程师站,利用工程师站上的OPC接口横向移动至HMI,再试图向PLC下发恶意逻辑。由于狩猎团队按层级关联了日志,在PLC被篡改前阻断了攻击。这个案例说明:单看某一层,可能只看到“通信故障”;跨层关联,才能看到“攻击链”。
常见误区:把OT资产当成IT资产处理。例如,直接对PLC进行漏洞扫描可能导致控制器崩溃;在Level 1使用IT的EDR代理可能影响实时性。响应时必须遵循“先隔离、后取证、再恢复”的原则,并优先保护Level 0/1的可用性。
误区/复盘:层级不是绝对边界
Purdue模型是逻辑参考,不是物理隔离的保证。现实中,Level 2的HMI可能直接访问Level 1的PLC,Level 3的历史数据库可能通过OPC直接读取Level 1数据,甚至Level 4的远程运维通道可能绕过DMZ直达Level 2。因此,威胁狩猎不能只依赖层级图,还要结合网络拓扑、防火墙规则和实际流量。
建议在狩猎前完成三项基础工作:
- 资产清单:记录每个设备的Purdue层级、IP、MAC、协议、固件版本和责任人。
- 通信基线:用流量分析工具建立“谁和谁通信、用什么协议、什么时间”的基线。
- 变更日志:将PLC程序下载、HMI组态变更、防火墙策略修改纳入统一审计。
# 示例:从流量中提取OT协议会话(伪代码)
tshark -r ot.pcap -Y "modbus || dnp3 || opcua" \
-T fields -e ip.src -e ip.dst -e _ws.col.Protocol -e frame.time \
| sort | uniq -c | sort -nr | head -20
掌握Purdue模型与ISA-95层级,理解DCS、SCADA、PLC、RTU、HMI和历史数据库的角色与交互,是OT威胁狩猎的“地图”。没有地图,告警只是孤立的点;有了地图,才能把点连成线,把线连成攻击链,从而在物理过程受影响之前完成阻断与响应。