CN106027511A - Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol) - Google Patents

Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol) Download PDF

Info

Publication number
CN106027511A
CN106027511A CN201610320345.4A CN201610320345A CN106027511A CN 106027511 A CN106027511 A CN 106027511A CN 201610320345 A CN201610320345 A CN 201610320345A CN 106027511 A CN106027511 A CN 106027511A
Authority
CN
China
Prior art keywords
data
protocol
agreement
module
packet
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
Application number
CN201610320345.4A
Other languages
Chinese (zh)
Inventor
詹静
杨静
吴欢
陶政
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201610320345.4A priority Critical patent/CN106027511A/en
Publication of CN106027511A publication Critical patent/CN106027511A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to a protocol isolation method based on deep resolution of a Modbus/TCP (Transmission Control Protocol). The technical scheme adopted by the method mainly deploys a security strategy to an external boundary and internal network boundaries with the different security levels of a network with the high security level based on a virtualization technology. The whole structure is divided into flow lead, protocol cleaning and data ferrying. A flow lead module is responsible for leading a physical data packet into an appointed virtual machine; a protocol cleaning module is responsible for carrying out protocol identification, data content security detection and private protocol encapsulation and resolution; and data ferrying utilizes the shared memory of the virtual machine to carry out data ferrying on private protocol data. The correct and secure flow filtering can be carried out on different application layer protocols; through the scheme, the protocol data can be ferried securely, and an attacker cannot obtain the interactive data under the normal state; and the scheme simulates a special medium in a physical gap to carry out data ferrying based on a shared memory mechanism of the virtualization technology, so that the processing performance is improved and the timeliness requirements are met.

Description

