洛阳市西门子中国(授权)一级代理商-西门子选型-西门子技术支持-西门子维修服务
- 供应商
- 广东湘恒智能科技有限公司
- 认证
- 变频器
- 西门子代理商
- 触摸屏
- 西门子一级代理
- 伺服电机
- 西门子一级总代理
- 联系电话
- 18126392341
- 手机号
- 15267534595
- 联系人
- 梁涛
- 所在地
- 惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房(仅限办公)(注册地址)
- 更新时间
- 2025-03-01 09:10
虽然主机tia与plc之间的认证引入了非对称加密算法,但是plc与主机之间并没有进行绑定,因此仍然存在安全问题,攻击者可以伪造成一个恶意的主机/工作站,利用已知的公钥及加密算法,对plc进行非法控制或者中间人攻击。
下面介绍密钥生成算法流程:
图6 密钥生成算法
主机(tia)随机生成20字节的prekey,使用类椭圆曲线加密算法和公钥加密prekey,作为keying materaial1(对应图7中m3数据包的eg1、eg2)。
主机(tia)根据prekey计算kdf,并由此生成cek(checksum encryption key),cs(checksumseed),kek(key encryption key)。
主机(tia)将challenge和kdk相结合,使用aes-ctr加密算法和kek进行加密,其结果作为keying material3(对应m3数据包中的encryptedchallenge和encryptedkdk)。
主机(tia)用cs和keying material 3进行哈希运算(tabulationhash),得到结果tb-hash。
主机(tia)使用aes-ecb算法和cek来加密tb-hash并得到结果keying material2(对应m3数据包中的encryptedchecksum)。
图7 m3数据包结构
我们对omsp_core_managed.dll进行逆向分析,通过调用关键接口函数,构造四次握手加密认证数据包。攻击端首先发送认证数据包,密钥认证完成后发送stop功能码,成功使得西门子plcs7-1500停止运行。
正常运行时,plc s7-1500运行指示灯为绿色。运行状态如图8所示。
图8 攻击前plc正常运行
发送攻击脚本后,plc s7-1500运行指示灯变为黄色,plc停止运行,plc状态如图9所示。
图9 攻击后plc停止运行