工业网络基础:ICS/SCADA架构、常见协议与IT/OT差异

工业防火墙策略配置的前提,是深入理解它所保护的工业网络环境。与以数据交换为核心的IT网络不同,工业控制系统(ICS/SCADA)网络直接连接物理设备,对实时性、确定性和可用性有严苛要求。本章将系统梳理工业网络的层级架构、主流工控协议的工作机理,并剖析工业网络与IT网络在安全设计上的本质差异,为后续防火墙策略的制定奠定基础。

工业控制系统(ICS/SCADA)层级架构与协议映射 L4/L3 企业网络(IT域) ERP、MES、历史数据库、Web服务 典型协议:HTTP/HTTPS、SQL、SMTP、OPC UA(跨域) L2 控制网络(OT域核心) SCADA服务器、工程师站、操作员站、实时数据库 典型协议:OPC UA/DA、Modbus TCP、S7comm、EtherNet/IP 安全重点:防火墙部署于此层边界,管控东西向流量 L1/L0 现场设备层(OT域边缘) PLC、RTU、DCS控制器、传感器、执行器、变频器 典型协议:Modbus RTU/ASCII、Profibus、HART、EtherNet/IP(CIP) 安全重点:设备计算资源有限,无法部署安全代理 协议安全属性对比 Modbus TCP:无认证、无加密 S7comm:私有协议,无内置安全 EtherNet/IP:CIP安全扩展有限 OPC UA:内置证书+加密(推荐) → 防火墙需深度解析应用层 安全域划分建议 Zone 1:企业IT网络(低防护) Zone 2:控制网络(中防护) Zone 3:现场设备(高防护) Conduit:跨域通信管道 → 防火墙策略基于Zone/Conduit

2.1 工业控制系统(ICS/SCADA)层级架构

核心原理:Purdue模型与纵深防御

工业控制系统通常采用Purdue企业参考架构(PERA)进行分层设计,该模型将工业网络划分为6个层级(L0-L5),每一层承担不同的功能,具有不同的通信特征和安全需求。理解这一分层是配置防火墙策略的前提——防火墙的部署位置、访问控制规则、深度包检测(DPI)能力都必须与层级特性匹配。

  • L0(物理过程层):包含传感器、执行器、变频器等直接与物理过程交互的设备。通信以现场总线为主,如4-20mA模拟信号、HART、Profibus PA等,通常不涉及IP通信。
  • L1(基本控制层):PLC、RTU、DCS控制器等执行闭环控制逻辑。通信协议包括Modbus RTU/TCP、S7comm、EtherNet/IP等,实时性要求极高(毫秒级)。
  • L2(监督控制层):SCADA服务器、工程师站(ES)、操作员站(HMI)、历史数据库(Historian)。该层负责过程监控、报警管理、组态下发,是OT网络的核心枢纽。
  • L3(生产管理层):MES(制造执行系统)、LIMS(实验室信息管理系统)、资产管理系统。该层开始与IT系统交互,通信协议逐渐转向OPC UA、SQL等。
  • L4/L5(企业网络层):ERP、CRM、办公自动化系统。属于传统IT域,使用标准IT协议。

防火墙部署要点:工业防火墙通常部署在L2/L3边界(即OT与IT的交界处),以及L1/L2边界(控制网与现场设备网之间)。在L0/L1边界,由于设备计算资源有限且协议多为非IP,通常不部署防火墙,而是采用物理隔离或串接安关。

判断方法:识别网络层级与通信流向

在实际项目中,判断一个节点属于哪个层级,可依据以下三个维度:

  1. 功能角色:该设备是执行控制(L1)、监控调度(L2)还是生产管理(L3)?
  2. 通信方向:流量是上行(设备→控制→管理)还是下行(管理→控制→设备)?防火墙策略通常只允许必要的上下行端口。
  3. 协议类型:该节点使用的协议是实时控制类(Modbus TCP、S7comm)还是信息管理类(HTTP、SQL)?

案例拆解:某水处理厂SCADA系统层级识别

某城市水处理厂需要部署工业防火墙,首先进行网络资产梳理。现场包含:

设备型号/协议层级归属通信特征
原水泵变频器Modbus RTU over RS-485L0非IP,轮询周期200ms
PLC(西门子S7-300)S7comm over TCP:102L1与SCADA服务器保持长连接
SCADA服务器(WinCC)S7comm、OPC DAL2同时与PLC和MES通信
MES数据库SQL over TCP:1433L3仅接受来自SCADA的数据上报