A kind of protocol isolating method based on Modbus/TCP deep analysis
Technical field
The invention belongs to industrial control field and areas of information technology, relate to puppy parc conventional in a kind of industrial control system The protocol isolating method of Modbus/TCP deep analysis, particularly relate to a kind of agreement based on Modbus/TCP deep analysis every From method.
Background technology
Industrial control system is widely used in the country critical infrastructures fields such as electric power, chemical industry, oil-gas mining, transportation, Thus the security relationship of industrial control system is to national security.In recent years, along with the fast development of industrial Ethernet technology, The Internet technologies such as TCP/IP are introduced in industrial control system.The security threat of TCP/IP technology is being incorporated into industry control While in system processed, also destroy the closure of industrial control system.By privately owned association widely used in industrial control system Leak in the design of view and realization is exposed to assailant, brings huge threat to industrial control system.
Industrial control network also exists greatest differences with tradition IT network.Industrial control system generally has fixed qty Equipment, predictable communication stream and privately owned communication protocol, it is most important that high-availability requirement.Due to industrial control system The particularity of network, traditional IT safety protecting mechanism is invalid.The industrial control system proprietary protocol of widespread deployment is such as: DNP3, Modbus, Modbus/TCP do not provide security control, provides more utilizable leak to assailant. Industry control network is more and more higher for the requirement of safety, whether tradition gateway series products or intrusion detection series products has respectively From obvious defect, and industry control environment is more sensitive for these defects, thus it is infeasible for merely relying on certain product. The communication protocol that gateway class safety product uses the method for application protocol stripping and conversion to achieve both sides blocks, and effectively reduces The security attack probability that procotol is brought, by peeling off the Safety Examination of data and controlling to substantially increase network peace especially Quan Xing.But the gateway series products scope of application is narrower, need to develop corresponding Switching Module, and the exchange velocity of physical gateway Theoretical limit already close to this technology, it is anticipated that physical gateway can become bottleneck.The security threat of industrial control system concentrates on Industry control agreement, and existing solution is solely to increase security function for industry control environment on the basis of conventional security product, Lack Universal and scalability.Compared with traditional industry control safety approach, this method has merged physical gateway and fire wall is each From advantage, enterprise can be according to different network environment customizing virtual machine templates, it is possible to be deployed on industry control network border, Targetedly data traffic is carried out safety filtering and isolation, utilizes Xen virtual technology to promote isolation performance and extensibility, Meet the demand for security of enterprise.
Summary of the invention
In order to solve the problems referred to above, it is external at high level of security network that the technical scheme that this method uses is based primarily upon Intel Virtualization Technology Border level of security different with inside network boundary deployment secure strategy.Overall structure is divided into flow lead, agreement to clean sum According to ferry-boat.Flow lead module is responsible for importing in the virtual machine specified by physical data bag, and agreement cleaning module is responsible for leading The packet entered carries out protocol identification, data content safety detection and the work such as proprietary protocol encapsulation and parsing, and data are ferried then It is to utilize virtual machine shared drive that proprietary protocol data are carried out data ferry-boat.
For achieving the above object, the technical solution used in the present invention is the isolation of a kind of agreement based on Modbus/TCP deep analysis Method,
Agreement isolation under Xen virtual environment, the internal, external network simulating agreement isolation with two Guest OS respectively processes single Unit.Dispose agreement cleaning module on Guest OS, first IP traffic amount is resolved at agreement cleaning module, peel off TCP/IP Protocol characteristic, block attack based on ICP/IP protocol feature, be applied layer protocol data, then according to proprietary protocol The attribute of definition and rule, be configured to this packet proprietary protocol packet and carry out safety detection with depth detection method, Ensure the legitimacy of Modbus/TCP data content.
1) agreement isolation thought
The communication of Modbus/TCP is explained as follows.
(1) under Xen environment, build two VM and simulate respectively at Intranet processing unit i.e. VM1 and the outer net of agreement isolation Reason unit i.e. VM2.
(2) the Modbus/TCP request that client computer is initiated, first issues VM1.The VM1 Modbus/TCP to receiving please Ask and carry out protocol analysis, separate header information and initial data.The data being stripped out are cleaned by VM1 through agreement afterwards After the safety detection of module, ferry to VM2 in the way of shared drive.After VM2 receives the data separated, according to data In header information, obtain real server address, data be re-packaged into Modbus/TCP agreement simultaneously, send To Modbus/TCP server.
(3) after Modbus/TCP server receives Modbus/TCP client requests, respond, response message is issued VM2.The VM2 response message to receiving carries out protocol analysis, separates header information and initial data.VM2 will separate Data after the safety detection of agreement cleaning module, ferry to VM1 in the way of shared drive.VM1 receives stripping After the data gone out and header information, Reseal becomes Modbus/TCP agreement to be sent to client computer.
(4) communication between a Modbus/TCP client computer and Modbus/TCP server so far, is completed.
2) overall architecture of agreement isolation
Fig. 1 represents the agreement isolation architecture of Xen virtual platform, including the flow lead module on VMM, data ferry-boat Module and two virtual machines, be wherein all deployed with agreement cleaning module on two virtual machines.Two virtual machines are put by data The mode crossed exchanges data, needs to use synchronization mechanism data are ferried when, and data ferry-boat function package is ferried in data Module.
3) handling process of agreement isolation
Agreement isolation processing flow process is as in figure 2 it is shown, groundwork includes:
(1) virtual platform receives after the connection request of device A, gives flow lead resume module.
(2) flow lead module according to formulate stream table by flow lead to VM1 process.After VM1 receives packet, Agreement cleaning module is transferred to carry out resolving and safety detection, if detection is not passed through, then packet discard;If detection is passed through, then The application layer initial data of packet is carried out proprietary protocol encapsulation, is sent to data ferry-boat module.
(3) data ferry-boat module utilizes shared drive by proprietary protocol packet ferry-boat to VM2.VM2 receives VM1 and " ferries " After the proprietary protocol packet come over, VM2 agreement cleaning module resolves, according to corresponding ICP/IP protocol form by number According to being re-packaged into the ICP/IP protocol packet of standard, it is transmitted to flow lead module afterwards.
(4) flow lead module delivers a packet to equipment B according to corresponding stream table rule.
Flow lead module is responsible for importing in the virtual machine specified data traffic, is basis and the premise realizing security function.Stream Amount traction module is to be set up by OpenFlow and OpenvSwitch (OVS) to form, and its function is the packet by specifying network interface Import in designated virtual machine, and export to the packet of designated virtual machine specify physical internet ports.Flow lead module by OpenFlow agreement is as control protocol, and OpenvSwitch, as virtual switch, is upwards assisted by OpenFlow by manager View controls, and stream table therein management is exactly that agreement issues realization.The core of flow lead module is stream table, and it is in whole model Flow switch, directly determine the break-make of network and the flow direction of data.
The IP traffic amount that traction module traction comes is resolved by agreement cleaning module, separates application layer protocol data, then According to attribute and the rule of proprietary protocol definition, this packet is configured to proprietary protocol packet and carries out safety detection.
The groundwork of agreement cleaning module includes the following:
(1), after VM1 receives the packet that the traction of flow lead module comes, first packet is shelled From, be applied layer data, builds proprietary protocol data according to rule, application layer data is carried out safety detection simultaneously. Detection is not passed through, and directly abandons this packet, interrupts communication connection.Detection is passed through, then by data ferry-boat module by privately owned Protocol data bag is ferried VM2.
(2) after VM2 receives the proprietary protocol packet that data ferry-boat module ferry-boat comes, first to proprietary protocol Packet carries out completeness check, resolves proprietary protocol packet simultaneously and obtains original application layer data, according to standard Protocol data Reseal is become the ICP/IP protocol packet of standard by ICP/IP protocol.Last VM2 is good by Reseal Standard ICP/IP protocol packet is dealt into network by flow lead module.Agreement cleaning module flow chart such as Fig. 5.
The mode of shared drive can accelerate data exchange, thus utilize the shared drive mode of Xen in data ferry-boat module, Complete data exchange.Create shared drive by Grant Table mechanism during data exchange, by Producer/consumer and XenStore mechanism carries out data syn-chronization.During data are ferried, transmission is proprietary protocol data, proprietary protocol data Peel off ICP/IP protocol feature, it is possible to block aggressive behavior based on ICP/IP protocol, thus count during ensureing ferry-boat According to safety.
Communication between VM1 and VM2 realizes by the way of data are ferried, and the agreement cleaning module of VM1 completes privately owned association After the structure of view, VM1 and VM2 sets up two virtual internal memory circle queues, is respectively used to data transmission and data connect Receive.
(1) VM1 is according to the event channel table safeguarded under privileged virtual machine, the address information that inquiry VM2 is relevant.If coupling To corresponding VM2 address and the information of port, then explanation can set up communication connection, is ready for next step operation.If Join less than, then terminate this communication.
(2) Xen utilizes that is two actual memory circle queues of Grant Table Mechanism establishing shared drive, prepares to receive and send Data, the meanwhile state of Xenstore synchronized update virtual machine.XenStore is being total between the different virtual machine under Xen Enjoy memory block, store configuration relevant for VM and status information with the form of key/value.Before shared drive is set up, pass through XenStore transmits synchronically controlling information, it is ensured that the correctness that shared drive is read and write by VM1 and VM2.
(3) the shared drive information that VM1 will build up, prepares logical by event channel mechanism notice VM2, VM1 and VM2 Cross shared drive and carry out data communication.
(4) the proprietary protocol data write shared drive that agreement cleaning module is built by VM1, now in synchronization and mutex mechanism Under control, VM2 cannot read data from this shared drive.
(5) VM1 is after shared drive write data, notifies VM2 by event channel.VM2 reads from shared drive subsequently Data, notify VM1, data are handed over the agreement cleaning module of VM2 process simultaneously after reading.VM1 receives VM1 After the complete event notification message of reading sent, then write according to practical situation or directly exit.
The present invention compared with prior art, has a following advantage:
Carry out correct and safe traffic filtering for different application layer protocols, this programme is ferried based on virtualized data Method can be ferried protocol data safely, and assailant cannot obtain interaction data in normal state, and this programme is based on virtual Dedicated medium in the shared drive mechanism simulation physical gateway of change technology, carries out data ferry-boat, improves process performance, meets Real-time demand.
Accompanying drawing explanation
Fig. 1: agreement isolating frame composition.
Fig. 2: agreement isolation processing flow process.
Fig. 3: Proto_Handle structure.
Fig. 4: flow lead module rack composition.
Fig. 5: agreement cleaning module flow process.
Fig. 6: data ferry-boat block process.
Fig. 7: protocol detection flow process.
Detailed description of the invention
First several to this part nouns explain:
Trusted function code includes a few functions code that configuration software realizes and the self-defining function code that user confirms;Because of each Function code definable multiple subfunction code or loss of fecundity function code;The corresponding trusted function code list of each trusted function code, one Individual sensitive subfunction code list and disabled subfunction code.
Trusted function code list only comprises trusted function code.
Sensitive subfunction code is subordinated to a trusted function code;Finger system needs, but is illegally used and will cause the system failure Subfunction code.Subfunction code 01 such as function code 08.
The list that sensitive subfunction code list is made up of sensitive subfunction code;The most each sensitive subfunction code and IP address are to (source IP address and purpose IP address) white list associates;Each sensitive subfunction code list is subordinated to a trusted function code.
Credible subfunction code is subordinated to a trusted function code;Referring to the subfunction code without threat characteristics, in system, all devices is equal This subfunction code can be performed.
The list that credible subfunction code list is made up of credible subfunction code, each credible subfunction code list is subordinated to one can Telecommunication function code.
Read-write capability code list is the list of 8 kinds of common read-write capability codes of definition, is the function code listed of table 1.
Table 1 read-write capability code and data field relation list
Remarks: write in multiple coil, N=exports quantity/8, if remainder is not 0, N=N+1, writing N in multiple depositor is Register number.
Modbus/TCP protocol detection algorithm is as shown in Figure 6:
Step 1:Modbus/TCP application message before sending, need to set up corresponding socket, and this detection method reads and deposits Storage source IP address, purpose IP address and destination slogan.
Step 2: source IP address and purpose IP address are tested by this detection method, it is judged that whether IP address is at trusted Address list in.If source IP address and purpose IP address are all in address list trusty, then detection is passed through;Otherwise refuse The connection request of this socket absolutely.
Step 3: this detection method judges whether destination slogan is 502.Detection is passed through, and performs step 4;Otherwise refusal should Message.
Step 4: this detection method reads transaction identifiers, and detection transaction identifier whether standardization, such as whether be 2 Byte.Detect by performing step 5, otherwise refuse this message.
Step 5: whether the protocol identifier field in detection method verification MBAP is 0.Protocol identifier field is 0, holds Row step 6;Otherwise refuse this message.
Step 6: the total length of the value of length field with element identifier (element ID) and Modbus data field is compared by detection method. It is worth equal, performs step 7;Otherwise refuse this message.
Step 7: detection method judging unit identifier.If remote equipment is connected directly between in TCP/IP network, then unit mark Know symbol and should be 0xff;If being connected on serial link gateway, then the corresponding multiple terminal units in IP address, according to unit mark Knowing symbol and identify different terminal units, now effective range is 0-255.If element identifier (element ID) field is legal, then perform step 8, otherwise refuse this message.
Step 8: whether detection method arbitration functions code is the read-write operation function code defined.If the read-write operation function of definition Code, then perform step 9;Otherwise perform step 10.
Step 9: detection method reads data object origing address field (OAF), it is judged that initial address is the most legal.If initial address is closed Method, detection method determines whether that this function code is read operation or write operation.If this function code is read operation, detection method Verification data byte number is the most legal, if byte number is legal, this message is by detection;If byte number is illegal, refuse this report Literary composition.If write operation, detection method judges that the byte number of write and write data are the most legal, and legal, this message passes through Detection;Do not conform to rule and refuse this message.If initial address is illegal, refuse this message.
Step 10: whether detection algorithm arbitration functions code is in trusted list.If this function code performs in trusted list Step 11, otherwise refuses this message.
Step 11: detection algorithm judges whether data field first character joint is subfunction code.If subfunction code performs step 12, Otherwise perform step 13.
Step 12: detection method reads the credible subfunction code list of this function code, sees this subfunction code the most in the list. If in credible subfunction code list, this message is by detection.Otherwise, detection method continues to search for sensitive subfunction code list. If this subfunction code is in sensitive subfunction code list, detection method continues to search for the IP address dialogue of this sensitivity subfunction code List, it is judged that the IP address of this message to whether in the IP address of this sensitivity subfunction code in white list.If this IP address To in IP address in white list, then this subfunction code is by detection, otherwise refuses this message.If this subfunction code is the most not In sensitive subfunction code list, refuse this message.
Step 13: detection method read data words section key message, it is judged that key message is the most legal.If legal, then detect Pass through, otherwise refuse this message.Such as the most legal according to the message length that this function code of length rule judgment is corresponding.
Agreement isolation processing flow process is as in figure 2 it is shown, groundwork includes:
(1) virtual platform receives after the connection request of device A, gives flow lead resume module.
(2) flow lead module according to formulate stream table by flow lead to VM1 process.After VM1 receives packet, Agreement cleaning module is transferred to carry out resolving and safety detection, if detection is not passed through, then packet discard;If detection is passed through, then The application layer initial data of packet is carried out proprietary protocol encapsulation, is sent to data ferry-boat module.
(3) data ferry-boat module utilizes shared drive by proprietary protocol packet ferry-boat to VM2.VM2 receives VM1 and " ferries " After the proprietary protocol packet come over, VM2 agreement cleaning module resolves, according to corresponding ICP/IP protocol form by number According to being re-packaged into the ICP/IP protocol packet of standard, it is transmitted to flow lead module afterwards.
(4) flow lead module delivers a packet to equipment B according to corresponding stream table rule.
1) flow lead module is responsible for importing in the virtual machine specified data traffic, is basis and the premise realizing security function.Flow Traction module is to be set up by OpenFlow and OpenvSwitch (OVS) to form, and its function is to be led by the packet specifying network interface Enter in designated virtual machine, and export to the packet of designated virtual machine specify physical internet ports.Flow lead module is by OpenFlow Agreement is as control protocol, and OpenvSwitch is as virtual switch, upwards by manager by OpenFlow protocol integrated test system, Stream table therein management is exactly that agreement issues realization.The core of flow lead module is stream table, and it is that the flow in whole model is opened Close, directly determine break-make and the flow direction of data of network.
Fig. 4 is mainly received (transmission) end, data stream list item and execution behavior aggregate by packet and constitutes.
(1) packet receives (transmission) end: provide the entrance and exit (being similar to the Ethernet interface of physical switches) of packet Carry out exchange data packets.Flow transferring module can fictionalize N number of port, and is each port assignment port numbers.In order to anti- Only conflict with outer net IP, a virtual network (being similar to NAT) can be created, port is put into wherein.
(2) stream list item collection: stream list item collection, comprises the stream table that each manager adds, and the field in stream table can comprise port Number, vlan number, source physical address, purpose physical address, ethernet type, source IP address and purpose IP address etc..
(3) behavior aggregate is performed: performing behavior aggregate and correspond to stream list item, the most each stream list item can have a behavior aggregate the most corresponding. When packet is after flow lead module carries out stream table coupling, can check in performing behavior aggregate that the most matched stream table institute is right The action answered also performs.The operation performing behavior aggregate support includes exporting packet to designated port, amendment packet source/destination MAC Address, revises packet source/destination IP address, the field etc. of amendment stream table.
(4) controller: based on OpenFlow agreement, the remotely or locally flow lead module on configuration host.Mainly Configuration object flows list item exactly, and controller can also receive the packet not mating any stream list item, and makees default action.
Flow lead module is positioned on host, and physical internet ports and virtual network port are all mapped in flow lead module.Data flow Determining according to the stream table list item in this module, packet performs matching operation in flow lead module with stream list item.If this number Match stream list item according to bag, perform the behavior aggregate of this stream list item, be otherwise dropped.The purpose of flow lead module is correctly Guide and management flow, it is ensured that communication data is properly parsed, detects and ferries.
2) the IP traffic amount that traction module traction comes is resolved by agreement cleaning module, separates application layer protocol data, so After according to proprietary protocol definition attribute and rule, this packet is configured to proprietary protocol packet and carries out safety detection.
The structure of proprietary protocol, is related to the safety of data exchange, thus the key data structure introducing proprietary protocol is shown in Fig. 3.
Proto_Handler structure includes the essential information that proprietary protocol constructs: the identity of agreement, protocol list, association The safety detection method of view and real application data.As a example by Modbus/TCP agreement, in the structure of above-mentioned proprietary protocol Protocol name field is Modbus/TCP, protocol list field following ETH-> IP-> TCP-> Modbus/TCP, wherein comprises Link layer is to the header essential information of application layer, and number of protocols field value is 4, and safety detection method is Check_ModbusTCP_* (), applies Modbus/TCP depth detection method in the method, payload is Modbus/TCP PDU。
The groundwork of agreement cleaning module includes:
(1), after VM1 receives the packet that the traction of flow lead module comes, first packet is shelled From, be applied layer data, builds proprietary protocol data according to rule, application layer data is carried out safety detection simultaneously. Detection is not passed through, and directly abandons this packet, interrupts communication connection.Detection is passed through, then by data ferry-boat module by privately owned Protocol data bag is ferried VM2.
(2), after VM2 receives the proprietary protocol packet that data ferry-boat module ferry-boat comes, first proprietary protocol packet is carried out Completeness check, resolves proprietary protocol packet simultaneously and obtains original application layer data, will according to the ICP/IP protocol of standard Protocol data Reseal becomes the ICP/IP protocol packet of standard.Last VM2 is by standard TCP/IP association good for Reseal View packet is dealt into network by flow lead module.Agreement cleaning module flow chart such as Fig. 5.
3) communication between VM1 and VM2 realizes by the way of data are ferried, and the agreement cleaning module of VM1 completes privately owned After the structure of agreement, VM1 and VM2 sets up two virtual internal memory circle queues, is respectively used to data and sends and data Receive.
(1) VM1 is according to the event channel table safeguarded under privileged virtual machine, the address information that inquiry VM2 is relevant.If coupling To corresponding VM2 address and the information of port, then explanation can set up communication connection, is ready for next step operation.If Join less than, then terminate this communication.
(2) Xen utilizes Grant Table Mechanism establishing shared drive (two actual memory circle queues), prepares to receive and send out Send data, meanwhile the state of Xenstore synchronized update virtual machine.XenStore is between the different virtual machine under Xen Shared memory, stores configuration relevant for VM and status information with the form of key/value.Before shared drive is set up, pass through XenStore transmits synchronically controlling information, it is ensured that the correctness that shared drive is read and write by VM1 and VM2.
(3) the shared drive information that VM1 will build up, prepares logical by event channel mechanism notice VM2, VM1 and VM2 Cross shared drive and carry out data communication.
(4) the proprietary protocol data write shared drive that agreement cleaning module is built by VM1, now in synchronization and mutex mechanism Under control, VM2 cannot read data from this shared drive.
(5) VM1 is after shared drive write data, notifies VM2 by event channel.VM2 reads from shared drive subsequently Data, notify VM1, data are handed over the agreement cleaning module of VM2 process simultaneously after reading.VM1 receives VM1 After the complete event notification message of reading sent, then write according to practical situation or directly exit.

