CN106506461A - 一种基于scada系统的安全dnp协议的实现方法 - Google Patents
一种基于scada系统的安全dnp协议的实现方法 Download PDFInfo
- Publication number
- CN106506461A CN106506461A CN201610906114.1A CN201610906114A CN106506461A CN 106506461 A CN106506461 A CN 106506461A CN 201610906114 A CN201610906114 A CN 201610906114A CN 106506461 A CN106506461 A CN 106506461A
- Authority
- CN
- China
- Prior art keywords
- bitw
- rtu
- mtu
- key
- dnp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0435—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SCADA系统的安全DNP协议的实现方法,包括MTU、MTU‑BiTW、RTU、RTU‑BiTW和HUB,主站通过人机接口控制主终端单元MTU发送请求到从站的远程终端设备RTU,MTU与RTU发出、接收的均为未加密的DNP3数据包,通过外部BiTW模块,对DNP3数据包进行转换,在网络传输中,透明地将DNPSec协议应用于传输。本发明的有益效果是:本发明提供了一种基于SCADA系统的安全DNP协议的实现方法,在DNPSec的基础上,采用BITW模块,用来进行密钥交换和实现数据的加密和解密,BITW作为一个外部模块,不需要对现有对RTU和MTU进行任何修改,同时,在尽量减少对通信性能的影响下,增强SCADA系统通信的完整性、保密性,并且对通信设备进行认证;能够抵御重放攻击、防止消息窃听等攻击。
Description
技术领域
本发明涉及一种DNP协议的实现方法,具体为一种基于SCADA系统的安全DNP协议的实现方法,属于工业控制系统信息安全应用技术领域。
背景技术
随着我国电力系统信息网络的迅速发展,用于电力系统通信的DNP(DistributedNetwork Protocol)类协议的安全重要性也与日俱增,本发明提出了一种基于SCADA系统的安全DNP3协议的实现方法。
一般地,DNP3协议有一定的可靠性。这种可靠性可以用来对抗恶劣环境中产生的电磁干扰、元件老化等信号失真现象。此外DNP3协议提供了对数据的分片、重组、数据校验、链路控制、优先级等一些列的服务,在协议中大量使用了CRC校验来保证数据的准确性。
具体地,DNP3数据帧包括10字节头部信息,其中有2字节的CRC校验位,250字节的数据域和32字节的CRC校验位。《DNPSec:Distributed Network Protocol Version 3(DNP3)Security Framework》提出了一种安全的DNP协议框架DNPSec,在不增加DNP3消息长度和没有改变头部信息的情况下增加DNP3的安全性。DNPSec主要包括数据帧结构和密钥交换两部分。DNPSec的数据帧组成如下:4字节的New Header;4字节的Key Sequence Number域;8字节的Original LH Header;256字节的Payload data域和20字节的AuthenticationData域。DNPSec通过移除DNP3原有的34字节CRC校验位,并且在尾部增加认证区域实现安全的。DNPSec密钥管理操作发生在Master Host与Slaves的配置期间,用来为它们建立初始连接;KSN进行重新初始化时,为其生成并分发新的密钥;Session Key过期后,为其生成并分发新的密钥。DNPSec通过加密有效荷载,提供了以下安全保障:保证收发帧的一致性;保证帧头部的不变性;抵御重放攻击;防止窃听。
DNP3并不具有安全防护能力,易遭受安全攻击,包括:消息欺骗、消息窃听、消息更改、重放攻击、拒绝服务攻击和中间人攻击等,DNPSec安全框架虽然为DNP3协议增加了安全机制,但是需要对设备进行配置使用。然而,目前存在着数以万计使用旧有SCADA协议的网络,这些网络并不能够在一夜之间进行更换,所以需要在尽量减小对现存设备影响的情况下,对现有协议进行修改。因此,针对上述问题提出一种基于SCADA系统的安全DNP协议的实现方法。
发明内容
本发明的目的就在于为了解决上述问题而提供一种基于SCADA系统的安全DNP协议的实现方法。
本发明通过以下技术方案来实现上述目的,一种基于SCADA系统的安全DNP协议的实现方法,包括MTU、MTU-BiTW、RTU、RTU-BiTW和HUB,主站通过人机接口控制主终端单元MTU发送请求到从站的远程终端设备RTU,MTU与RTU发出、接收的均为未加密的DNP3数据包,通过外部BiTW模块,对DNP3数据包进行转换,在网络传输中,透明地将DNPSec协议应用于传输;
其方法具体步骤如下:
步骤A、设置iptables表,具体如下:
1)、在MTU所在的主机上,设置iptables表,将与RTU相应的IP地址设置进iptables
表中,使得与相应RTU通信的有关数据包都被插入QUEUE中;
2)、在RTU所在的主机上,设置iptables表,将与MTU相应的IP地址设置进iptables
表中,使得与MTU相应的通信数据包都被插入QUEUE中;
步骤B、密钥协商,具体如下:
1)、初始化BiTW时,对每一个RTU-BiTW端都使用CA签发证书;
2)、RTU与MTU发生N次数据包交换后,通过密钥协商为RTU-BiTW与MTU-BiTW之间交换一个对称密钥;
3)、N是可配置的、使用AES加密算法对包含密钥的消息进行加解密;
步骤C、封包与解包,具体如下:
1)、iptables表在步骤A中已经被配置好,用来抓去相应的数据包,并放入QUEUE
中;
2)、BiTW使用nfqueue将QUEUE中的数据包获取到用户态程序中;
3)、BiTW使用Scrapy库,对nfqueue获取到的数据包进行解包、修改、重封包;
4)、MTU-BiTW根据步骤2)、3),抓取从MTU发出的DNP3数据包,利用密钥协商步骤获取的对称密钥,对内容进行加密,增加认证信息,并将其转换为DNPSec数据包;
5)、认证信息是通过SHA1算法,对DNP3协议中的KSN,DNP原始头和内容进行计算得到。
优选的,步骤B中2)中交换对称密钥具体过程如下:
(1)、MTU-BiTW生成一个随机数Random_M,发送至RTU-BiTW;
(2)、RTU-BiTW生成一个随机数Random_R,连同证书发送给MTU-BiTW;
(3)、MTU-BiTW生成一个随机数Pre-Master,使用RTU公钥加密后,连同握手结束通知发送给RTU-BiTW;
(4)、最后,MTU-BiTW与RTU-BiTW完成了密钥交换,交换的密钥为:SecKey=Func(Random_M,Random_R,Pre-Master)。
优选的,步骤B中2)中交换对称密钥具体过程中,发送给MTU-BiTW的证书包含公钥与验证身份的信息。
本发明的有益效果是:本发明提供了一种基于SCADA系统的安全DNP协议的实现方法,在DNPSec的基础上,采用BITW模块,用来进行密钥交换和实现数据的加密和解密,BITW作为一个外部模块,不需要对现有对RTU和MTU进行任何修改,同时,在尽量减少对通信性能的影响下,增强SCADA系统通信的完整性、保密性,并且对通信设备进行认证;能够抵御重放攻击、防止消息窃听等攻击。
附图说明
图1为本发明的拓扑结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
一种基于SCADA系统的安全DNP协议的实现方法,包括MTU、MTU-BiTW、RTU、RTU-BiTW和HUB,主站通过人机接口控制主终端单元MTU发送请求到从站的远程终端设备RTU,MTU与RTU发出、接收的均为未加密的DNP3数据包,通过外部BiTW模块,对DNP3数据包进行转换,在网络传输中,透明地将DNPSec协议应用于传输;
其方法具体步骤如下:
步骤A、设置iptables表,具体如下:
1)、在MTU所在的主机上,设置iptables表,将与RTU相应的IP地址设置进iptables
表中,使得与相应RTU通信的有关数据包都被插入QUEUE中;
2)、在RTU所在的主机上,设置iptables表,将与MTU相应的IP地址设置进iptables
表中,使得与MTU相应的通信数据包都被插入QUEUE中;
步骤B、密钥协商,具体如下:
1)、初始化BiTW时,对每一个RTU-BiTW端都使用CA签发证书;
2)、RTU与MTU发生N次数据包交换后,通过密钥协商为RTU-BiTW与MTU-BiTW之间交换一个对称密钥;
其中,交换对称密钥具体过程如下:
(1)、MTU-BiTW生成一个随机数Random_M,发送至RTU-BiTW;
(2)、RTU-BiTW生成一个随机数Random_R,连同证书发送给MTU-BiTW;
其中,交换对称密钥具体过程中,发送给MTU-BiTW的证书包含公钥与验证身份的信息;
(3)、MTU-BiTW生成一个随机数Pre-Master,使用RTU公钥加密后,连同握手结束通知发送给RTU-BiTW;
(4)、最后,MTU-BiTW与RTU-BiTW完成了密钥交换,交换的密钥为:SecKey=Func(Random_M,Random_R,Pre-Master)。
3)、N是可配置的、使用AES加密算法对包含密钥的消息进行加解密;
步骤C、封包与解包,具体如下:
1)、iptables表在步骤A中已经被配置好,用来抓去相应的数据包,并放入QUEUE
中;
2)、BiTW使用nfqueue将QUEUE中的数据包获取到用户态程序中;
3)、BiTW使用Scrapy库,对nfqueue获取到的数据包进行解包、修改、重封包;
4)、MTU-BiTW根据步骤2)、3),抓取从MTU发出的DNP3数据包,利用密钥协商步骤获取的对称密钥,对内容进行加密,增加认证信息,并将其转换为DNPSec数据包;
5)、认证信息是通过SHA1算法,对DNP3协议中的KSN,DNP原始头和内容进行计算得到。
本发明在DNPSec的基础上,采用BITW模块,用来进行密钥交换和实现数据的加密和解密,BITW作为一个外部模块,不需要对现有对RTU和MTU进行任何修改,同时,在尽量减少对通信性能的影响下,增强SCADA系统通信的完整性、保密性,并且对通信设备进行认证;能够抵御重放攻击、防止消息窃听等攻击。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (3)
1.一种基于SCADA系统的安全DNP协议的实现方法,包括MTU、MTU-BiTW、RTU、RTU-BiTW和HUB,其特征在于:主站通过人机接口控制主终端单元MTU发送请求到从站的远程终端设备RTU,MTU与RTU发出、接收的均为未加密的DNP3数据包,通过外部BiTW模块,对DNP3数据包进行转换,在网络传输中,透明地将DNPSec协议应用于传输;
其方法具体步骤如下:
步骤A、设置iptables表,具体如下:
1)、在MTU所在的主机上,设置iptables表,将与RTU相应的IP地址设置进iptables表中,使得与相应RTU通信的有关数据包都被插入QUEUE中;
2)、在RTU所在的主机上,设置iptables表,将与MTU相应的IP地址设置进iptables表中,使得与MTU相应的通信数据包都被插入QUEUE中;
步骤B、密钥协商,具体如下:
1)、初始化BiTW时,对每一个RTU-BiTW端都使用CA签发证书;
2)、RTU与MTU发生N次数据包交换后,通过密钥协商为RTU-BiTW与MTU-BiTW之间交换一个对称密钥;
3)、N是可配置的、使用AES加密算法对包含密钥的消息进行加解密;
步骤C、封包与解包,具体如下:
1)、iptables表在步骤A中已经被配置好,用来抓去相应的数据包,并放入QUEUE中;
2)、BiTW使用nfqueue将QUEUE中的数据包获取到用户态程序中;
3)、BiTW使用Scrapy库,对nfqueue获取到的数据包进行解包、修改、重封包;
4)、MTU-BiTW根据步骤2)、3),抓取从MTU发出的DNP3数据包,利用密钥协商步骤获取的对称密钥,对内容进行加密,增加认证信息,并将其转换为DNPSec数据包;
5)、认证信息是通过SHA1算法,对DNP3协议中的KSN,DNP原始头和内容进行计算得到。
2.根据权利要求1所述的一种基于SCADA系统的安全DNP协议的实现方法,其特征在于:步骤B中2)中交换对称密钥具体过程如下:
(1)、MTU-BiTW生成一个随机数Random_M,发送至RTU-BiTW;
(2)、RTU-BiTW生成一个随机数Random_R,连同证书发送给MTU-BiTW;
(3)、MTU-BiTW生成一个随机数Pre-Master,使用RTU公钥加密后,连同握手结束通知发送给RTU-BiTW;
(4)、最后,MTU-BiTW与RTU-BiTW完成了密钥交换,交换的密钥为:SecKey=Func(Random_M,Random_R,Pre-Master)。
3.根据权利要求1所述的一种基于SCADA系统的安全DNP协议的实现方法,其特征在于:步骤B中2)中交换对称密钥具体过程中,发送给MTU-BiTW的证书包含公钥与验证身份的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610906114.1A CN106506461A (zh) | 2016-10-17 | 2016-10-17 | 一种基于scada系统的安全dnp协议的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610906114.1A CN106506461A (zh) | 2016-10-17 | 2016-10-17 | 一种基于scada系统的安全dnp协议的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106506461A true CN106506461A (zh) | 2017-03-15 |
Family
ID=58293785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610906114.1A Pending CN106506461A (zh) | 2016-10-17 | 2016-10-17 | 一种基于scada系统的安全dnp协议的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106506461A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109088861A (zh) * | 2018-07-20 | 2018-12-25 | 杭州安恒信息技术股份有限公司 | Dnp3测试用例生成方法、系统、设备及计算机介质 |
CN112046789A (zh) * | 2020-09-14 | 2020-12-08 | 中国科学院微小卫星创新研究院 | 一种太阳帆板驱动机构的控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100054276A1 (en) * | 2004-10-20 | 2010-03-04 | Electro Industries/Gauge Tech. | System and method for providing communication between intelligent electronic devices via an open channel |
CN104980419A (zh) * | 2014-09-11 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种代理通信方法及装置 |
-
2016
- 2016-10-17 CN CN201610906114.1A patent/CN106506461A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100054276A1 (en) * | 2004-10-20 | 2010-03-04 | Electro Industries/Gauge Tech. | System and method for providing communication between intelligent electronic devices via an open channel |
CN104980419A (zh) * | 2014-09-11 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种代理通信方法及装置 |
Non-Patent Citations (2)
Title |
---|
MCTRAIN: "Netfilter学习笔记(二)", 《HTTP://YTLIU.INFO/BLOG/2013/03/29/NETFILTERXUE-XI-BI-JI-(ER-)/》 * |
SANKALP BAGARIA等: "Flexi-DNP3:Flexible Distributed Network Protocol Version 3(DNP3)for SCADA security", 《2011 INTERNATIONAL CONFERENCE ON RECENT TRENDS IN INFORMATION SYSTEMS》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109088861A (zh) * | 2018-07-20 | 2018-12-25 | 杭州安恒信息技术股份有限公司 | Dnp3测试用例生成方法、系统、设备及计算机介质 |
CN112046789A (zh) * | 2020-09-14 | 2020-12-08 | 中国科学院微小卫星创新研究院 | 一种太阳帆板驱动机构的控制方法 |
CN112046789B (zh) * | 2020-09-14 | 2022-07-26 | 中国科学院微小卫星创新研究院 | 一种太阳帆板驱动机构的控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110162081A1 (en) | Method and device for protecting the integrity of data transmitted over a network | |
CN111245862A (zh) | 一种物联网终端数据安全接收、发送的系统 | |
CN108075890A (zh) | 数据发送端、数据接收端、数据传输方法及系统 | |
WO2017092504A1 (zh) | 一种具备硬件加解密功能的路由器及其加解密方法 | |
CN106209883A (zh) | 基于链路选择和破碎重组的多链路传输方法及系统 | |
Bagaria et al. | Flexi-DNP3: Flexible distributed network protocol version 3 (DNP3) for SCADA security | |
Cho et al. | Securing ethernet-based optical fronthaul for 5g network | |
CN103441983A (zh) | 基于链路层发现协议的信息保护方法和装置 | |
Musa et al. | Secure security model implementation for security services and related attacks base on end-to-end, application layer and data link layer security | |
CN101442403A (zh) | 一种自适应的复合密钥交换和会话密钥管理方法 | |
CN111835499A (zh) | 一种基于高性能计算的l2tp/ipsec破解方法及系统 | |
Brown | 802.11: the security differences between b and i | |
CN113783868B (zh) | 一种基于商用密码保护闸机物联网安全的方法及系统 | |
Cho et al. | Secure open fronthaul interface for 5G networks | |
CN106358195B (zh) | 适用于lte接入层的安全激活优化方法 | |
CN106506461A (zh) | 一种基于scada系统的安全dnp协议的实现方法 | |
EP4178156A1 (en) | Method and device for updating preshared key (psk) | |
CN105610577B (zh) | 一种防止IPSec VPN设备多隧道IKE协商失败的系统及方法 | |
CN210839642U (zh) | 一种物联网终端数据安全接收、发送的装置 | |
Zuo et al. | A novel software-defined network packet security tunnel forwarding mechanism | |
CN103685247A (zh) | 安全通信方法、装置、系统以及安全主板 | |
CN110213257B (zh) | 基于真随机流异或加密的高安全ip保密通信方法 | |
Ibhaze et al. | A review on smart grid network security issues over 6LoWPAN | |
CN106357403A (zh) | 一种链路通讯加密保护的装置及方法,安全报文处理系统 | |
CN207869118U (zh) | 基于量子加密交换机装置的数据传输系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170315 |
|
RJ01 | Rejection of invention patent application after publication |