工业以太网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) |
转载于:https://www.cnblogs.com/xinxianquan/p/9881098.html
工业以太网EtherNet/IP协议安全分析整理相关推荐
- eip协议通信_工业通讯 | EtherNET/IP协议基础知识(Part 3)||附视频讲解
点击蓝字 关注我们 相关阅读: EtherNet/IP OSI参考模型及其物理层.数据链路层与网络层的功能特点: EtherNET/IP协议基础知识(Part 1)||附视频讲解 Encapsulat ...
- ip协议分析实验报告_入门工业通讯之EtherNet/IP协议分析
写在前面 前面我们系统得说了工业控制系统的通讯,大家肯定会想到PROFINET.ETHERNET/IP.ETHERCAT等工业以太网: 技术解读PROFINET.Ethernet/IP等7种主流工业以 ...
- EtherNet/IP协议开发2:理论学习
前言 接续第一章,其实可能也没啥关系,水一篇. 一 EtherNet/IP百度百科概念 百度百科写的还挺好的,从其中能提取很多有用的知识. EtherNet/IP来自哪里 EtherN ...
- ethernet/IP 协议简介 pdf
目 录 1.现场总线控制技术与工业以太网 工业以太网实时性问题 3.Ethernet/IP协议简介 4.Ethernet/I P通信适配器硬件设计与实现 5.EtherNet/IP 工业以太网优缺点及 ...
- Linux内核网络数据包发送(三)——IP协议层分析
Linux内核网络数据包发送(三)--IP协议层分析 1. 前言 2. `ip_send_skb` 3. `ip_local_out` and `__ip_local_out` 3.1 netfilt ...
- FPGA 以太网 UPD IP 协议实现 fpga 千兆以FPGA 以太网
FPGA 以太网 UPD IP 协议实现 fpga 千兆以FPGA 以太网 UPD IP 协议实现 fpga 千兆以FPGA 以太网 UPD IP 协议实现, fpga 千兆以太网接口控制器,FPGA ...
- EtherNet/IP协议开发1:从OpENer开始
推荐一个零声学院免费教程,个人觉得老师讲得不错, 分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis, fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,D ...
- CIP (基于EtherNet/IP) 协议
CIP [基于EtherNet/IP ]协议 前言 一.EtherNet/IP 二.CIP 1. CIP 对象模型 2. CIP 服务 3. CIP 对象库 3.1 身份对象 (Class ID: 0 ...
- 实时的工业以太网Ethernet Powerlink
近十年来,随着互联网技术飞速发展,以太网成为商业通信中的主导网络技术.以太网的通信速率要比目前任何工业现场总线高很多,因它是IT界标准网络技术,成千上万的公司参与开发生产有关产品,使其成本低廉,可选择 ...
- EtherNET/IP协议基础知识(上)
一.EtherNet/IP基础概念 1.ODVA组织简介 ODVA成立于1995年,是一个全球性协会,其成员包括世界领先的自动化公司.ODVA的使命是促进工业自动化中开放的,可互操作的信息和通信技术. ...
最新文章
- mysql 自定义函数 时间差_MYSQL自定义函数之返回两个时间的指定类型时差
- PHP 的一些开发规范
- C#操作xml文件:使用XmlDocument 实现读取和写入
- SPOJ 1812 LCS2 - Longest Common Substring II (后缀自动机)【两种做法】
- java求数组的最小值_JAVA编程求数组最大值和最小值
- 【APICloud系列|14】xcode下载地址
- 矢量归一化_7. 从矢量观测到姿态观测
- XP和win7的软件崩溃提示
- C语言之——文件操作模式
- 台式机也应该设置为WIN10节能模式
- ui-router 之 $state.go
- c# 导出Excel
- 武汉斗鱼php面试流程,斗鱼面试题
- 【工具分享】推荐一款超级好用的截图工具
- Elasticsearch相关操作梳理
- 2.6.2 QDate类与QDateEdit控件介绍(日期处理)
- C标准库头文件—ctype.h
- 彗星http_大气与彗星
- 计算机专业对口大学,计算机专业对口升学有哪些大学
- python求梅森尼数_梅森尼数
热门文章
- WinForm自定义分页控件实现Datagridview分页效果附引用Demo
- 纯HTML+CSS+js实现大型企业站小米商城官网之注册页面
- vs2019,C#,MySQL创建图书管理系统7(用户借/还书)
- C语言乘方,平方根的使用
- C/C++编程日记:简单的C语言实现推箱子小游戏
- 5、LiveCharts--简介(一)
- android 支付宝快捷支付
- 创意小发明:山寨码表.自行车码表的制作 程序原理图,设计图,源代码
- vue使用JSzip读取压缩包文件内容进行MD5加密
- google map 谷歌地图 更改当前定位图标icon大头钉小蓝点