Claims (3)

1. a protocol isolating method based on Modbus/TCP deep analysis, it is characterised in that: under Xen virtual environment Agreement isolation, with two Guest OS simulate respectively agreement isolate internal, external network processing unit;Association is disposed on Guest OS View cleaning module, first resolves IP traffic amount at agreement cleaning module, peels off the protocol characteristic of TCP/IP, blocks Attack based on ICP/IP protocol feature, be applied layer protocol data, then according to the attribute of proprietary protocol definition and rule, This packet is configured to proprietary protocol packet and carries out safety detection with depth detection method, it is ensured that Modbus/TCP number Legitimacy according to content;
1) agreement isolation thought
The communication of Modbus/TCP is explained as follows;
(1) under Xen environment, build two VM and simulate respectively at Intranet processing unit i.e. VM1 and the outer net of agreement isolation Reason unit i.e. VM2;
(2) the Modbus/TCP request that client computer is initiated, first issues VM1;The VM1 Modbus/TCP to receiving please Ask and carry out protocol analysis, separate header information and initial data;The data being stripped out are cleaned by VM1 through agreement afterwards After the safety detection of module, ferry to VM2 in the way of shared drive;After VM2 receives the data separated, according to data In header information, obtain real server address, data be re-packaged into Modbus/TCP agreement simultaneously, send To Modbus/TCP server;
(3) after Modbus/TCP server receives Modbus/TCP client requests, respond, response message is issued VM2;The VM2 response message to receiving carries out protocol analysis, separates header information and initial data;VM2 will separate Data after the safety detection of agreement cleaning module, ferry to VM1 in the way of shared drive;VM1 receives stripping After the data gone out and header information, Reseal becomes Modbus/TCP agreement to be sent to client computer;
(4) communication between a Modbus/TCP client computer and Modbus/TCP server so far, is completed;
2) overall architecture of agreement isolation
The agreement isolation architecture of Xen virtual platform includes the flow lead module on VMM, data ferry-boat module and two Platform virtual machine, is wherein all deployed with agreement cleaning module on two virtual machines;Two virtual machines are handed over by the way of data are ferried Changing data, need to use synchronization mechanism data are ferried when, data ferry-boat function package is ferried module in data;
3) handling process of agreement isolation
Agreement isolation processing flow process groundwork includes:
(1) virtual platform receives after the connection request of device A, gives flow lead resume module;
(2) flow lead module according to formulate stream table by flow lead to VM1 process;After VM1 receives packet, Agreement cleaning module is transferred to carry out resolving and safety detection, if detection is not passed through, then packet discard;If detection is passed through, then The application layer initial data of packet is carried out proprietary protocol encapsulation, is sent to data ferry-boat module;
(3) data ferry-boat module utilizes shared drive by proprietary protocol packet ferry-boat to VM2;VM2 receives VM1 and " ferries " After the proprietary protocol packet come over, VM2 agreement cleaning module resolves, according to corresponding ICP/IP protocol form by number According to being re-packaged into the ICP/IP protocol packet of standard, it is transmitted to flow lead module afterwards;
(4) flow lead module delivers a packet to equipment B according to corresponding stream table rule;
Flow lead module is responsible for importing in the virtual machine specified data traffic, is basis and the premise realizing security function;Stream Amount traction module is to be set up by OpenFlow and OpenvSwitch to form, and its function is to import the packet specifying network interface to specify In virtual machine, and export to the packet of designated virtual machine specify physical internet ports;Flow lead module is made by OpenFlow agreement For control protocol, OpenvSwitch is as virtual switch, upwards by manager by OpenFlow protocol integrated test system, therein The management of stream table is exactly that agreement issues realization;The core of flow lead module is stream table, and it is the flow switch in whole model, directly Connect break-make and the flow direction of data determining network.
A kind of protocol isolating method based on Modbus/TCP deep analysis the most according to claim 1, its feature exists In: the IP traffic amount that traction module traction comes is resolved by agreement cleaning module, separates application layer protocol data, then According to attribute and the rule of proprietary protocol definition, this packet is configured to proprietary protocol packet and carries out safety detection;
The groundwork of agreement cleaning module includes the following:
(1) after VM1 receives the packet that the traction of flow lead module comes, first peeling off packet, be applied layer Data, build proprietary protocol data according to rule, application layer data are carried out safety detection simultaneously;Detection is not passed through, directly Connect and abandon this packet, interrupt communication connection;Detection is passed through, then ferried by proprietary protocol packet by data ferry-boat module To VM2;
(2) after VM2 receives the proprietary protocol packet that data ferry-boat module ferry-boat comes, first to proprietary protocol Packet carries out completeness check, resolves proprietary protocol packet simultaneously and obtains original application layer data, according to standard Protocol data Reseal is become the ICP/IP protocol packet of standard by ICP/IP protocol;Last VM2 is good by Reseal Standard ICP/IP protocol packet is dealt into network by flow lead module;
The mode of shared drive can accelerate data exchange, thus utilize the shared drive mode of Xen in data ferry-boat module, Complete data exchange;Create shared drive by Grant Table mechanism during data exchange, by Producer/consumer and XenStore mechanism carries out data syn-chronization;During data are ferried, transmission is proprietary protocol data, proprietary protocol data Peel off ICP/IP protocol feature, it is possible to block aggressive behavior based on ICP/IP protocol, thus count during ensureing ferry-boat According to safety.
A kind of protocol isolating method based on Modbus/TCP deep analysis the most according to claim 1, its feature exists In: the communication between VM1 and VM2 realizes by the way of data are ferried, and the agreement cleaning module of VM1 completes privately owned association After the structure of view, VM1 and VM2 sets up two virtual internal memory circle queues, is respectively used to data transmission and data connect Receive;
(1) VM1 is according to the event channel table safeguarded under privileged virtual machine, the address information that inquiry VM2 is relevant;If coupling To corresponding VM2 address and the information of port, then explanation can set up communication connection, is ready for next step operation;If Join less than, then terminate this communication;
(2) Xen utilizes that is two actual memory circle queues of Grant Table Mechanism establishing shared drive, prepares to receive and send Data, the meanwhile state of Xenstore synchronized update virtual machine;XenStore is being total between the different virtual machine under Xen Enjoy memory block, store configuration relevant for VM and status information with the form of key/value;Before shared drive is set up, pass through XenStore transmits synchronically controlling information, it is ensured that the correctness that shared drive is read and write by VM1 and VM2;
(3) the shared drive information that VM1 will build up, prepares logical by event channel mechanism notice VM2, VM1 and VM2 Cross shared drive and carry out data communication;
(4) the proprietary protocol data write shared drive that agreement cleaning module is built by VM1, now in synchronization and mutex mechanism Under control, VM2 cannot read data from this shared drive;
(5) VM1 is after shared drive write data, notifies VM2 by event channel;VM2 reads from shared drive subsequently Data, notify VM1, data are handed over the agreement cleaning module of VM2 process simultaneously after reading;VM1 receives VM1 After the complete event notification message of reading sent, then write according to practical situation or directly exit.
CN201610320345.4A 2016-05-13 2016-05-13 Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol) Pending CN106027511A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610320345.4A CN106027511A (en) 2016-05-13 2016-05-13 Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610320345.4A CN106027511A (en) 2016-05-13 2016-05-13 Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol)

