工业以太网EtherNet/IP协议安全分析整理
1、 EtherNet/IP :
设备可以用户数据报协议(UDP)的隐式报文传送基于IO的资料 ,用户传输控制协议(TCP)显示报文上传和下参数,设定值,程式 ,用户主站的轮询 从站周期性的更新或是改变状态COS,方便主站监控从站的状态,讯息会使用UDP的报文发送出去
特性: EnterNet/IP 工业以太网组成的系统具有兼容性和互操作性,资源共享能力强和传输距离远,传输速率高优势
EtherNetIP在物理层和数据链路层采用以太网,可以与标准的以太网设备透明衔接,并保证随着以太网的发展,EtherNetIP也可以进一步扩展。EtherNetIP的网络层和传输层采用UDP协议传送实时性要求高的隐式报文,如面向控制的实时I/O数据,优先级较高;用TCP协议的流量控制和点对点特性通过TCP通道传输非实时性的显示报文,优先级较低
工作模式:
EtherNet/IP采用生产/消费模式,它允许网络上的节点同时存取同一个源的数据。在生产/消费模式中,数据被分配一个唯一的标识,每一个数据源一次性的将数据发送到网络上,其他节点选择性的读取这些数据,从而提高了系统的通信效率
EnterNet/IP存在的漏洞
2012年2月14日,Basecamp计划的安全研究者提出了一个针对洛克威尔的ControlLogixPLC,EtherNet/IP通讯缺陷的Metasploit攻击。此安全性漏洞若没处理,可以允许远端攻击者破坏设备或使设备在未预期的情形下重新开机,而这些设备往往也是工业系统上的关键设备或元件
EthernetIP是实时以太网协议,容易受到以太网漏洞的影响,由于UDP之上的EthernetIP是无法连接的,因此没有内在网络层机制来保证可靠性、顺序性或进行数据完整性检查。CIP协议是一个端到端的面向对象并提供了工业设备和高级设备之间连接的一种协议,EtherNetIP协
CIP协议是一个端到端的面向对象并提供了工业设备和高级设备之间连接的一种协议,EtherNetIP协议在基于传统TCP/IP协议的基础上嵌入了CIP协议,CIP协议的对象模型也存在如下的安全问题:
CIP未定义任何显式或隐式的安全机制;使用通用工业协议必须对对象进行设备标识,为攻击者进行设备识别与枚举创造条件;使用通用应用对象进行设备信息交换与控制,可能扩大遭受工业攻击的范围,令攻击者可以操纵更多的工业设备;EthernetIP使用UDP与广播数据进行实时传输,两者都缺少传输控制,攻击者易于注入伪造数据或使用注入IGMP控制报文操纵传输途径
EnterNet/IP上使用TCP/IP 和UDP /IP lai 封装数据包。包括显示连接隐式连接(注 ====摘自 工业以太网协议Ethernet/IP 吴爱国 李长滨)
如下的显示请求很隐式请求摘自 EtherNet/IP:industrial protocol paper
显示报文: 显示报文适用于两个设备多用途的点对点报文传递,是典型的请求-响应网络通信方式。常用于节点配置 问题诊断 等,显示报文通常使用优先级较低的连接ID,并且该报文的相关报文包含在显示报文数据帧的数据区中。包括要执行的对象属性移机地址,
隐式报文: 隐式报文适用于对实时性要求较高和面向控制的数据I/O数据等,IO报文使用优先级较高的连接ID 。在IO报文利用ID发送报文之前,报文的发送和设备必须先进行配置,配置的内容包括原地址,目的的对象说属性。以及数据生产者和消费者的地址。
EnterNet/IP 实现了通过以太网提供控制,配置和数据的采集服务。
优势: 大多数用户可以利用现用的 以太网技术知识和网络设施,发挥最大的作用。EtherEnt/IP和现在的TCP/IP协议能够共存。
博客摘要:每个CIP节点被模拟炒年糕一组对象的集合,CIP对象由class 实例 instance 属性 attribute 服务service 和行为 behavior 构成。
EtherNet/IP和ControlNet和DeviceNet 都是用相同的应用层协议,所以之间能够共享对象和设备描述信息,这些数据和描述信息可以让不同的厂家的复杂的设备 实现即插即用和互操作。在同一网络中可以完成实时I/O信息。配置信息以及诊断信息的传递,无需编辑特制的软件,便可以将这种复杂的设备,变频器机器人控制器,条形码,称重器导尿管设备连接在一起,这样一来不仅能够快速的搭建一个控制系统,还能方便对设备的控制和维护。
EtherNet/ip对用户提供显示和隐式的信息报文传输服务,这样EtherNet/IP 网络能够实现利用轮询,周期循环 状态改变等触发机制,进行点对点的数据传输,从而满足控制,设备网络的各种需要。
目前国际上流行的工业以太网 Modbus/TCP EtherNet/IP Profinet HSE等。
引用:
工业以太网协议Ethernet/IP 吴爱国 李长滨
安全实验室资料整理 http://plcscan.org
关于工控设备的蜜罐日志(about ICS/SCADA Honeypot log)设备协议仿真部署在网上抓取的日志记录详见wooyun社区的讨论
数据分析一栏中统计了按照协议分类使用的工控设备的暴露数据的统计表 统计数据来源于 shodan
OPC(OLength forProcess Control 用于过程控制的OLE)协议概念介绍:
是一个标准的工业标准,管理这个保准的国际组织是OPC基金会,OPC包括一整套接口,属性和方法标准集,用于过程控制和制造自动化系统
DNP3(Distributed Network Protocol分布式网络规约)是一种应用于自动化组件之间的通讯协议,SCADA可以使用DNP协议与主站 RTU 以及IED进行通讯。该协议有IEEE提出,参考而来IEC850-5以及其他一些IEC协议,为了解决SCADA行业中协议的混杂,没有够个人的标准的问题。
DNP协议有一定的可靠性,这种可靠性可以用来对抗恶劣环境中的电磁干扰,元件老化,行行好失真,但是不保证在黑客的攻击下,或者恶意破坏者控制系统的清空下的可靠性。
EtherNet/IPd的特点之一是在TCP/IP/UDP的基础上附加了CIP,正是这个公共应用层的存在使得EtherNet/IP获得了广泛的支持,
博客摘要: 工控安全之门 https://www.cnblogs.com/blacksunny/p/7202815.html
EtherNetIP是为了在以太网中使用CIP协议进行的封装,EtherNet/IP 的CIP帧分装了命令,数据点和消息,CIP帧包括CIP设备配置文件,应用层,表示层,会话层,数据的其余部分书EtherNet/IP帧,
CIP协议字段的含义: command 两个字节的整数,对应一个CIP命令,设备必须能过接收无法是被的命令字段,处理这些异常。
length: l两个字节的整数,代表数据包中的数据部分 的长度,对没有数据部分的请求报文,该字段是0、
Session handle 会话句柄(session handle)由目标设备生成,并返回给会话的发起者。该句柄将用于后续与目标设备的通信。
Status
Status字段存储了目标设备执行命令返回的状态码。状态码“0”代表命令执行成功。所有的请求报文中,状态码被置为“0”。其它的状态码还包括:
- 0x0001无效或不受支持的命令
- 0x0002目标设备资源不足,无法处理命令
- 0x0003数据格式不正确或数据不正确
- 0x0065接收到无效的数据长度
Sender Context
命令的发送者生成这六字节值,接收方将原封不动的返回该值。
Options
该值必须始终为0,如果不为零,数据包将被丢弃。
Session Handle即可轻松攻击Ethernet/IP
工业协议安全书籍
Books
中文读物
序号 | 名称 | 作者 | 出版信息 | 内容简介 | 阅读参考 |
1 | 《工业SCADA系统信息安全技术》 | 饶志宏 (作者), 兰昆 (作者), 蒲石 (作者) | 出版社: 国防工业出版社; 第1版 (2014年5月1日) | 《工业SCADA系统信息安全技术》讲述了工业监视控制与数据采集(SCADA)系统基本概念,系统地分析工业SCADA系统存在的脆弱点和面临的信息安全威胁,阐述了工业SCADA系统信息安全体系,论述其相应的关键技术;介绍了典型电力SCADA系统信息安全实际工程应用案例,并对国内外工业控制系统信息安全的发展趋势进行了分析。读者对象:政府、军队、高校、科研机构等从事工业控制系统信息安全研究的科研人员,以及相关企业进行工业控制系统信息安全开发、建设和应用的技术人员。 | 非工控行业专业级,推荐阅读指读:
★★★★☆ |
2 | 《工业控制系统信息安全》 | 肖建荣 (作者) | 出版社: 电子工业出版社; 第1版 (2015年9月1日) | 本书简洁、全面地介绍了工业控制系统信息安全概念和标准体系,系统地介绍了工业控制系统架构和漏洞分析,系统地阐述了工业控制系统信息安全技术与方案部署、风险评估、生命周期、管理体系、项目工程、产品认证、工业控制系统入侵检测与入侵防护、工业控制系统补丁管理。 | 入门级,推荐阅读指读:
★★★☆☆ |
3 | 《工业控制系统安全等级保护方案与应用》 | 蔡皖东 (作者) | 出版社: 国防工业出版社; 第1版 (2015年3月1日) | 《工业控制系统安全等级保护方案与应用》分为7章,分别介绍了工业控制系统信息安全概论、工业控制系统安全等级保护定级、工业控制系统安全等级保护要求、工业控制系统等级保护安全设计、工业控制系统安全等级保护实施、工业控制系统安全等级保护测评和工业控制系统安全等级保护方案应用。 | 入门级,推荐阅读指读:
★★☆☆☆ |
4 | 《工业网络安全—智能电网,SCADA和其他工业控制系统等关键基础设施的网络安全》 | [美] Eric D.Knapp 著;周秦,郭冰逸,贺惠民 等 译 | 出版社: 国防工业出版社 出版时间:2014-06-01 |
近年来,经常听闻同一件事:我们国家的关键基础设施是脆弱的,需要得到应有的安全防护。纳普所著的《工业网络安全》一书向您解释了作为工业控制系统基础的特定协议和应用,并且为您提供了对它们进行保护的一些非常容易理解的指南。除了阐述合规指南、攻击与攻击面,甚至是一些不断改进的安全工具外,本书还为您提供了关于SCADA、控制系统协议及其如何运作的一个清晰理解。 | 信息安全领域专业级,推荐阅读指读:★★★☆☆ |
5 | 《智能电网安全:下一代电网安全》 | 托尼•弗里克 (Tony Flick) (作者), 贾斯汀•莫尔豪斯 (Justin Morehouse) (作者), 徐震 (译者), 于爱民 (译者), 刘韧 (译者) | 出版社: 国防工业出版社; 第1版 (2013年1月1日) | 《智能电网安全:下一代电网安全》着眼于当前智能电网的安全以及它是如何被开发和部署到全球千万家庭中的。《智能电网安全:下一代电网安全》详细讨论了针对智能仪表和智能设备的直接攻击以及针对配套网络和应用程序的攻击,并给出如何防御这些攻击的建议。《智能电网安全:下一代电网安全》给出了一个针对成长中的系统如何实现安全性的框架,用来指导安全顾问与系统和网络架构师如何防范大大小小的攻击者,从而保证智能电网的稳健运行。《智能电网安全:下一代电网安全》详细介绍了如何使用新旧黑客技术来攻击智能电网以及如何防御它们。讨论当前的安全举措。以及它们达不成所需目标的原因。找出黑客是如何利用新的基础设施攻击基础设施。 | 专业级,推荐阅读指读:★★★★☆ |
6 | 《智能电网信息安全指南(第1卷):智能电网信息安全战略架构和高层要求》 | 美国国家标准和技术研究院 (编者), 中国电力科学研究院 (译者) | 出版社: 中国电力出版社; 第1版 (2013年1月1日) | 《智能电网信息安全指南(第1卷):智能电网信息安全战略架构和高层要求》由美国国家标准和技术研究院所著,提出了美国针对智能电网信息安全的分析框架,供相关组织根据智能电网业务特性、安全风险和漏洞制定有效的信息安全战略参考使用。主要内容包括信息安全战略、智能电网的逻辑架构和接口、高层安全要求、密码和密钥管理等,可供相关读者阅读学习。 | 专业级,推荐阅读指读:★★★★★ |
7 | 《智能电网信息安全指南:美国国家标准和技术研究院7628号报告(第二、第三卷)》 | 美国国家标准和技术研究院 (作者), 中国电力科学研究院 (译者) | 出版社: 中国电力出版社; 第1版 (2014年6月1日) | 本书为《智能电网信息安全指南 美国国家标准和技术研究院7628号报告》第二、第三卷,内容包括隐私和智能电网、脆弱性类别、智能电网的自下而上安全分析、智能电网信息安全的研究与开发主题、标准审阅综述、关键电力系统安全要求用例。该报告提出了美国针对智能电网信息安全的分析框架,供相关组织根据智能电网业务特性、安全风险和漏洞制定有效的信息安全战略参考使用。 | 专业级,推荐阅读指读:★★★★★ |
外语读物
序号 | 名称 | 作者 | 出版信息 |
1 | 《Robust Control System Networks: How To Achieve Reliable Control After Stuxnet》 | Ralph Langner | Published by Momentum Press, 2011, 198-pages |
2 | 《Cybersecurity for Industrial Control Systems》 | Tyson McCauley and Bryan Singer | Published by Auerbach Publications, 203 Pages |
3 | 《Industrial Network Security》 | Dave Teumim | Syngress; 2 (2014.12.29) |
4 | 《Protecting Industrial Control Systems From Electronic Threats》 | Joseph Weiss | Published by Momentum Press, 2010, 310 Pages |
5 | 《TechnoSecurity’s Guide To Securing SCADA》 | Jack Wiles et al. | Published by Syngress, 2008, 352-pages |
6 | 《Cybersecurity for SCADA Systems》 | William Shaw | Published by Pennwell Corp, 2006, 299 pages |
7 | 《Securing SCADA Systems》 | Ronald Krutz | Published by Wiley Press, 2005, 218 pages |
8 | 《Securing the Smart Grid》 | Tony Flick and Justin Morehouse | Published by Syngress, 2010, 320 pages |
9 | 《Optimized Robust Adaptive Networks in Supervisory Control and Data Acquisition Systems》 | Luis A Oquendo Class | |
10 | 《Handbook of SCADA/Control Systems, Second Edition 2nd Edition》 | Robert Radvanovsky (Editor), Jacob Brodsky (Editor) |
工业以太网EtherNet/IP协议安全分析整理的更多相关文章
- 标准的TCP/IP工业以太网-EtherNet/IP
标准的TCP/IP工业以太网-EtherNet/IP 徐智穹以太网具有传输速度高.兼容性好.应用广泛等方面的优势,支持几乎所有流行的网络协议,其中 ...
- EtherNet/IP 协议结构
一.Ethernet/IP 协议 将标准的TCP/IP以太网延伸 到工业实时控制并和通用工业协议(CIP)结合,将很好地帮助用户获得更加开放集成的工业自动化和信息化的整体解决方案.EtherNet/I ...
- WireShark——IP协议包分析(Ping分析IP协议包)
互联网协议 IP 是 Internet Protocol 的缩写,中文缩写为“网协”.IP 协议是位于 OSI 模型中第三层的协议,其主要目的就是使得网络间能够互联通信.前面介绍了 ARP 协议, 该 ...
- TCP/IP 协议简单分析
首先TCP和IP是两种不同的协议,它们来七层网络模型中分别在不同的层次,IP协议是网络层的协议,TCP是更高一层的传输层的协议,TCP是建立在IP协议之上的,所以一般把TCP和IP连在一起说TCP/I ...
- EtherNet/IP 协议应用层使用CIP协议&CIP协议中使用的TLS和DTLS(Network Infrastructure for EtherNet/IPTM: Introduction and Considerations)
- EtherNet/IP CIP协议
EtherNet/IP CIP协议 1.EtherNet/IP简述 EtherNet/IP(Ethernet/Indstrial Protocol,以太网/工业协议)是一种基于以太网和TCP/IP技术 ...
- 协议形式化分析Scyther 资料整理
1.性能分析 目前来说形式化的分析已经成为安全协议的一种很流行的方法,但是每种工具都用其不同适合的协议,Scyther软件是一种形式化分析工具,极大的促进了协议的分析和设计,scyther工具在运行界 ...
- 各种工业以太网比较(EtherCAT,EtherNet/IP,ProfiNet,Modbus-TCP,Powerlink)
EtherCAT(以太网控制自动化技术)是一个以以太网为基础的开放架构的现场总线系统,EterCAT名称中的CAT为ControlAutomation Technology(控制自动化技术)首字母的缩 ...
- 结合Wireshark捕获分组深入理解TCP/IP协议之以太网帧
摘要: 本文摘抄并整理了以太网相关理论知识,包括CSMA/CD协议机制及工作.LAN互连,详细分析了Ethernet II帧格式,最后给出Ethernet II帧实例. 一.以太网[1] 1. ...
随机推荐
- Spring基础3
一.AOP 1)AOP简介: Aspect Oriented Programming,面向切面编程 通过预编译方式和动态代理实现程序功能的一种技术,AOP是OOP的延续,是函数式编程的一种衍生范例.利 ...
- Java开发环境配置(5)--Web 服务器--Tomcat--安装过程遇到的问题
1.参考例子:--- 怎样安装配置tomcat 8_百度经验https://jingyan.baidu.com/article/ff42efa91132a0c19e220208.html 安装与配置T ...
- 强网杯2018 Web签到
Web签到 比赛链接:http://39.107.33.96:10000 比赛的时候大佬对这题如切菜一般,小白我只能空流泪,通过赛后看别人的wp,我知道了还有这种操作. 这个赛题分为3层 第一层 Th ...
- 20165234 《Java程序设计》第八周学习总结
第八周学习总结 教材内容学习 第十二章 Java 多线程机制 进程与线程 进程是程序的一次动态执行过程,对应了从代码加载.执行至执行完毕的一个完整过程. 线程不是进程,是比进程更小的执行单位. 一个进 ...
- os及os.path练习题
查找目录下每个文件的数量(考察获取文件后缀名以及获取当前目录下文件方法) import os #获取目录下的所有文件 list = os.listdir('.') filetype = {} for ...
- Springboot的日志管理&Springboot整合Junit测试&Springboot中AOP的使用
==============Springboot的日志管理============= springboot无需引入日志的包,springboot默认已经依赖了slf4j.logback.log4j等日 ...
- 关于python中的矩阵乘法(array和mat类型)
关于python中的矩阵乘法,我们一般有两种数据格式可以实现:np.array()类型和np.mat()类型: 对于这两种数据类型均有三种操作方式: (1)乘号 * (2)np.dot() (3)np ...
- shell-自动按省市建立文件夹,并在每个城市下创建当前日期文件夹
Code: #!/bin/bash date=`date +%Y%m%d` ProName="广东市" CityName="广州市 汕尾市 阳江市 揭阳市 茂名市 江门市 ...
- python3+selenium框架设计06-编写POM测试用例
之前我们已经把测试基类,配置文件操作,浏览器引擎类封装完成.接下来使用POM的设计思路来创建我们的测试用例.接下来看一个实例,先在项目下新建pageobject文件夹.这个文件夹下放所有要测试的页面类 ...
- MFCWinInet学习
http://blog.csdn.net/segen_jaa/article/details/6278167 背景: 功能:服务端下载文件 服务端:用Java写Sevlet进行有效性验证 客户端:用C ...