通过该表,工程师明确了防火墙策略的边界:在L1/L2之间部署工业防火墙,仅允许S7comm协议从SCADA服务器(IP:192.168.10.10)访问PLC(IP:192.168.20.1-20.10)的TCP 102端口,并启用DPI深度解析S7comm功能码,阻止非法的PLC启停操作。

常见误区:许多工程师将SCADA服务器与PLC放在同一网段,认为“内部通信不需要防护”。实际上,一旦SCADA服务器被攻陷(例如通过钓鱼邮件),攻击者可直接利用S7comm协议向PLC下发恶意指令。正确的做法是划分独立VLAN,并在VLAN间部署防火墙。

2.2 常见工业协议深度解析

核心原理:协议特性决定防火墙检测能力

工业协议的设计初衷是保证实时性和可靠性,而非安全性。绝大多数工控协议缺乏认证、加密和完整性校验机制,这要求工业防火墙必须具备深度包检测(DPI)能力,能够解析协议的功能码、寄存器地址、数据负载等字段,而不仅仅是五元组。

协议传输层默认端口安全弱点防火墙检测要点
Modbus TCPTCP502无认证、无加密、功能码可被篡改功能码(1-127)、寄存器地址范围、单元ID
OPC UATCP4840早期版本无强制加密,需配置证书会话建立、节点ID访问控制、证书有效性
EtherNet/IPTCP/UDP44818(TCP)/2222(UDP)CIP安全扩展未普及,明文传输CIP路径、连接ID、服务代码
S7commTCP102私有协议,无内置安全,可被重放功能码(0x04读/0x05写)、DB块号、数据长度

操作流程:配置防火墙DPI规则

  1. 识别协议类型:通过抓包(Wireshark)或防火墙自动识别功能确认流量使用的协议。
  2. 定义允许的功能码白名单:例如Modbus TCP中,仅允许功能码03(读保持寄存器)和06(写单个寄存器),禁止其他功能码。
  3. 设置寄存器地址范围:例如仅允许访问地址40001-40100,防止攻击者读取或写入敏感参数。
  4. 配置会话超时:工业协议通常保持长连接,需设置合理的空闲超时(如30分钟),避免连接被恶意占用。

实战经验:在配置S7comm DPI规则时,建议先开启“学习模式”运行一周,记录正常通信的基线(包括功能码、DB块号、访问频率),再基于基线生成白名单策略。直接手动配置容易遗漏合法的诊断功能码(如0x1A读取时间),导致生产中断。

案例拆解:Modbus TCP攻击检测与防护

某工厂的Modbus TCP网络遭受异常写入攻击,攻击者向PLC的保持寄存器(地址40001)写入超限值,导致生产线停机。分析过程如下:

  • 初始现象:PLC报警“数据超限”,检查发现寄存器40001的值被改为9999(正常范围0-100)。
  • 抓包分析:Wireshark显示源IP为192.168.1.50(非正常上位机),功能码为0x06(写单个寄存器),数据负载为0x270F(9999)。
  • 根因判断:攻击者利用Modbus TCP无认证特性,直接构造写请求。
  • 防火墙策略调整:在工业防火墙上配置规则——仅允许源IP为192.168.1.10(正常上位机)的Modbus TCP流量,且功能码仅限03(读)和06(写),寄存器地址限制在40001-40100,并设置写入速率限制(每秒不超过10次)。
  • 结果对比:策略部署后,攻击流量被阻断,生产恢复。同时防火墙日志记录了多次来自192.168.1.50的尝试,为后续溯源提供了证据。

风险提示:不要对所有PLC统一配置相同的DPI规则。不同PLC的寄存器地址映射不同,例如西门子S7-300的DB1与DB2含义完全不同。建议为每台PLC单独配置规则,或按设备组配置并充分测试。

2.3 工业网络与IT网络的差异

核心原理:CIA优先级反转

IT网络遵循CIA(机密性、完整性、可用性)优先级,而工业网络遵循AIC(可用性、完整性、机密性)优先级。这一根本差异决定了防火墙策略的设计思路:IT防火墙优先阻断所有未明确允许的流量,而工业防火墙必须优先保证生产通信的连续性,即使这意味着需要放行某些“可疑”流量。

维度IT网络工业网络(OT)
优先级机密性 > 完整性 > 可用性可用性 > 完整性 > 机密性
通信模式客户端/服务器,短连接为主周期性轮询,长连接为主
协议HTTP/HTTPS、SMTP、SQLModbus、S7comm、OPC UA
补丁管理月度补丁,可随时重启需停机窗口,补丁滞后数月甚至数年
性能要求带宽利用率高,延迟容忍确定性延迟(毫秒级),抖动敏感
安全目标防数据泄露、防入侵防生产中断、防物理设备损坏

