回复:转帖:PLC-导火线:工控PLC蠕虫的实现

RENHQ

西门子1847工业学习平台

  • 帖子

    13697
  • 精华

    61
  • 被关注

    2171

论坛等级:至圣

注册时间:2008-12-28

钻石 钻石 如何晋级?

发布于 2016-08-30 11:54:20

1楼


9.  保护机制 

PLC S7-1200v3提供三种保护机制。我们会依次分析这些机制并确定这些机制是否能够保护PLC免收蠕虫感染。这个分析报告是基于TIA portal V11 SP2 Update 5 和使用

firmware 3.0.2的S7-1200 

 

9.1 专有技术保护(Knowhow Protection) 

专有保护技术保护用户程序不被未授权访问。用密码可以禁止非授权访问和POU

篡改。专有保护技术通过属性块儿实现的,该块在程序传输的时候被写入到PLC中。在图15中展示了该块。Flag表示该技术是否启用。password hash 是基于密码P使用如下公式产生的: 

H = sha-1(encode_utf-16le(P)) 

 

Figure 15. Attribute block: knowhow protection 

 

TIA端口获取该属性块。如果flag被设置了,TIA portal在密码不正确的情况下会禁止读和写相关程序块。密码是通过hash进行比对的。 

 

为了避免代码被访问,PLC上XML的源代码是通过AES128-CBC加密的。图16展示

了加密的源代码。 

 

Figure 16. Encrypted source code 

9.1.1. 薄弱点 

 

完整性保护缺失

即使在专有保护技术的存在下,块还是有可能被读取和修改。该保护特征是在TIA portal中实现的,而不是在PLC里面。使用自写工具在PLC中进行块的读写是可以的,PLC中拥有绝对的权限。甚至能够直接重置专用保护技术flag,以至于可以通过TIA portal来实现完全访问。 

 

AES-key可能被衍生 

AES加密key可能来自于 password hash。 password hash可以通过自写入软件来读取。Key是采用如下公式计算得到的: 

9.1.2. 从蠕虫的角度分析保护功能 

该特性不能够防止蠕虫攻击 

 

9.2. 防拷贝保护 

防拷贝保护禁止将用户程序拷贝到另外一个PLC中。目标PLC的序列号是存在于用户程序中,以此防治TIA Portal将用户程序传输到其他PLC中。序列号被储存在几个独立的属性块当中。  

9.2.1. 更多薄弱点 

完整性保护缺失(供应商在SSA-833048中已经修复)指的是属性块的完整性未经任何保护。存储其中的序列号可能被修改甚至删除。PLC本身并不会检查序列号,这种保护特性仅仅是在TIA portal中实现的。 

9.2.2. 蠕虫的角度来分析防拷贝保护机制 

该(防拷贝特性)特性也不能防止该蠕虫的攻击 

9.3. 访问保护 

 访问保护可以防止用S7CommPlus协议软件实现无密码访问PLC。其有三种保护级别,表格2列出了不同的级别。 

 

Table 2. Access based on the protection level 

 

这些级别的验证采用的是challenge响应机制【8】。 

 

9.3.1. 从蠕虫的角度分析访问保护机制 

该访问保护机制可以保护PLC免受蠕虫的攻击。写保护可以防止任何人篡改PLC中的代码。使用challenge响应机制来鉴定应该说是安全的。如果蠕虫不知道密码,那么就无法感染PLC。但是在默认情况下访问保护都是关闭的。 

 

10. 结论 

在这篇文章中我们阐述了PLC蠕虫实现的可行性。该蠕虫代表了工控行业中的一种新型威胁。这样的网络在传统观念里都很好地受到保护而难以受外部攻击。通过引入PLC蠕虫,PLC成为了攻击源,而不只是攻击目标。受感染的PLC可能通过工控组件提供商或者在组件传输过程中被掺入其中而进入到工控系统中。蠕虫之后便可以在工控网络内部进行扩散,且不需要任何标准电脑和服务器。因此它不会被任何杀毒软件做侦测到。此外工厂操作员也只有很少选择来识别PLC上的恶意软件。 

参考: 

[1] Eric Chien Nicolas Falliere, Liam O Murchu. W32.Stuxnet Dossier. Last accessed 

https://www.symantec.com/content/en/us/enterprise/media/ 

security_response/whitepapers/w32_stuxnet_dossier.pdf on 

06.02.2016, 2011. 

[2] Johannes Klick u.a. Internet-facing PLCs - A New Back Orifice. 

https://www.blackhat.com/docs/us-15/materials/ 

us-15-Klick-Internet-Facing-PLCs-A-New-Back-Orifice-wp. 

pdf, 2015. 

[3] pressetext.deutschland. Malware-Jubil?um: 20 Jahre Internet-Würmer.http://www. 

pressetext.com/news/20081101001, 2008. 

[4] Nicholas Weaver u.a. A Taxonomy of Computer Worms. https://www1.icsi. 

berkeley.edu/~nweaver/papers/2003-taxonomy.pdf, 2003. 

[5] thomas_v2. S7comm Wireshark dissector plugin. http://sourceforge.net/ 

projects/s7commwireshark/files/. 

[6] Dwight E. Cass Marshall T. Rose. ISO Transport Service on top of the TCP. Last accessed 

https://tools.ietf.org/html/rfc1006on 21.02.2016, 1987. 

[7] International Organization for Standardization. Connection oriented transport protocol. 

ISO Std. 8073, 1988. 

[8] SCADAStrangeLove. S4x13 Releases: S7 password offline bruteforce tool. http: 

//scadastrangelove.blogspot.de/2013/01/s7brut.html, 2013. 


帖子来自看雪论坛@PEdiy.com

原帖地址:http://bbs.pediy.com/showthread.php?t=212341


Q群:https://jq.qq.com/?k=9BDuEgf6
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15235条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。