Publications (1)

Publication Number Publication Date
CN106027511A true CN106027511A (en) 2016-10-12

Family

ID=57096905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610320345.4A Pending CN106027511A (en) 2016-05-13 2016-05-13 Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol)

Country Status (1)

Country Link
CN (1) CN106027511A (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106453389A (en) * 2016-11-11 2017-02-22 浙江中烟工业有限责任公司 Network isolation method based on combination of firewall and gatekeeper
CN106502951A (en) * 2016-10-21 2017-03-15 南京南瑞集团公司 PCIE interface data ferry-boat card and its method for ferry-boat data
CN106657003A (en) * 2016-11-11 2017-05-10 浙江中烟工业有限责任公司 Flexible and software-definable network security isolation method
CN106789874A (en) * 2016-11-11 2017-05-31 浙江中烟工业有限责任公司 A kind of method that Intrusion Detection based on host Intel Virtualization Technology realizes procotol isolation
CN107196931A (en) * 2017-05-17 2017-09-22 南京南瑞继保电气有限公司 A kind of deep message detection method based on network isolating device
CN107948195A (en) * 2017-12-25 2018-04-20 杭州迪普科技股份有限公司 A kind of method and device of protection Modbus attacks
CN111031077A (en) * 2020-03-10 2020-04-17 杭州圆石网络安全技术有限公司 Flow cleaning method, flow cleaning system and equipment
CN111245715A (en) * 2019-12-31 2020-06-05 亚信科技(中国)有限公司 Message transmission method and system
CN111262861A (en) * 2020-01-16 2020-06-09 四川效率源科技有限责任公司 Method for identifying and filtering MODBUS TCP/UDP protocol
CN111327645A (en) * 2018-11-28 2020-06-23 鸿合科技股份有限公司 Network sharing method and device and electronic equipment
CN111343144A (en) * 2020-01-23 2020-06-26 奇安信科技集团股份有限公司 OPC (optical proximity correction) network gate system based on Linux and data processing method
CN111371651A (en) * 2020-03-12 2020-07-03 杭州木链物联网科技有限公司 Industrial communication protocol reverse analysis method
CN111510362A (en) * 2020-04-23 2020-08-07 宁波伟立机器人科技股份有限公司 Communication method and system based on ModBus data service function
CN112187583A (en) * 2020-09-30 2021-01-05 绿盟科技集团股份有限公司 Method, device and storage medium for recognizing action information in private industrial control protocol
CN113037833A (en) * 2021-03-04 2021-06-25 北京安华金和科技有限公司 Data processing method and device, storage medium and electronic equipment
CN113301049A (en) * 2021-05-26 2021-08-24 杭州安恒信息技术股份有限公司 Industrial control equipment auditing method, device, equipment and readable storage medium
CN115277221A (en) * 2022-07-29 2022-11-01 深圳市风云实业有限公司 Transmission method and isolation device based on transparent data landing and protocol isolation
CN115801643A (en) * 2022-10-28 2023-03-14 北京六方云信息技术有限公司 Method and device for testing protocol analysis function, terminal equipment and storage medium
CN115801452A (en) * 2023-01-30 2023-03-14 北京万维盈创科技发展有限公司 Data acquisition instrument with network security isolation function
CN116939065A (en) * 2023-08-07 2023-10-24 山东九州信泰信息科技股份有限公司 Modbus protocol TCP segmentation rapid deep inspection method
CN117792831A (en) * 2024-02-27 2024-03-29 天津大学四川创新研究院 Multi-protocol Modbus gateway control system and method
CN115277221B (en) * 2022-07-29 2024-06-07 深圳市风云实业有限公司 Transmission method and isolation equipment based on transparent data landing and protocol isolation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287848A1 (en) * 2008-05-13 2009-11-19 Kabushiki Kaisha Toshiba Information processing device and communication control method
CN101668022A (en) * 2009-09-14 2010-03-10 陈博东 Virtual network isolation system established on virtual machine and implementation method thereof
CN102129531A (en) * 2011-03-22 2011-07-20 北京工业大学 Xen-based active defense method
CN103036903A (en) * 2012-12-26 2013-04-10 北京中电普华信息技术有限公司 Data processing method and web service assembly
CN104702571A (en) * 2013-12-06 2015-06-10 北京天地超云科技有限公司 Method for detecting intrusion of network data in Xen virtual environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287848A1 (en) * 2008-05-13 2009-11-19 Kabushiki Kaisha Toshiba Information processing device and communication control method
CN101668022A (en) * 2009-09-14 2010-03-10 陈博东 Virtual network isolation system established on virtual machine and implementation method thereof
CN102129531A (en) * 2011-03-22 2011-07-20 北京工业大学 Xen-based active defense method
CN103036903A (en) * 2012-12-26 2013-04-10 北京中电普华信息技术有限公司 Data processing method and web service assembly
CN104702571A (en) * 2013-12-06 2015-06-10 北京天地超云科技有限公司 Method for detecting intrusion of network data in Xen virtual environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴欢等: "一种高效虚拟化多级网络安全互联机制", 《山东大学学报(理学版)》 *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502951A (en) * 2016-10-21 2017-03-15 南京南瑞集团公司 PCIE interface data ferry-boat card and its method for ferry-boat data
CN106657003A (en) * 2016-11-11 2017-05-10 浙江中烟工业有限责任公司 Flexible and software-definable network security isolation method
CN106789874A (en) * 2016-11-11 2017-05-31 浙江中烟工业有限责任公司 A kind of method that Intrusion Detection based on host Intel Virtualization Technology realizes procotol isolation
CN106453389A (en) * 2016-11-11 2017-02-22 浙江中烟工业有限责任公司 Network isolation method based on combination of firewall and gatekeeper
CN107196931A (en) * 2017-05-17 2017-09-22 南京南瑞继保电气有限公司 A kind of deep message detection method based on network isolating device
CN107948195A (en) * 2017-12-25 2018-04-20 杭州迪普科技股份有限公司 A kind of method and device of protection Modbus attacks
CN107948195B (en) * 2017-12-25 2020-12-04 杭州迪普科技股份有限公司 Method and device for protecting Modbus attack
CN111327645A (en) * 2018-11-28 2020-06-23 鸿合科技股份有限公司 Network sharing method and device and electronic equipment
CN111327645B (en) * 2018-11-28 2023-11-21 鸿合科技股份有限公司 Network sharing method and device and electronic equipment
CN111245715A (en) * 2019-12-31 2020-06-05 亚信科技(中国)有限公司 Message transmission method and system
CN111245715B (en) * 2019-12-31 2022-02-22 亚信科技(中国)有限公司 Message transmission method and system
CN111262861A (en) * 2020-01-16 2020-06-09 四川效率源科技有限责任公司 Method for identifying and filtering MODBUS TCP/UDP protocol
CN111343144A (en) * 2020-01-23 2020-06-26 奇安信科技集团股份有限公司 OPC (optical proximity correction) network gate system based on Linux and data processing method
CN111031077A (en) * 2020-03-10 2020-04-17 杭州圆石网络安全技术有限公司 Flow cleaning method, flow cleaning system and equipment
CN111031077B (en) * 2020-03-10 2020-06-09 杭州圆石网络安全技术有限公司 Flow cleaning method, flow cleaning system and equipment
CN111371651A (en) * 2020-03-12 2020-07-03 杭州木链物联网科技有限公司 Industrial communication protocol reverse analysis method
CN111510362A (en) * 2020-04-23 2020-08-07 宁波伟立机器人科技股份有限公司 Communication method and system based on ModBus data service function
CN111510362B (en) * 2020-04-23 2021-08-24 宁波伟立机器人科技股份有限公司 Communication method and system based on ModBus data service function
CN112187583A (en) * 2020-09-30 2021-01-05 绿盟科技集团股份有限公司 Method, device and storage medium for recognizing action information in private industrial control protocol
CN113037833A (en) * 2021-03-04 2021-06-25 北京安华金和科技有限公司 Data processing method and device, storage medium and electronic equipment
CN113301049A (en) * 2021-05-26 2021-08-24 杭州安恒信息技术股份有限公司 Industrial control equipment auditing method, device, equipment and readable storage medium
CN113301049B (en) * 2021-05-26 2023-02-24 杭州安恒信息技术股份有限公司 Industrial control equipment auditing method, device, equipment and readable storage medium
CN115277221A (en) * 2022-07-29 2022-11-01 深圳市风云实业有限公司 Transmission method and isolation device based on transparent data landing and protocol isolation
CN115277221B (en) * 2022-07-29 2024-06-07 深圳市风云实业有限公司 Transmission method and isolation equipment based on transparent data landing and protocol isolation
CN115801643B (en) * 2022-10-28 2023-09-22 北京六方云信息技术有限公司 Protocol analysis function test method and device, terminal equipment and storage medium
CN115801643A (en) * 2022-10-28 2023-03-14 北京六方云信息技术有限公司 Method and device for testing protocol analysis function, terminal equipment and storage medium
CN115801452A (en) * 2023-01-30 2023-03-14 北京万维盈创科技发展有限公司 Data acquisition instrument with network security isolation function
CN116939065A (en) * 2023-08-07 2023-10-24 山东九州信泰信息科技股份有限公司 Modbus protocol TCP segmentation rapid deep inspection method
CN116939065B (en) * 2023-08-07 2024-02-06 山东九州信泰信息科技股份有限公司 Modbus protocol TCP segmentation rapid deep inspection method
CN117792831A (en) * 2024-02-27 2024-03-29 天津大学四川创新研究院 Multi-protocol Modbus gateway control system and method

Similar Documents

Publication Publication Date Title
CN106027511A (en) Protocol isolation method based on deep resolution of Modbus/TCP (Transmission Control Protocol)
CN104685500B (en) The method and system of application security strategy in overlay network
CN104683352B (en) A kind of industrial communication isolation gap with binary channels ferry-boat
CN104767748B (en) Opc server security protection system
CN107070907A (en) Intranet and extranet data unidirectional transmission method and system
CN102006246B (en) Trusted separate gateway
CN106209684B (en) A method of detection scheduling is forwarded based on time trigger
CN106027358A (en) Network security management and control system for accessing social video networks to video private network
KR20020092972A (en) System, device and method for rapid packet filtering and processing
KR101221045B1 (en) Packet Processing Method and TOE Hardware Using The Same
Xu et al. Demystifying the energy efficiency of network function virtualization
CN102255903A (en) Safety isolation method for virtual network and physical network of cloud computing
CN107360145A (en) A kind of multinode honey pot system and its data analysing method
EP2577918A1 (en) Method and device for processing source role information
WO2023004992A1 (en) Traffic monitoring method and apparatus for open stack tenant network
JP2002533792A (en) Method and system for protecting the operation of a trusted internal network
CN116055254A (en) Safe and trusted gateway system, control method, medium, equipment and terminal
KR101076683B1 (en) Apparatus and method for splitting host-based networks
CN106330973B (en) Data security exchange method based on black and white list
CN107645472A (en) A kind of virtual machine traffic detecting system based on OpenFlow
CN104735071A (en) Network access control implementation method between virtual machines
US11431677B2 (en) Mechanisms for layer 7 context accumulation for enforcing layer 4, layer 7 and verb-based rules
CN107070893A (en) A kind of power distribution network terminal IEC101 protocol massages certification method of discrimination
CN109450928A (en) A kind of across cloud data penetration transmission method and system based on UDP and Modbus TCP
CN104573508B (en) The compliance detection method of application is paid under virtualized environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20161012

RJ01 Rejection of invention patent application after publication