无心飞扬 发表于 2012-12-25 08:35:33

CoDeSys被曝重大缺陷

据安全咨询公司Digital Bond的一份报告显示,CoDeSys这个软件含有的一个安全漏洞,让潜在的攻击者可以在不需要验证身份的情况下,在易受攻击的设备上执行敏感命令。
CoDeSys是由总部设在德国肯普滕的一家名为3S-Smart Software Solutions的公司开发而成的。据该公司网站介绍,这个软件用于200多家厂商的工业控制系统(ICS)上。
不叮无缝的蛋
去年Digital Bond启动了这个ICS安全研究项目,发现该安全漏洞的是Digital Bond以前的研究人员里德·怀特曼,他是Project Basecamp项目的一员。
该安全漏洞被描述为是个设计问题,存在于CoDeSys运行系统,这个应用程序运行在可编程逻辑控制器(PLC)设备上。PLC是一种数字计算机,负责自动控制发电厂、石油天然气精炼厂、工厂及其他工业或军事设施的机电过程。
CoDeSys运行系统让PLC可以装入和执行所谓的梯形逻辑文件,这些文件可以在普通计算机上用CoDeSys开发工具包来创建,并且所包含的指令影响着由PLC控制的过程。
据Digital Bond的报告显示,CoDeSys运行系统可以打开一项TCP(传输控制协议)侦听服务,该服务让人们不需要验证身份,就可以访问命令行接口。
该公司开发并公布了两个Python脚本:一个可用于访问命令行接口,另一个可以在运行CoDeSys运行系统的PLC上读取或写入文件。公司打算把这些脚本转换成面向Metasploit的模块,Metasploit是一种流行的渗透测试框架。
视PLC设备型号而定,命令行接口让潜在的攻击者可以开始、停止或重置PLC程序;转储PLC内存;获得关于在PLC上运行的任务和程序的信息;拷贝、更名和删除PLC文件系统上的文件;以及设置或删除在线访问密码和更多内容。
Digital Bond的创始人兼首席执行官代尔·彼得森近日在博文中表示,安全漏洞和脚本只在来自261家可能受到影响的厂商的一小批产品上进行了测试。其中一种PLC在x86处理器上运行Linux,而另一种PLC在ARM处理器上运行Windows CE。
安全公司IOActive的安全研究人员鲁宾·桑塔玛塔近日通过电子邮件说:“这次攻击不仅可以用来控制PLC,还可以用来把PLC变成‘代理’,进而攻击网络上的其他设备。”作为Project Basecamp的一员,桑塔玛塔过去曾发现了工业控制系统存在的安全漏洞。
3S-Smart Software的支持经理埃德温·施韦林格近日通过电子邮件说:“我们意识到了这个安全问题。补丁正在开发当中,但还没有发布。我们的压力很大,正在竭力解决这些问题。”
施韦林格表示,攻击者只有已经访问了PLC运行系统运行在其中的网络,才能钻这个安全漏洞的空子。他表示,除非额外的保护措施落实到位,否则可以从互联网访问运行系统。
以防万一
里德·怀特曼如今在IOActive担任安全顾问,他在twitter上说:“为数不少的易受攻击的CoDeSys系统暴露在互联网面前。有些通过shodan搜索引擎就能被发现,有些通过自定义扫描就能被发现。”
桑塔玛塔说:“按道理,PLC不可以通过互联网就能被访问。然而,许多网络通过高级可持续威胁(APT)而中招,这种恶意软件为攻击者提供了本地网络访问权限;在这样的情况下,网络边界不再重要。”
施韦林格说:“应当尽量避免将PLC和PLC网络暴露在公共网络和互联网面前。”他表示,客户应该采用另外的安全层,比如为远程访问使用虚拟专用网络(VPN),安装防火墙,还应该限制只有授权用户才能访问敏感网络。
安全漏洞研究公司ReVuln的安全研究人员路易吉·奥里玛说:“与SCADA(监管控制和数据采集)环境有关的任何事情都不容忽视。”他之前发现并披露了SCADA系统存在的安全漏洞。“如果你能控制PLC,那么就能控制基础设施。”
比如说,Stuxnet恶意软件在感染了伊朗纳坦兹核燃料浓缩厂的PLC后,篡改了所编程序,破坏了大约1000只铀浓缩离心机。据说这起攻击事件被认为致使伊朗的核计划倒退两年之久。
幸好,众多厂商在没有官方补丁的情况下仍可以采取一些变通方法。
彼得森说:“黑客工具在一家厂商的至少一个产品上无法使用,该厂商不愿透露姓名。这家厂商采用了安全开发生命周期(SDL),这包括威胁建模环节。该公司识破了上传未授权梯形逻辑和其他恶意文件的威胁,发现CoDeSys运行系统解决不了这个问题,于是在运行系统外面添加了一层‘安全外壳’。所以用户或攻击者基本上需要先验证身份,才能访问CoDeSys运行所依赖的那个端口。”
桑塔玛塔表示,与此同时,受影响产品的用户可以部署网络分段机制、访问控制列表、防火墙和入侵预防系统。

新手88 发表于 2013-1-7 10:59:03

用了那麽多年,才听说。:dizzy:

ktod 发表于 2013-4-12 14:46:12

这样子!

navy 发表于 2013-6-2 21:38:50

CoDeSys的通讯数据设计确实比较简单, 而kw都比他要复杂一些。 抓取CoDeSys的数据包可以看到,在Login服务中设置Application为4,基本上就可以为所欲为了

领会精神 发表于 2013-9-5 17:36:48

刚接触。。。听说西门子PLC也有漏洞?
页: [1]
查看完整版本: CoDeSys被曝重大缺陷