
1. 工控信息安全到底在防什么干了十多年工控和信息化我越来越觉得工控信息安全这个词被说得太玄乎了。很多刚入行的朋友一听到“等保”“纵深防御”“工控防火墙”就头大觉得这是另一个世界的东西。其实把它翻译成人话就是一句话让生产线上的设备该动的动、该停的停别让不该动它的人动了它也别让该动的指令因为干扰而没动成。石化、冶金、电力、轨交这四个行业是我接触下来工控安全压力最大、也最典型的四类场景。它们的共同点是一旦控制系统出问题后果不是丢数据而是冒烟、停产、甚至伤人。这跟传统IT安全完全不是一个量级。IT系统被黑了最坏情况是数据泄露、服务宕机工控系统被干扰了可能是反应釜超压、高炉炉温失控、电网频率震荡、列车信号错乱。所以这篇文章我想聊的不是教科书上的定义而是我这些年在这四个行业里看到的真实隐患、踩过的坑以及一套能落地的排查和加固思路。不管你是刚转岗做信息安全工程师的还是厂里负责自动化运维的或者是做智慧电力、微网与外部电网电力调控策略相关项目的都能从里面找到能直接抄作业的东西。先给一个整体判断工控信息安全的核心矛盾是“可用性优先”和“安全加固”之间的拉扯。IT安全讲机密性、完整性、可用性工控安全要把可用性放到第一位。你不可能因为要打补丁就把高炉停了也不可能因为要装杀毒软件就让DCS操作站卡顿。所有的方案设计都得围绕这个前提来。2. 四大行业工控安全隐患逐个拆2.1 石化行业连续生产下的协议裸奔石化是我见过工控协议最“坦诚”的行业。很多装置的DCS、SIS、PLC之间跑的还是Modbus、OPC DA这类老协议没有认证、没有加密、没有完整性校验。你在网络上抓个包能看到阀门开度、温度设定值、泵的启停命令全是明文。我印象最深的一次是帮一个炼化厂做资产梳理。他们的常减压装置和催化裂化装置之间有一条跨装置的数据链路用的是OPC DA走TCP 135端口。这条链路上跑着几百个点位但没有任何访问控制。理论上只要有人能接入那个交换机就能往里面写设定值。当时我问现场工程师“这条链路做过安全评估吗”对方说“一直这么用的没出过事。”这就是石化行业最典型的隐患不是没有风险而是风险被“一直没出事”掩盖了。具体来说石化行业的工控安全隐患集中在几个地方DCS操作站的双网卡问题很多操作站为了传数据同时连了控制网和办公网。这台机器就成了天然跳板。一旦办公网中招攻击流量可以直接穿透到控制网。SIS系统与DCS的边界模糊安全仪表系统本该独立但实际中经常为了省事和DCS共用网络或共用工程师站。移动介质管理失控外委人员拿U盘进中控室拷数据这是老生常谈但至今仍然是病毒进入控制网的主要途径。无线测温、无线变送器为了省布线成本很多新增点位走无线。无线AP如果没做隔离等于给控制网开了个空中接口。注意石化行业的加固第一优先级不是加密而是边界隔离和访问控制。先把该断的链路断掉该做的白名单做起来再谈其他。2.2 冶金行业恶劣环境下的设备老化与协议混杂冶金行业的特点是环境恶劣、设备跨度大、协议五花八门。从烧结、球团、焦化到高炉、转炉、连铸、轧钢每个工序可能用的是不同年代、不同厂商的控制系统。我见过一个钢厂同一套轧线里既有西门子S7-400又有AB的ControlLogix还有三菱的Q系列协议从Profibus到EtherNet/IP到CC-Link都有。这种混杂带来的安全隐患很直接你很难用一套统一的安全策略覆盖所有设备。而且冶金现场的高温、粉尘、电磁干扰会让网络设备本身就不稳定。我遇到过因为交换机风扇积灰导致过热重启结果整个轧线停了四十分钟。这虽然不是攻击但物理环境导致的可用性问题和攻击导致的后果是一样的。冶金行业还有几个特有的隐患老旧PLC无固件更新很多90年代末的PLC厂商早就不提供安全补丁了。你只能靠网络层隔离来保护。工程师站权限泛滥为了调试方便很多工程师站用的是管理员权限而且密码是默认的或者共享的。HMI画面直接暴露有些HMI的Web功能开着端口直接对车间网络开放任何人输入IP就能看到实时画面。备件管理混乱换下来的PLC、交换机没有做数据清除就入库里面的程序和配置可能泄露工艺参数。2.3 电力行业调控指令的完整性与实时性电力行业是我认为工控安全做得相对最规范的但也是攻击面最广、影响范围最大的。从发电侧的DCS到输变电的SCADA再到配电侧的DTU、FTU整个链条非常长。特别是现在智慧电力和微网与外部电网电力调控策略越来越普及分布式能源、储能、充电桩都接进来了边界比以前模糊得多。电力行业的核心隐患我总结为三个字完整性。电压、电流、频率这些量测数据如果被篡改调度端看到的电网状态就是假的。比如你把某个节点的电压量测改低调度可能就会误判为无功不足然后去调整变压器分接头结果导致真实电压过高。我参与过一次电力监控系统的渗透测试。测试人员在中调SCADA的外围网络里通过一个未授权的无线AP接入了管理网然后利用一台通信管理机的默认口令登录最终看到了部分变电站的遥测数据。整个过程没有触发任何告警。这件事让我意识到电力行业的边界防护不能只盯着主站厂站端的通信管理机、规约转换器同样是薄弱点。电力行业还有几个值得注意的点IEC 60870-5-104和IEC 61850协议的安全缺陷104规约本身没有认证61850的MMS也没有强认证。虽然现在有IEC 62351在补但存量设备支持有限。GPS对时系统的欺骗风险很多电力系统依赖GPS对时如果对时被干扰SOE事件顺序会乱影响故障分析。纵向加密认证装置的配置错误有些厂站装了纵向加密装置但策略配错了该加密的没加密或者密钥管理混乱。运维终端的违规外联变电站的运维笔记本经常同时插内网和公网这是老问题但屡禁不止。2.4 轨交行业国产化替代中的新老交替风险轨交行业这几年最大的变化是国产化替代。像龙芯2k3000赋能轨道交通AFC系统这样的项目越来越多国产化工控平台在AFC、PIS、综合监控里开始铺开。这是好事但新老交替期往往是最危险的。我接触过一个地铁线路的AFC系统改造项目。新上的国产化工控平台跑的是Linux老系统是Windows。改造过程中新老系统并行运行了三个月。这三个月里两套系统之间的数据接口没有做严格隔离老系统的病毒可以通过共享目录传到新系统。虽然最后没出大事但暴露出来的问题很典型国产化替代不是简单换硬件安全策略要重新设计。轨交行业的隐患还有车地通信的安全CBTC系统的车地无线通信如果被干扰或伪造后果不堪设想。虽然现在有加密但密钥管理是个大问题。AFC系统的支付安全AFC涉及票款现在又接入了二维码、NFC支付网关的安全直接关系到钱。综合监控系统的集成风险综合监控把PSCADA、BAS、FAS、ACS都集成在一起一个点被突破可能影响多个子系统。车站网络的物理安全车站的交换机、AP经常放在公共区域物理接触风险高。3. 一套能落地的工控安全排查方法3.1 先做资产测绘别急着上设备我见过太多项目一上来就买防火墙、买审计、买态势感知结果资产清单都没搞清楚。工控安全的第一步永远是资产测绘。你要知道你的网络里到底有什么设备、什么系统、什么协议、什么端口。具体怎么做我一般分三步被动流量分析在核心交换机上做端口镜像用Wireshark或者专业的工控流量分析工具抓一周的流量。重点看有哪些IP在通信、用什么协议、通信频率如何。主动扫描谨慎对于非生产区域可以用Nmap做轻量扫描。但对于生产区域绝对不能用 aggressive 扫描因为很多老PLC一被扫描就死机。我一般用SNMP查询和ARP表来补充。人工核对拿着流量分析结果去现场逐个核对设备。这一步最费时间但最准。资产测绘的输出应该是一张表至少包含设备IP、MAC、厂商、型号、固件版本、所在网络区域、通信协议、开放端口、责任人。3.2 网络分区与边界隔离资产清楚之后下一步是分区。工控网络的分区原则我一般参考ISA-95模型和等保2.0的要求把网络分成几层层级名称典型设备安全要求L0现场设备层传感器、执行器物理防护为主L1控制层PLC、DCS控制器禁止直接访问外网L2监控层HMI、操作站与L1同网段或受控互联L3生产管理层MES、历史库与L2单向或受控隔离L4企业管理层ERP、办公网与L3严格隔离分区的关键是边界。边界上要放什么我的经验是工业防火墙 单向隔离装置 访问控制列表。工业防火墙要能识别工控协议能做深度包检测。单向隔离装置用于L2到L3的数据上传确保数据只能出不能进。提示边界隔离不是越严越好。有些厂为了安全把该通的链路也断了结果生产调度拿不到数据。隔离策略一定要和工艺人员一起定。3.3 主机加固与白名单工控主机操作站、工程师站、服务器是攻击的重点目标。加固的核心思路是白名单只允许已知的程序运行其他一律阻止。具体操作操作系统加固关闭不必要的服务如Remote Registry、Print Spooler、禁用USB自动运行、设置强密码策略、开启审计日志。应用白名单用工控主机卫士或者Windows AppLocker把组态软件、杀毒软件、必要的系统进程加入白名单。注意白名单一定要在测试环境验证后再上生产否则可能把关键进程拦了。补丁管理工控系统的补丁不能随便打。我一般建议先在测试环境验证然后利用检修窗口统一打。对于不能打补丁的老系统靠网络隔离来补偿。外设管控USB口、光驱、无线网卡都要管。我见过一个厂操作站的无线网卡没禁用结果被人连上了手机热点。3.4 日志审计与异常检测工控网络的日志审计难点在于很多工控设备不支持日志输出。我的做法是在交换机上做流量镜像用全流量审计设备记录所有工控协议通信。在主机上装轻量级Agent收集系统日志和操作记录。在边界防火墙上记录所有跨区访问。把这些日志汇总到SIEM或者工控态势感知平台做关联分析。异常检测的重点不是“发现病毒”而是发现行为偏离。比如某个工程师站平时只在白天操作突然凌晨三点有大量写操作某个PLC平时只和固定的HMI通信突然和一个陌生IP通信。这些才是工控安全最该关注的信号。4. 实操中踩过的坑与排查技巧4.1 常见问题速查表问题现象可能原因排查方法解决措施操作站频繁蓝屏病毒或补丁冲突查系统日志、查最近安装的软件隔离主机、回滚补丁、杀毒PLC通信中断网络风暴或扫描抓包看广播包比例关闭扫描、做端口隔离HMI画面卡顿网络带宽被占满看交换机端口流量做QoS、限制非生产流量历史库数据缺失单向隔离装置故障检查隔离装置状态重启或更换隔离装置工程师站无法登录白名单拦截查白名单日志添加必要进程到白名单无线AP被蹭网无线未做认证查AP连接列表启用WPA2企业级认证4.2 几个独家避坑技巧技巧一扫描前先问清楚。我刚开始做工控安全的时候拿着Nmap就往生产网扫结果扫停了一台老PLC。后来我学乖了任何主动扫描之前必须书面确认哪些网段可以扫、哪些设备不能碰。对于不能扫的设备用被动方式获取信息。技巧二白名单要留后门。不是留安全后门而是留运维后门。比如白名单里要包含远程运维工具否则出故障时运维人员进不去。但这个后门要严格管控用一次开一次。技巧三补丁测试要模拟真实负载。有些补丁在空载测试时没问题一上生产就出问题。我一般建议在测试环境用历史数据回放的方式模拟真实负载跑一遍。技巧四和工艺人员做朋友。工控安全不是IT部门自己能搞定的。你需要工艺人员告诉你哪些参数不能动、哪些操作不能拦。我每次做策略调整都会拉上工艺工程师一起评审。技巧五备份比防护更重要。工控系统一旦被破坏最快的恢复方式是从备份还原。所以PLC程序、HMI画面、组态配置、数据库都要定期备份而且备份要离线保存。4.3 关于标准和规范的使用热词里提到“企业工控安全里用到的标准规范”我简单说一下我的理解。国内做工控安全最常参考的是等保2.0这是底线要求必须过。GB/T 30976工业控制系统信息安全分评估规范和验收规范。IEC 62443国际标准分通用、系统、组件几个层面。行业规范电力有《电力监控系统安全防护规定》石化有《石油化工控制系统信息安全管理办法》。我的建议是别为了合规而合规。标准是框架具体怎么落地要看你的生产实际。我见过为了过等保买了一堆设备结果不会用最后全成了摆设。5. 国产化替代背景下的新思考5.1 龙芯平台在轨交AFC中的安全实践龙芯2k3000赋能轨道交通AFC系统这个方向我最近关注比较多。AFC系统涉及票务和支付安全要求高但传统上用的都是国外工控平台。换成国产平台后安全策略需要重新设计。我的观察是国产化工控平台的优势在于自主可控你可以从底层做安全加固。比如在龙芯平台上可以定制内核、裁剪不必要的驱动、做强制访问控制。但挑战也很明显生态不成熟安全工具少。很多在x86上用的安全软件在龙芯上没有对应版本。我的建议是国产化替代项目安全设计要前置。不要等系统上线了再补安全而是在架构设计阶段就把安全需求提出来。比如AFC系统的支付网关要单独划分安全域做双向认证。5.2 智慧电力与微网带来的新边界智慧电力和微网与外部电网电力调控策略的普及让电力系统的边界从“封闭”变成了“半开放”。分布式光伏、储能、充电桩、需求响应终端这些设备都可能成为攻击入口。我参与过一个微网项目的安全评估。微网控制器需要和外部电网调度通信同时又要管理内部的分布式电源。这个控制器就成了关键节点。如果它被攻破攻击者可以同时影响微网和外部电网。我的思路是微网的安全防护要独立设计不能简单套用大电网的方案。微网的通信链路可能走公网所以加密和认证必须做。同时微网控制器要有自治能力即使和外部调度失联也能安全运行。5.3 信息安全工程师在工控领域的技能树最后聊聊人。热词里有很多关于信息安全工程师、软考信息安全工程师的内容。我想说的是工控信息安全工程师和传统IT信息安全工程师技能树差别很大。传统IT安全工程师懂网络、懂系统、懂渗透但可能不懂PLC、不懂DCS、不懂工控协议。工控安全工程师需要额外掌握工控协议Modbus、OPC、Profinet、EtherNet/IP、IEC 104、IEC 61850。工控系统DCS、PLC、SCADA、SIS的基本架构和组态。工艺知识至少要知道你保护的装置是干什么的哪些参数是关键。安全标准等保2.0、IEC 62443、行业规范。如果你正在准备软考信息安全工程师我的建议是密码学RSA计算题要会做但别只盯着考试。工控安全更看重实操能力。你可以从搭建一个小的工控实验环境开始用Modbus模拟器、OpenPLC、ScadaBR这些开源工具自己动手做一遍资产测绘、流量分析、边界隔离。6. 写在最后的一些个人体会工控信息安全这个领域知道分子比知道分子更重要。你不需要成为每个行业的专家但你需要知道在石化厂里哪些操作是禁忌、在变电站里哪些链路不能断、在地铁AFC里哪些数据不能碰。我这些年最大的体会是工控安全不是技术问题是管理问题。再好的防火墙也挡不住内部人员把U盘插到操作站上。再强的白名单也防不住工程师为了图方便把密码写在便签上贴在显示器边。所以如果你问我工控安全最重要的是什么我会说先让所有人意识到风险存在再谈技术手段。安全意识培训、操作规程、应急预案这些看起来“软”的东西往往比买设备更管用。另外别追求一步到位。工控系统的生命周期很长安全加固要循序渐进。先做资产测绘再做边界隔离再做主机加固最后做态势感知。每一步都要验证每一步都要和工艺人员确认。急不得。最后分享一个小技巧每次做安全变更都留一份回退方案。我见过太多因为安全策略配错导致生产中断的案例。变更前备份配置变更后观察至少一个生产周期确认没问题再固化。这个习惯帮我避免了好几次事故。