设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
TIAV17+S7-1200:解析最新西门子S7CommPlus协议 ...
返回列表
发新帖
[西门子]
TIAV17+S7-1200:解析最新西门子S7CommPlus协议
[复制链接]
96715
|
0
|
2024-4-16 08:02:18
|
显示全部楼层
|
阅读模式
↑ 点击上方
“智能制造之家”
关注我们
作者 | 绿盟科技格物实验室 高剑
本号相关PPT与资料,未在文末留下下载关键字的,需进入智能制造之家知识星球自行下载~
写在前面
大家好,我是小智,智能制造之家号主~
前面我们分享了西门子、施耐德、三菱、罗克韦尔等工业巨头的主要工控协议及其端口:
西门子、施耐德、三菱、RA:全球主要工控协议及端口解析
也原创了很多工业协议、工业通讯相关的干活文章:
技术解读PROFINET、Ethernet/IP等7种主流工业以太网
最全整理工业通讯上的领域各种总线+协议+规范+接口—数据采集与控制
最详细的工业网络通讯技术与协议总结解读(现场总线、工业以太网、工业无线)
IT、OT 深度融合的当下,无论是OT侧,还是IT侧,各种协议都起到了至关重要的作用,比如前面我们提到的各种工控协议的解读与密码破解:
西门子、施耐德、罗克韦尔:三大工控厂商PLC密码保护突破之旅
S7-1200+SCADA:详解西门子S7协议与数据读写
西家私有协议也从S7CommPlus-V1版本、V2版本、带有完整性校验的V3版本,发展到到如今带有TLS套接层的加强版S7CommPlus,今天我们就来使用最新的TIA V17+ S7-1200+ wireshark,来和大家聊一聊~
1研究对象
2021年5月28日,西门子发布了TIA V17,这是一个集成了多种高端功能的新一代自动化系统的集成开发环境,其中最有亮点的是TIA Portal 云连接器提供对本地 PC 接口和 TIA Portal Engineering 中连接的 SIMATIC 硬件的访问,而工程本身则可以通过私有云中的远程桌面执行,其他的亮点见下图。
我们关注的是西门子提及到的最新支持的安全协议。
为了配合上位机组态软件,西门子在2021年5月12日就发布了S7-1200系列的最新版本固件V4.5.0这是一个大版本的更新,不再以V4.4开头,其中修改了很多问题也增加了一些功能。
综上所述,本次研究的对象是:
上位机:TIA V17
下位机:S7-1215C DC/DC/DC & Firmware V4.5.0
2环境搭建
TIA V17安装在虚拟机中,为了节约空间和计算资源,可以只安装STEP 7部分。
组态对应的S7-1215C DC/DC/DC的工程文件,编译后下载到控制器中。由于使用了最新版本TIA V17,在初始组态设备时会告知用户进行PLC的安全设置,包括了保护机密的PLC数据、PG/PC和HMI的通信模式、PLC访问保护。在此我们打开PG/PC和HMI的通信模式选择为“仅支持PG/PC和HMI的安全通信”。
在下装过程中,新加了一个可信认证的过程,必须由TIA V17认可PLC才可建立可信链接。
下装完成后,环境的配置参数如下所示
3通信过程分析
该部分我们从第一次下装初始创建的TIA V17工程开始分析,分析前需要在Wireshark中安装解析S7CommPlus的解析插件,本次使用的S7Comm-Plus Wireshark dissector plugin V0.0.8版本,以查看交互的数据是否还可以被解析。
启动Wireshark准备抓包,通过Profinet扫描到PLC后,选中需要下装的设备,点击下载按钮。此时查看通信的报文过程,首先TIA客户端发送CR请求报文,由PLC恢复CC确认报文,这一步是在创建COTP链接。
完成COPT链接后,紧接着客户端使用S7CommPlus协议的V1版本给客户端发送了一个请求报文,推测是设置通信模式。
设置完通信模式后,TIA V17给PLC发送了TLS handshake的请求client hello报文,使用的TLS协议版本为V1.2。
紧接着PLC作为服务器回复了TIA V17客户端的client请求,如下所示
接下来就是TIA V17发送TLS V1.2协议的change_cipher_spec的content type,通知PLC后续的数据传输即将被加密。
紧接着TIA V17发送了应用层被TLS加密的数据,见下图。其中0x17是应用数据传输功能码,0x0303为TLS的协议版本V1.2,0x0100为数据域的size,紧接着为Encrypted Application Data,从0xac54到结尾。
此时PLC回复了TIA V17的请求报文,当然也是由带有TLS V1.2套接层保护的,所有数据都被加密了。
从此处往后,TIA V17与PLC交互的通信报文都带有TLS保护层。可以看出西门子虽然对S7Commplus协议做了TLS套接层处理,但是和原始的TLS V1.2协议的处理流程还是有很大区别, 下边是原始TLS的握手流程,应用到工控系统中还是做了很多调整,整个TLS的握手和证书处理、可信连接的创建都由西门子单独设计的一套机制。
综上所述,采用了S7CommPlus_TLS的通信处理流程为:
TCP三次握手完成;
客户端发送CR请求;
服务器响应CC数据;
客户端发送S7CommPlus_V1的通信设置请求;
服务器回应通信设置;
客户端发送TLS handshake请求;
服务器回应handshake;
客户端发送change_cipher_spec请求,通知后续报文加密;
客户端紧接着发送TLS加密后的报文数据;
服务器回应带有TLS加密的报文数据;
4总结
在工控领域中将稳定性和实时性置于系统需求的首位,西门子在工业通信协议中加入TLS安全套接层是否会影响到控制系统的实时性,这个问题还有待于工业现场的验证,但在安全性上可以说是增加了许多,也让恶意攻击者更难通过远程的手段进行一些低等级的攻击(比如重放攻击)。但网络世界的攻防对抗是不会停止的,有加密就会有解密,有多厚重的保护装备就会有多犀利的破解法门。我们最近也针对该协议做了些许分析,知道了加密前的协议、知道了证书的交换等等,发现了一些安全隐患目前正在验证阶段。我们致力于在黑客之前找到安全问题并与厂商一起修复隐患,以做到防患于未然,更好的保护工业控制系统。
工业系统在设计之初都没考虑到安全问题,但随着网络攻击的愈演愈烈工业系统会根据相关的规定对所有部件、协议进行加固处理,比如针对工业通信协议会做授权、认证、加密的处理,西门子已经在做这些事情,可以预计在未来的五年工业现场的通信协议都会做安全处理,对于抵御外部的威胁起到了显著的作用,但同时对于安全厂商也提出了要求,如何审计加密的工业通信流量,如何在加密流量中找到威胁行为等。
硬核专辑
ERP/PLM/MES/SCADA/PLC/工业软件研究报告
信息化、数字化、智能制造、工业互联网解决方案
自动化、信息化、数字化、工业网络、仿真与虚拟调试入门
WinCC技术 | 工业网络 | MES技术相关| 工业巨头战略布局 | 工业通讯案例
仿真与虚拟调试 | 职业感悟、认知提升 | 自动化控制标准合集
TIA V16+MCD+SIMIT创建自动化系统仿真模型
2021-07-01
某工业巨头MES+SCADA+APS技术方案及项目推进计划
2021-07-03
中国工业机器人行业产业链深度研究报告
2021-06-28
设备通讯与数字化制造——半导体行业通信标准SECS/GEM最全解读
2021-06-18
工控巨头西门子、施耐德私有S7、UMAS协议解析与PLC密码破解
2021-06-12
102页阿里巴巴数字智能工厂完整解决方案
2021-06-07
西门子、施耐德、罗克韦尔:三大工控厂商PLC密码保护突破之旅
2021-05-16
122页MES/MOM解读之APS典型能力和系统功能讲解
2021-05-07
200页PPT,详述MES/MOM与APS系统及其选型(下载)
2021-04-22
机械加工行业数字化车间规划与方案
2021-04-20
2021中国工控自动化行业产业分析(PLC\DCS\变频\伺服\步进)
2021-04-18
S7-1500+TIA+MCD:西门子仿真与虚拟调试的硬件在环调试流程
2021-04-12
欢迎关注"智能制造之家"
免责申明:本公众号所载文章为本公众号原创或根据网络搜索编辑整理,文章版权归原作者所有。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片,资料,下载链接中所包含的软件,资料等,如有侵权,请联系删除~----智能制造之家
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
supernpl
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』