上个月在一个老客户的厂里喝茶聊天,他们的IT主管突然问我:”老张,你们PLC那个系统连了外网吗?”
我说连了啊,远程运维嘛,方便。他说你知不知道上个月北美那边有个水处理厂被黑客攻了,攻击者直接改了PLC里的次氯酸钠投加量,差点搞出公共安全事故。
我当时第一反应是:那都是发达国家的事,跟咱们中小工厂有啥关系?
但他接下来一句话让我后背一凉:”你说得对,但上个月常州有个小厂的中控电脑被勒索软件加密了,因为连着PLC,整个产线停了三天。赎金倒是不多,两万块,但三天停产损失二三十万。”
回去之后我花了两周时间研究了一下工控安全的现状,问了几个做这块的朋友,又查了一些公开的安全事件。说实话,越查越觉得咱们这个行业对安全的重视程度,跟赌博差不多。
真实案例一:勒索软件不挑食
我认识的一个人,在一家做金属加工的厂里当设备科长。他们厂规模不大,也就三十来号人,产线用的是几台国产PLC加上一台工控机做上位机。
年初的时候,厂里一个工人上班发现工控机屏幕上弹了个勒索信息:所有文件被加密了,要0.5个比特币(当时大概两万多人民币)解锁。
起初大家以为只是电脑中毒了,重启一下就好。结果重启之后发现——PLC通讯不上去了。因为上位机里跑的组态软件配置文件被加密了,连PLC的IP地址和通讯参数都找不到了。
厂里当时就慌了。找IT来修,IT说这是工控系统,他不懂。找自动化公司,最快也要两天后才能派人。最后硬是花了三天时间,重新安装软件、重新配置、重新下载PLC程序,才算恢复了生产。
后来查了一下,病毒是怎么进来的?一个工人的U盘。他插了U盘打了一份工艺参数文件,U盘里有毒。然后这台工控机既没有杀毒软件,也没有做网络隔离——为了远程方便,还开了3389端口暴露在公网上。
教训是啥?U盘是工业病毒传播的第一大途径,比网络攻击还常见。建议所有工控上位机禁用USB口,或者至少用一个隔离U盘做专用数据交换。
真实案例二:人走了,后门没关
还有一个更离谱的。北方一个水厂,之前请了家自动化公司做项目,项目做完了,付完款,大家都觉得事情结束了。
结果半年后,某天早上发现PLC程序被人改了。几个关键的泵启停逻辑变了,水池液位控制逻辑也乱了。还好发现得早,没有造成大的事故。
查了一个月才找到原因:当初做项目的自动化公司的一个离职员工,在自己的电脑上留了一个远程访问的VPN账号。离职后他用这个账号进了水厂的工控网络,修改了几段PLC程序。动机是什么?因为他觉得公司当初报价太低,自己的提成少,心里不平衡。
这个案例让我特别感慨。我们做自动化项目的,项目做完交付后,远程访问的账号密码有几个公司会改?西门子的Portal项目、三菱的GX Works项目,工程师站和HMI的密码,默认的”admin/123456″有几个公司换过?
这不是危言耸听。我敢打赌,看完这篇文章的兄弟,起码有一半以上没换过手里项目的默认密码。
真实案例三:工控安全事件不是个例
光说别人的事可能大家觉得离自己远。我查了一下去年国内外公开的工控安全事件,列几个有代表性的:
- 美国某水处理厂(2025年):攻击者远程入侵了工控系统,修改了PLC的化学品投加参数,将氢氧化钠的投加量增加了100倍。幸好操作员及时发现异常,手动切断了投加系统。没有造成人员伤亡,但处理费用超过10万美元。
- 欧洲某汽车零部件厂(2025年):勒索软件通过一个未打补丁的Windows工控机进入生产线网络,导致6条焊装线全部停摆。勒索金额是20万美元,但公司选择不从,最终停产4天,损失超过200万美元。
- 国内某食品厂(2026年初):PLC控制系统频繁异常停机,查了两个月找不到原因。后来发现是工控机被植入了一个挖矿木马,CPU跑满导致上位机通讯超时,引发了PLC的安全停机逻辑。居然是因为一个挖矿病毒间接搞翻了整个产线。
数据来源是ICS-CERT(工业控制系统网络应急响应小组)的公开报告。说这些不是为了制造恐慌,而是让大家知道:工控安全这件事,离我们真的不远。
我们这些搞PLC的到底该怎么办
说了这么多问题,该说说解决方案了。我整理了几条我觉得咱们普通工控人能做到、成本不高、效果比较好的安全措施:
1. 物理隔离比什么都好使
如果条件允许,把工控网络跟办公网络、互联网彻底断开。断网就是最好的安全措施,没有之一。如果非要远程运维,用VPN+白名单+双因素认证,别直接开端口暴露在公网上。
我自己现在做的项目,至少要做到:工控网是一个独立的VLAN,有防火墙限制访问,只有特定的IP才能连PLC。
2. 改掉默认密码
这可能是投入产出比最高的安全措施。项目验收的时候,把PLC、HMI、上位机的默认密码全部改掉。密码记在项目文档里交给甲方,别偷懒用”123456″或者”password”。
3. 管好U盘
上位机最好禁用USB存储设备。实在要用,用专用的U盘,每次用之前格式化一次。工控机上安装杀毒软件,定期更新病毒库(即使不联网,也可以离线更新)。
4. 程序要做版本管理和备份
每次修改PLC程序之后,导出一份完整的源程序和注释,存到安全的离线存储里。再勤快一点,连HMI程序、上位机组态文件也一起备份。万一被加密了,至少不用从头写。
5. 项目交付时别忘了账号管理
项目做完交付给甲方的同时,给他们一份完整的账号清单,包括所有设备的IP地址、登录账号密码、远程访问配置。告诉甲方:改掉这些密码,收回所有离职员工的权限。
6. 定期做安全审计
每年至少做一次工控网络安全检查。看看哪些设备连了外网,防火墙规则是不是还管用,有没有新增的未经授权的访问路径。这些事情不复杂,但就怕没人去做。
最后想说点真心话
我在工控行业干了十年,说实话,以前对”安全”这件事也抱着侥幸心理。觉得咱们这行又土又落后,黑客看不上。但这两年越来越多的实际案例告诉我,黑客不挑食。勒索病毒不会因为你厂里用的是老掉牙的MP277就绕着你走。恰恰相反,越老旧的系统越容易被攻破。
安全这件事,投入了不一定马上看到效果——可能你做了所有防护措施,三年都没出过一次事。可一旦出一次事,那损失远比你投入的安全预算大得多。
咱们工控人,每天跟电机、变频器、PLC打交道,对机械伤害、触电这些”传统”安全风险看得比较重。但网络安全这种”看不见”的风险,也该重视起来了。
你们手头的项目里,PLC系统的密码改了没?工控机有没有做网络隔离?欢迎在评论区分享你们踩过的坑或者做过的安全措施。