Skip to content

Commit d0b9a2b

Browse files
committed
virtual plc
1 parent fcea126 commit d0b9a2b

36 files changed

+885
-97
lines changed

archives.html

+7-5
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@
7878
<h1>归档文件列表</h1>
7979

8080
<dl>
81+
<dt>2017-07-30 14:39:53</dt>
82+
<dd><a href='./tool/WinAC_RTX.html'>构建虚拟工控环境系列 - 西门子虚拟PLC</a></dd>
8183
<dt>2017-07-18 17:29:07</dt>
8284
<dd><a href='./security/plcinjecter.html'>利用Modbus PLC作为攻击载荷分发系统</a></dd>
8385
<dt>2017-07-04 17:53:44</dt>
@@ -112,6 +114,11 @@ <h1>归档文件列表</h1>
112114
<h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span></h4>
113115
</div>
114116
<ul class="list-group" id="recentposts">
117+
<li class="list-group-item">
118+
<a href="./tool/WinAC_RTX.html">
119+
<span class="glyphicon glyphicon-volume-down"></span> 构建虚拟工控环境系列 - 西门子虚拟PLC
120+
</a>
121+
</li>
115122
<li class="list-group-item">
116123
<a href="./security/plcinjecter.html">
117124
<span class="glyphicon glyphicon-volume-down"></span> 利用Modbus PLC作为攻击载荷分发系统
@@ -157,11 +164,6 @@ <h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span>
157164
<span class="glyphicon glyphicon-volume-down"></span> 失控:工业控制系统勒索软件
158165
</a>
159166
</li>
160-
<li class="list-group-item">
161-
<a href="./other/about.html">
162-
<span class="glyphicon glyphicon-volume-down"></span> 关于我们
163-
</a>
164-
</li>
165167
</ul>
166168
</li>
167169
</section>

author/feilt.html

+21
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,22 @@
7777
<article>
7878
<div class="article-list">
7979
<div class="panel panel-default">
80+
<div class="panel-title">
81+
<h2>&nbsp&nbsp<a href="../tool/WinAC_RTX.html">构建虚拟工控环境系列 - 西门子虚拟PLC</a></h2>
82+
</div>
83+
84+
<div class="panel-body">
85+
<div class="summary"><h2>一、 概述</h2>
86+
<p>跟随着工控安全一路走来,工控安全市场今年明显有相当大的改善,无论从政策还是客户需求,都在逐步扩大中。但是,搞工控安全研究的人员却寥寥无几。一方面工控安全是个跨学课的技术,需要了解多方面的知识,有比较高的技术上的门槛;另一方面,没有可以研究和学习的便利的环境。一般,搞这方面研究的公司或者个人 ...</p>
87+
<a class="readmore" href="../tool/WinAC_RTX.html">READ MORE</a>
88+
</div>
89+
</div>
90+
</div>
91+
</div>
92+
</article>
93+
<article>
94+
<div class="article-list">
95+
<div class="panel panel-default">
8096
<div class="panel-title">
8197
<h2>&nbsp&nbsp<a href="../security/wincc_env.html">基于WinCC多协议通信实验环境搭建</a></h2>
8298
</div>
@@ -119,6 +135,11 @@ <h2>&nbsp&nbsp<a href="../security/plcblaster.html">针对西门子PLC蠕虫的
119135
<h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span></h4>
120136
</div>
121137
<ul class="list-group" id="recentposts">
138+
<li class="list-group-item">
139+
<a href="../tool/WinAC_RTX.html">
140+
<span class="glyphicon glyphicon-volume-down"></span> 构建虚拟工控环境系列 - 西门子虚拟PLC
141+
</a>
142+
</li>
122143
<li class="list-group-item">
123144
<a href="../security/wincc_env.html">
124145
<span class="glyphicon glyphicon-volume-down"></span> 基于WinCC多协议通信实验环境搭建

category/index.html

