当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0147799

漏洞标题:西门子S7-300存在绕过权限修改寄存器值

相关厂商:西门子

漏洞作者: 路人甲

提交时间:2015-10-19 16:59

修复时间:2016-01-21 11:10

公开时间:2016-01-21 11:10

漏洞类型:权限控制绕过

危害等级:中

自评Rank:10

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-10-19: 细节已通知厂商并且等待厂商处理中
2015-10-23: 厂商已经确认,细节仅向厂商公开
2015-10-26: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2015-12-17: 细节向核心白帽子及相关领域专家公开
2015-12-27: 细节向普通白帽子公开
2016-01-06: 细节向实习白帽子公开
2016-01-21: 细节向公众公开

简要描述:

S7编程软件是官方与西门子S7-300进行通信的软件,通信协议是S7协议,通过抓取S7数据包,绕过权限,发送数据包给西门子S7-300.可通过修改数据包字段达到修改西门子S7-300寄存器(比如I区、Q区)的值。

详细说明:

首先用S7编程软件建立与西门子S7-300建立通信的程序,用wireshark抓包,通过一些攻击方式以及协议格式分析,得出没有认证字段,然后通过下载程序获得其通信流程,通过构造I区、Q区下置数据包,发送数据包给西门子S7-300。
没发送Q区数据包之前:

1.png


发送Q区数据包:

1.png


没有发送I区数据包:

1.png


发送I区数据包:

1.png


漏洞证明:

每个程序所编写程序的符号表和监视变量不一致,下面是我所监视的变量表:

1.png

修复方案:

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:9

确认时间:2015-10-23 11:03

厂商回复:

CNVD未直接复现,已经直接转报给西门子(中国)有限公司,由其后续反馈并提供解决方案。

最新状态:

2015-11-11:更新厂商回复:由于S7 300 PLC已经销售了很长时间,装机数量巨大,为保证系统间的兼容性,西门子无法修改S7协议。因此,西门子(如在安全通告中)建议客户采取如下安全防护措施:1. Restrict physical and electronic access to automation products, networks and systems to only those individuals authorized to be in contact with control system equipment2. Employ layered security and defense-in-depth methods in system design to restrict and control access to individual products and control networks. Refer tohttp://www.siemens.com/industrialsecurity for comprehensive information about implementing validated architectures designed to deliver these measures.3. Block all traffic to the PROFIBUS, MPI and PROFINET protocol based devices from outside the Manufacturing Zone by restricting or blocking Ethernet access to TCP and UDP Port# 102 using appropriate security technology (e.g. SCALANCE S612 Module order no. 6GK5612-0BA00-2AA3 or similar effective firewall, or other security appliance). 对于新建系统,建议客户尽可能第采用最新一代的S7 1200(新版本固件)及S7-1500。1200/1500系列PLC采用的是S7+协议通信,新协议在安全上做了针对性的设计,目前的这种重放攻击将无法修改S7 1200/1500 PLC的变量取值。