|
1 | 1 | <?xml version="1.0" encoding="utf-8"?>
|
2 |
| -<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>工匠安全实验室 | 专注于工控安全</title><link>http://icsmaster.com/</link><description></description><atom:link href="http://icsmaster.com/feed.xml" rel="self"></atom:link><lastBuildDate>Tue, 18 Jul 2017 14:36:00 +0800</lastBuildDate><item><title>利用Modbus PLC作为攻击载荷分发系统</title><link>http://icsmaster.com/security/plcinjecter.html</link><description><h2>一、 介绍</h2> |
| 2 | +<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>工匠安全实验室 | 专注于工控安全</title><link>http://icsmaster.com/</link><description></description><atom:link href="http://icsmaster.com/feed.xml" rel="self"></atom:link><lastBuildDate>Sun, 30 Jul 2017 14:36:00 +0800</lastBuildDate><item><title>构建虚拟工控环境系列 - 西门子虚拟PLC</title><link>http://icsmaster.com/tool/WinAC_RTX.html</link><description><h2>一、 概述</h2> |
| 3 | +<p>跟随着工控安全一路走来,工控安全市场今年明显有相当大的改善,无论从政策还是客户需求,都在逐步扩大中。但是,搞工控安全研究的人员却寥寥无几。一方面工控安全是个跨学课的技术,需要了解多方面的知识,有比较高的技术上的门槛;另一方面,没有可以研究和学习的便利的环境。一般,搞这方面研究的公司或者个人,都会先购买一些硬件设备,搭建一个模拟环境,再做相应的安全研究,成本实在是太高。为了解决这个问题,我们做了一系列的相关的技术研究,通过构建一套虚拟的工业控制环境,从而降低了解和学习工控安全的门槛,推动相关人才的培养。</p> |
| 4 | +<p>本篇主要介绍西门子虚拟PLC,使用的操作系统为Windows7 x86 Ultimate,虚拟化软件为 VMware Workstation 12 Pro,(SIEMENS)WinAC RTX 2010。</p> |
| 5 | +<h2>二、 控制器虚拟化技术介绍</h2> |
| 6 | +<p>可编程控制器,即PLC。PLC的实现分为硬PLC和软PLC。 所谓硬PLC从严格意义上来说是由硬件或者一块专用的ASIC芯片来实现PLC指令的执行.而软PLC是用一些通用的CPU或者MCU来实现PLC指令的解释或者编译持行。</p> |
| 7 | +<p>软件PLC(SoftPLC,也称为软逻辑SoftLogic)是一种基于基于PC机开发结构的控制系统,它具有硬PLC在功能、可靠性、速度、故障查找等方面的特点,利用软件技术可以将标准的工业PC转换成全功能的PLC过程控制器。软件PLC综合了计算机和PLC的开关量控制、模拟量控制、数学运算、数值处理、网络通信、PID调节等功能,通过一个多任务控制内核,提供强大的指令集、快速而准确的扫描周期、可靠的操作和可连接各种I/O系统的及网络的开放式结构。所以,软件PLC 提供了与硬PLC同样的功能,同时又提供了PC环境的各种优点。</p> |
| 8 | +<p>虚拟机技术是虚拟化技术的一种,所谓虚拟化技术就是将事物从一种形式转变成另一种形式,最常用的虚拟化技术有操作系统中内存的虚拟化,实际运行时用户需要的内存空间可能远远大于物理机器的内存大小,利用内存的虚拟化技术,用户可以将一部分硬盘虚拟化为内存,而这对用户是透明的。又如,可以利用虚拟专用网技术(VPN)在公共网络中虚拟化一条安全,稳定的“隧道”,用户感觉像是使用私有网络一样。</p> |
| 9 | +<p>如果将软PLC安装在虚拟机下,在软PLC出现故障时,用备份的虚拟机代替当前的虚拟机,即可快速恢复系统运行;此外,开发人员不必在现场,即可开发调试项目,在调试完成后,将包含软PLC的虚拟机直接放在现场的工控计算机上就直接可以完全运行。但是软PLC目前只能在物理PC上安装运行,在虚拟机下可以安装,但不能运行,这是由于软PLC需要直接驱动硬件,而虚拟机中的硬件都是虚拟造成的。</p> |
| 10 | +<h2>三、西门子虚拟化WinAC产品分类</h2> |
| 11 | +<p>SIMATIC WinAC是西门子公司开发的基于PC控制的核心组件,它的出现扩展了SIMATIC S7的控制范围。WinAC是一个名副其实的控制中心,它将PLC控制、数据处理、通讯、可视化及工艺集成于一台PC机上。 SIMATIC WinAC产品包括软件型和插槽型两大类,包括如下5种产品: </p> |
| 12 | +<ul> |
| 13 | +<li> |
| 14 | +<p>1、WinAC Basis (WinAC 基本型) |
| 15 | +WinAC Basis 是低成本解决方案,用于对控制无精确时间要求,有大量、快速的数据处理与控制任务(控制任务指PLC的控制功能)相结合或其它PC任务的控制场合。</p> |
| 16 | +</li> |
| 17 | +<li> |
| 18 | +<p>2、WinAC PN |
| 19 | +第一个支持PROFInet通讯标准的SIMATIC CPU,性能与WinAC Basis相似。WinAC PN支持基于组件的自动化(CBA)和PROFInet通讯标准。基于组件的自动化和PROFInet提供了一个开放的标准,用于在复杂任务中机械和系统单元之间的数据交换。数据交换通过SIMATIC iMap工具来进行配置。WinAC PN适应于以下任务: |
| 20 | +整个复杂系统的机械和车间区域之间的协调和连接 来自系统单元或机械可被集成到一个全范围的复杂系统控制WinAC Basis 4.1有一个选件WinAC PN,带有WinAC PN选件的WinAC Basis 4.1支持PROFInet和CBA。</p> |
| 21 | +</li> |
| 22 | +<li> |
| 23 | +<p>3、WinAC RTX(WinAC 实时型) |
| 24 | +WinAC RTX 提供了Windows 2000/XP的实时子系统,具有“硬实时”和“抗死机”特性。适应于具有高速和精确时间要求的控制任务的场合,如运动控制、闭环控制等。 </p> |
| 25 | +</li> |
| 26 | +<li> |
| 27 | +<p>4、WinAC MP |
| 28 | +WinAC MP基于WinCE操作系统和SIMATIC MP370(一种多功能面板)硬件平台。MP370为无硬盘、无风扇设计,WinCE具有实时特性,可实现严格的确定性动作。WinAC MP用在恶劣工业环境和有大量数据要处理的场合。 </p> |
| 29 | +</li> |
| 30 | +<li> |
| 31 | +<p>5、WinAC Slot 412/416 |
| 32 | +以板卡的形式插入在PC中,在板卡上已经集成了用于控制任务的CPU、存储器等元件。它可独立于PC进行控制操作。板卡上集成一个MPI/DP接口和一个DP口。WinAC Slot适用于对安全性和稳定性要求较高的场合。WinAC Slot 412/416在性能上与S7-412/416相近。</p> |
| 33 | +</li> |
| 34 | +</ul> |
| 35 | +<h2>四、虚拟控制器WinAC RTX搭建</h2> |
| 36 | +<p>1、打开虚拟机系统的安装目录,找到后缀名是“.vmx”的文件,然后用记事本打开。</p> |
| 37 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/1.png" /></p> |
| 38 | +<p>2、添加虚拟网卡设备,添加如下配置。如果配置文件中已存在,则不添加“ethernet0.virtualDev = "e1000e"”,直接将等号后面的值改为"e1000e"。</p> |
| 39 | +<div class="highlight"><pre>ethernet0.virtualDev = &quot;e1000e&quot; |
| 40 | +bios440.filename=&quot;FUJITSU211_314.ROM&quot; |
| 41 | +</pre></div> |
| 42 | + |
| 43 | + |
| 44 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/2.png" /></p> |
| 45 | +<p>3、在西门子技术支持的官网(<a href="https://support.industry.siemens.com">https://support.industry.siemens.com</a>)下载文件“FUJITSU211_314.ROM”,并将在虚拟机安装目录下。此文件是将虚拟机硬件映像成FUJITSU PRIMERGR服务器。如下图所示。</p> |
| 46 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/3.png" /></p> |
| 47 | +<p>4、打开运行虚拟机,配置当前主机的IP地址。</p> |
| 48 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/6.png" /></p> |
| 49 | +<p>5、使用虚拟光驱安装WinAC RTX 2010。</p> |
| 50 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/4.png" /></p> |
| 51 | +<p>6、安装完后启动station Configurator。</p> |
| 52 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/5.png" /></p> |
| 53 | +<p>7、打开的窗口中添加WinLC RTX,添加通讯网卡“IE 通用”</p> |
| 54 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/7.png" /></p> |
| 55 | +<p>8、此时会发现桌面上多出一个图标,此图标就是虚拟PLC的图标,双击打开即可。至此,就完成了在虚拟机中安装PLC。</p> |
| 56 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/8.png" /></p> |
| 57 | +<h2>五、虚拟控制器组态</h2> |
| 58 | +<p>1、打开step7软件,创建工程,并进行组态配置,配置方法如下图所示。</p> |
| 59 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/9.png" /></p> |
| 60 | +<p>2、编写一个小的测试程序。</p> |
| 61 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/10.png" /></p> |
| 62 | +<p>3、编译并下载组态程序。</p> |
| 63 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/11.png" /></p> |
| 64 | +<p>4、监控运行,如果一切正常,即显示为“RUN”状态。</p> |
| 65 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/12.png" /></p> |
| 66 | +<p>5、可以使用step7软件控制虚拟PLC的启停。</p> |
| 67 | +<p><img alt="Alt text" src="/static/images/WinAC_RTX/13.png" /></p> |
| 68 | +<p>至此,就完成了虚拟PLC的搭建。</p></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">feilt</dc:creator><pubDate>Sun, 30 Jul 2017 14:36:00 +0800</pubDate><guid>tag:icsmaster.com,2017-07-30:tool/WinAC_RTX.html</guid><category>虚拟PLC</category><category>软PLC</category></item><item><title>利用Modbus PLC作为攻击载荷分发系统</title><link>http://icsmaster.com/security/plcinjecter.html</link><description><h2>一、 介绍</h2> |
3 | 69 | <p>随着互联网+、工业4.0的推进,以前的网络边界被逐渐打破,工业控制系统的安全问题越来越突出,近期针对控制器的攻击层出不穷,如 <a href="http://icsmaster.com/news/logicblob.html">PLC逻辑炸弹</a>、<a href="http://icsmaster.com/security/ClearEnergy.html">PLC勒索软件</a>,<a href="http://icsmaster.com/security/plcblaster.html">PLC蠕虫</a>,相关的技术我们一直在跟踪分析。</p>
|
4 | 70 | <p>本文主要介绍怎么利用Modbus PLC作为攻击载荷,将恶意代码隐藏在控制器(programmable logic controllers)中,从而躲避当前的主流的网络攻击检测,提高攻击的隐蔽性,使得网络攻击难发现以及难溯源。下文中主要使用是施耐德电气的控制器TM221,该设备使用的主要的通信协议是Modbus Tcp,被中小型制造工厂广泛使用,以实现制造工艺的自动化。由于Modbus Tcp协议存在多个安全问题,利用Modbus Tcp协议可以实现任意上传和下载内存数据,因此,可以将攻击载荷上传至PLC内存中,从而躲避常规的安全检测。</p>
|
5 | 71 | <h2>二、 利用modbus-cli操作plc寄存器</h2>
|
|
0 commit comments