+7-6
Original file line numberDiff line numberDiff line change
@@ -121,11 +121,12 @@ <h4 class="panel-title">
121121
<div class="panel panel-default">
122122
<div class="panel-heading">
123123
<h4 class="panel-title">
124-
<a data-toggle="collapse" data-parent="#accordion" href="#collapse-tool">tool <span class="badge pull-right">2</span></a>
124+
<a data-toggle="collapse" data-parent="#accordion" href="#collapse-tool">tool <span class="badge pull-right">3</span></a>
125125
</h4>
126126
</div>
127127
<div id="collapse-tool" class="panel-collapse collapse">
128128
<div class="panel-body">
129+
<p><span class="categories-timestamp"><time datetime="2017-07-30T14:36:00+08:00">2017-07-30 14:39:53</time></span> <a href="../tool/WinAC_RTX.html">构建虚拟工控环境系列 - 西门子虚拟PLC</a></p>
129130
<p><span class="categories-timestamp"><time datetime="2017-07-04T14:36:00+08:00">2017-07-04 17:53:44</time></span> <a href="../tool/isf.html">工控漏洞利用框架 - ISF(Industrial Security Framework)</a></p>
130131
<p><span class="categories-timestamp"><time datetime="2017-02-23T15:24:00+08:00">2017-02-23 17:27:44</time></span> <a href="../tool/icstools.html">工控安全工具集</a></p>
131132
</div>
@@ -146,6 +147,11 @@ <h4 class="panel-title">
146147
<h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span></h4>
147148
</div>
148149
<ul class="list-group" id="recentposts">
150+
<li class="list-group-item">
151+
<a href="../tool/WinAC_RTX.html">
152+
<span class="glyphicon glyphicon-volume-down"></span> 构建虚拟工控环境系列 - 西门子虚拟PLC
153+
</a>
154+
</li>
149155
<li class="list-group-item">
150156
<a href="../security/plcinjecter.html">
151157
<span class="glyphicon glyphicon-volume-down"></span> 利用Modbus PLC作为攻击载荷分发系统
@@ -191,11 +197,6 @@ <h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span>
191197
<span class="glyphicon glyphicon-volume-down"></span> 失控:工业控制系统勒索软件
192198
</a>
193199
</li>
194-
<li class="list-group-item">
195-
<a href="../other/about.html">
196-
<span class="glyphicon glyphicon-volume-down"></span> 关于我们
197-
</a>
198-
</li>
199200
</ul>
200201
</li>
201202
</section>

category/tool.html

+21
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,22 @@
7777
<article>
7878
<div class="article-list">
7979
<div class="panel panel-default">
80+
<div class="panel-title">
81+
<h2>&nbsp&nbsp<a href="../tool/WinAC_RTX.html">构建虚拟工控环境系列 - 西门子虚拟PLC</a></h2>
82+
</div>
83+
84+
<div class="panel-body">
85+
<div class="summary"><h2>一、 概述</h2>
86+
<p>跟随着工控安全一路走来,工控安全市场今年明显有相当大的改善,无论从政策还是客户需求,都在逐步扩大中。但是,搞工控安全研究的人员却寥寥无几。一方面工控安全是个跨学课的技术,需要了解多方面的知识,有比较高的技术上的门槛;另一方面,没有可以研究和学习的便利的环境。一般,搞这方面研究的公司或者个人 ...</p>
87+
<a class="readmore" href="../tool/WinAC_RTX.html">READ MORE</a>
88+
</div>
89+
</div>
90+
</div>
91+
</div>
92+
</article>
93+
<article>
94+
<div class="article-list">
95+
<div class="panel panel-default">
8096
<div class="panel-title">
8197
<h2>&nbsp&nbsp<a href="../tool/isf.html">工控漏洞利用框架 - ISF(Industrial Security Framework)</a></h2>
8298
</div>
@@ -123,6 +139,11 @@ <h2>1、S7 Client Demo</h2>
123139
<h4><i class="fa fa-home fa-lg"></i><span class="icon-label">近期文章</span></h4>
124140
</div>
125141
<ul class="list-group" id="recentposts">
142+
<li class="list-group-item">
143+
<a href="../tool/WinAC_RTX.html">
144+
<span class="glyphicon glyphicon-volume-down"></span> 构建虚拟工控环境系列 - 西门子虚拟PLC
145+
</a>
146+
</li>
126147
<li class="list-group-item">
127148
<a href="../tool/isf.html">
128149
<span class="glyphicon glyphicon-volume-down"></span> 工控漏洞利用框架 - ISF(Industrial Security Framework)

feed.xml

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

0 commit comments

Comments
 (0)