声明:本文所提到的所有问题均为虚构,环境也是自己搭的,使用的措辞轻浮、内容浅显、操作生疏,不足之处欢迎师傅们指点和纠正,感激不尽
前情提要
某十一前夕回家,发现家门口的地铁站修整施工一年多了,偷偷溜进去视察一下施工情况,已经进入调试阶段了,发现总控室的桌子上放着一份VPN使用说明
,最后竟然附了一张连接的账号密码名单,好玩儿的这不就来了^_^(并没有)
内网探测分析
进入该地铁站内网后,先简单进行内网探测,直接发现有多个开放102端口
的设备(当时没截图,这次探测一个看一下吧),既然是地铁站,猜测该端口通常为运行S7comm
/S7comm+
协议的PLC
所开放的通信端口
既然端口都探测到了,不试一试怎么行,在不知道是否存在防火墙的情况下先浅浅尝试一些低危操作,进一步探测发现,设备都为西门子S7-300 PLC
,其所使用的S7comm协议
具有严重漏洞,所有的流量都为明文传输
PLC流量分析
经过追踪,发现其中一个PLC
的上级交换机,且该交换机为网管交换机
登录口:
随手一个弱账号密码 admin/admin
即可登录该网管交换机
登录进入该交换机后,发现连接有多个PLC
,并且有流量镜像的功能,于是将PLC
的流量都镜像出来
分析对应功能
经过几周陆陆续续的抓包分析,发现有上位机与PLC
通讯,且偶有一些写入PLC内存地址
的操作,使用布尔值作为功能的开关变量,猜想可能为控制的某些功能
根据掌握的PLC读写
的内存地址与值,构造攻击脚本并实地测试不同内存地址所控制的具体功能点
发起总攻
设计一套非常可怕的破坏流程,实现站内信号灯变绿、列车发生事故后变成跑马灯,安全门在列车进站时打开、在列车发生事故后关闭禁止救援人员直接进入,列车出站时改变道岔使列车当场脱轨,然后控制按下紧急停止按钮
攻击结果附图
总结
该地铁站暂未安装安全防护设备,且由于西门子S7-300 PLC
使用的S7comm协议
通信为明文传输,因此将其作为控制单元极具安全隐患,考虑到控制单元一般不宜更换,建议该地铁站将生产区使用防火墙进行隔离保护
以上研究分析与渗透均在合法、授权范围内,此次渗透未造成任何事故发生
关注公众号后台回复 0001
领取域渗透思维导图,0002
领取VMware 17永久激活码,0003
获取SGK地址,0004
获取在线ChatGPT地址,0005
获取 Windows10渗透集成环境
加我微信好友,邀请你进交流群
往期推荐
原文始发于微信公众号(刨洞技术交流):记一次地铁站的沦陷
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论