判断方法:识别IT/OT混合流量

在工业网络边界,经常出现IT协议(如HTTP、SMTP)与OT协议(如Modbus)混合的情况。判断流量属于哪种类型,可依据:

  • 源/目的IP:IT服务器(如域控)与OT设备(如PLC)之间的流量通常为跨域流量。
  • 端口号:502(Modbus)、102(S7comm)等端口明确指向OT协议。
  • 流量模式:OT流量通常具有周期性(如每100ms一次),IT流量则随机性较强。

案例拆解:IT/OT融合场景下的防火墙策略冲突

某制造企业实施IT/OT融合项目,需要让MES系统(IT域)通过OPC UA读取PLC数据(OT域)。初始方案中,IT管理员在防火墙上配置了“允许所有TCP 4840端口通信”,导致以下问题:

  • 问题1:OPC UA服务器(PLC侧)暴露给整个IT网段,任何IT终端都可尝试连接。
  • 问题2:IT防火墙的会话超时设置为5分钟,而OPC UA订阅模式需要保持长连接,导致频繁断连。
  • 问题3:防火墙日志显示大量非预期的OPC UA浏览请求,占用带宽。

优化方案:

  1. 将防火墙策略细化为“仅允许MES服务器(IP:10.1.1.20)访问OPC UA服务器(IP:192.168.10.5)的TCP 4840端口”。
  2. 将会话超时调整为30分钟,并开启TCP keep-alive。
  3. 启用OPC UA应用层检测,仅允许读取节点(NodeID)白名单,禁止写入操作。

结果对比:策略优化后,MES数据采集稳定运行,且防火墙日志中不再出现非预期访问。该案例说明,工业防火墙策略必须同时考虑网络层(IP/端口)和应用层(协议内容),并针对OT长连接特性调整会话管理参数。

经验总结:在IT/OT融合项目中,建议采用“白名单+DPI”双模式:网络层白名单控制通信范围,应用层DPI控制协议行为。同时,为OT流量设置独立的防火墙策略组,避免与IT策略混用。

2.4 工业防火墙策略设计要点与常见误区

核心原理:基于Zone/Conduit的模型

IEC 62443标准推荐使用Zone(安全区域)和Conduit(安全通道)模型设计工业网络安全。Zone是具有相同安全要求的设备集合,Conduit是Zone之间通信的管道。防火墙策略应基于Zone/Conduit定义,而非基于单个IP地址。

操作流程:从资产梳理到策略落地

  1. 资产梳理:列出所有IP、MAC、协议、端口、通信对端。
  2. Zone划分:按功能和安全等级划分Zone(如控制Zone、现场设备Zone)。
  3. Conduit定义:明确哪些Zone之间需要通信,使用什么协议。
  4. 策略生成:为每个Conduit生成防火墙规则,默认拒绝所有未明确允许的流量。
  5. 测试验证:在非生产环境或维护窗口测试策略,确认不影响正常生产。

案例拆解:某汽车焊装车间防火墙策略优化

某焊装车间有120台机器人控制器(EtherNet/IP)、10台PLC(S7comm)、3台SCADA服务器。初始防火墙策略为“允许所有”,存在严重安全隐患。优化过程:

  • 资产梳理:发现机器人控制器之间存在大量广播流量(UDP 2222),但实际控制指令仅来自SCADA服务器。
  • 策略调整:将机器人控制器划入Zone A,SCADA服务器划入Zone B,PLC划入Zone C。仅允许Zone B→Zone A的EtherNet/IP TCP 44818连接,以及Zone B→Zone C的S7comm TCP 102连接。禁止Zone A内部广播跨Zone传播。
  • 结果:策略部署后,网络广播风暴减少60%,且成功阻断了一次来自办公网(IT域)的异常扫描。

常见误区:

  • 误区1:将工业防火墙配置为“允许所有出站流量”。工业网络通常不需要访问互联网,应默认阻断出站。
  • 误区2:忽略广播/组播流量。EtherNet/IP的隐式报文使用UDP组播(224.0.0.1),防火墙需支持组播透传或IGMP snooping。
  • 误区3:使用IT防火墙的“会话超时”默认值(如60秒)。工业长连接会被误断,导致PLC通信中断。

总结复盘