CN109040028A - 一种工控全流量分析方法及装置 - Google Patents

一种工控全流量分析方法及装置 Download PDF

Info

Publication number
CN109040028A
CN109040028A CN201810765192.3A CN201810765192A CN109040028A CN 109040028 A CN109040028 A CN 109040028A CN 201810765192 A CN201810765192 A CN 201810765192A CN 109040028 A CN109040028 A CN 109040028A
Authority
CN
China
Prior art keywords
data packet
data
network
industry control
full flow
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.)
Granted
Application number
CN201810765192.3A
Other languages
English (en)
Other versions
CN109040028B (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.)
Sichuan Shenhu Technology Co.,Ltd.
Original Assignee
SICHUAN SHENHU TECHNOLOGY Co Ltd
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 SICHUAN SHENHU TECHNOLOGY Co Ltd filed Critical SICHUAN SHENHU TECHNOLOGY Co Ltd
Priority to CN201810765192.3A priority Critical patent/CN109040028B/zh
Publication of CN109040028A publication Critical patent/CN109040028A/zh
Application granted granted Critical
Publication of CN109040028B publication Critical patent/CN109040028B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

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

本发明公开了一种工控全流量分析方法及装置,该装置,包括:用于获取数据包的第一网卡;用于获取数据包的第二网卡;按上述任一实施例的方法实现数据包合并识别解析的处理器;对数据包进行存储的存储介质;用于数据接收实现黑白名单远程配置的数据收发模块。其通过两个网卡的独立工作把被监控网络数据分为两个输入,以实现不干扰用户网络和不需要任何网络配置,通过处理器实现对数据的合并识别解析以达到预警作用。

Description

一种工控全流量分析方法及装置
技术领域
本发明涉及网络安全技术领域,具体涉及一种工控全流量分析方法及装置。
背景技术
随着互联网技术的快速发展,网络连接设备面临越来越多的连接异常和网络攻击事件,特别是对于计算机外围的网路连接设备很难进行实时安全监管。随着网络抓包(packet capture)技术的日新月异,其常被用来进行网络数据截取、转存和检查网络安全。
传统的网络安全监管,大致分为两类:
一类是针对通用计算机系统,采用安装软件如wireshark/tshark等在计算机内部对网络进行抓包,缺点是监管软件容易受到人为干扰和病毒攻击且无法运用到诸如网络打印机等外围设备;
另一类是通过路由设备的网络镜像功能连接到特定的PC机,通过抓包软件截取被镜像网络的网络数据,虽然这种方式能够截取到被镜像网络的数据,但是必须有带端口镜像功能的路由器或交换机、一台PC和复杂繁琐的IP配置,极易影响用户的网络环境。
目前,难以对独立的网络设备如网络打印机、路由器和工业网络连接设备等进行简单、快捷且有效的网络数据抓包、分析和安全监控,传统的PC+路由设备的方法给网络安全保障人员带来很大的不便。
发明内容
本发明为了解决上述技术问题提供一种工控全流量分析方法及装置。
本发明通过下述技术方案实现:
一种工控全流量分析方法,包括以下步骤:
A、至少从两个镜像端口抓取数据包;
B、合并数据包并根据黑白名单数据库对数据包进行识别解析;
C、加密存储数据包并产生预警信息。
采用ListsMap容器对数据包的时间戳进行排序后合并,所述ListsMap容器包括红黑二叉树算法。红黑二叉树算法即采用平衡树二叉结构,让ListsMap中的二叉树达到最大的一个平衡,就是让它的左右子树的数目尽可能相等,以减少后续的排序时间。采用常规的vector、HashMap容器,在数据量大的同时会影响到排序和数据包的合并性能,增加抓包合并的排序的时间,会导致处理不及时导致丢包。而采用ListsMap容器对时间戳进行排序,具有高效的排序性能,比常规容器快几十倍,采用红黑二叉树算法,加速合并且不会影响抓包和合并同时进行。将数据包存入容器时,先将插入的数据进行排序,二叉树拥有左右子树,在进行排序的时候并不需要遍历所有子节点,只需要先对其父节点进行检索比较,而后以二分的方式进行查找排序。而传统的排序方法,需要遍历所有的元素,速度慢。
采用Corasickplus算法和load_protcols算法对IP和域名进行解析,进行黑白名单匹配。一般的网络设备只会查看以太网头部和IP头部而不会分析TCP/UDP里面的内容;本方案采用load_protcols算法,它会分析TCP/UDP里面的内容,可以很好的解析数据包中的域名。load_protcols用“旁挂”的方式接入到网络。它会对网络中的每个数据包进行检查,识别出应用层协议,根据识别的协议采取一定的措施,比如记录http访问行为。Corasickplus算法是一种字符串搜索算法。它在输入文本中定位有限字符串集合的元素,同时匹配所有字符串。该算法构造了一个有限状态机,它类似于在各个内部节点之间具有附加链接的特里结构。这些额外的内部链接允许失败的字符串之间快速转换,该共享特里树的其它分支一个共同的前缀。这允许自动机在字符串匹配之间转换而不需要回溯。
进一步的,采用Corasickplus算法进行黑白名单匹配的具体步骤为:
建立多模式集合的Trie树,对于多模式集合{"say","she","shr","he","her"},对应的Trie树如图4所示,其中曲线构成的圈是表示为接收态。
为多模式集合的Trie树添加失败路径,建立AC自动机;
根据AC自动机,搜索待处理的文本。
进一步的,采用load_protcols算法进行解析的具体步骤为:
B1、高层应用把三、四层的数据交给load_protcols;
B2、load_protcols根据默认端口和承载协议预估应用协议,并尝试用预估的协议解析器进行解析,若解析成功,返回结果;若不成功,则进入B3;
B3、依次使用承载协议分类下的协议解析器进行解析,若解析成功,返回结果;若不成功,则停止解析或者继续等待高层应用提供新的数据。
一种工控全流量分析装置,包括:
用于获取数据包的第一网卡;
用于获取数据包的第二网卡;
按上述方法实现数据包合并识别解析的处理器;
对数据包进行存储的存储介质。
采用本装置解决了传统的PC+网络镜像设备的网络抓包方法的复杂、繁琐和不方便部署的弊端,解决必须使用路由或者交换机等设备才能对网络进行分析的问题。本装置提供的两个采用网络物理交叉分流的直连接口,其与装置属于完电气隔离状态,即使在装置断电情况也不会影响被监测网络的正常通信,对外完全等同于一根网线,一端用于连接被分析设备的输入网络,另一端连接被分析设备。通过两个网卡的独立工作把被监控网络数据分为两个输入,以实现不干扰用户网络和不需要任何网络配置。通过内部高实时性数据包合成系统,将两个输入数据组合成常规的只含一个输入和一个输出的网络数据包,以达到对网络的上行和下行数据进行真实时抓包。
还包括用于数据接收实现黑白名单远程配置的数据收发模块。各工控全流量分析装置之间通过无线自组网进行连接,组网速度快,通过自组网系统进行远程大规模指令下发和设备管理,解决现有传统方法无法快速进行大规模网络节点或网络设备的监控的问题。
本发明与现有技术相比,具有如下的优点和有益效果:
1、本发明通过两个网卡的独立工作把被监控网络数据分为两个输入,以实现不干扰用户网络和不需要任何网络配置,通过处理器实现对数据的合并识别解析以达到预警作用,解决了传统的PC+网络镜像设备的网络抓包方法的复杂、繁琐和不方便部署的弊端,解决必须使用路由或者交换机等设备才能对网络进行分析的问题。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。
图1为本方法的原理框图。
图2为本装置的原理框图。
图3为本装置的使用示意图。
图4为Trie树的结构示意图。
图5为平衡树二叉结构的大致结构。
图6为采用二叉树进行二分排序的示例图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例1
如图1所示的一种工控全流量分析方法,包括以下步骤:
A、至少从两个镜像端口抓取数据包;
B、合并数据包并根据黑白名单数据库对数据包进行识别解析;
C、加密存储数据包并产生预警信息。
实施例2
基于上述实施例的方法原理,本实施例以两个镜像端口为例公开一具体实施方法。
从两个镜像端口抓取数据包;
采用ListsMap容器对数据包的时间戳进行排序后合并,该ListsMap容器包括红黑二叉树算法。红黑二叉树算法即采用平衡树二叉结构,其大致结构如图5所示。让ListsMap中的二叉树达到最大的一个平衡,就是让它的左右子树的数目尽可能相等,以减少后续的排序时间。采用二叉树,可以方便的实现二分排序,因为在数据插入的时候就已经在进行二分排序了。举个例子,比如我们将{7,8,9,10,11,12}进行排序,画出它的过程,如图6所示。
采用load_protcols算法、Corasickplus算法对IP和域名进行解析、进行黑白名单匹配,该域名包括TCP/UDP里面的内容。
load_protcols是一个C语言编写的解析库,用来实现软件DPI系统。具体的,对IP和域名进行解析的步骤为:
B1、高层应用把三、四层的数据交给load_protcols;
B2、load_protcols根据默认端口和承载协议预估应用协议,并尝试用预估的协议解析器进行解析,若解析成功,返回结果;若不成功,则进入B3;
B3、依次使用承载协议分类下的协议解析器进行解析,比如流是基于TCP,就用和TCP有关的解析器进行解析,而不考虑UDP的的解析器,若采用该步骤解析成功,返回结果;若不成功,其原因可能是协议不被支持或者没有抓到关键的包,如果协议不被支持就会停止解析,如果是后面一种情况就继续等待高层应用提供新的数据。
采用Corasickplus算法进行黑白名单匹配的具体步骤为:
建立多模式集合的Trie树;
为多模式集合的Trie树添加失败路径,建立AC自动机;构造失败指针的过程概括起来就一句话:设这个节点上的字母为C,沿着他父亲的失败指针走,直到走到一个节点,他的儿子中也有字母为C的节点。然后把当前节点的失败指针指向那个字母也为C的儿子。如果一直走到了root都没找到,那就把失败指针指向root。使用广度优先搜索BFS,层次遍历节点来处理,每一个节点的失败路径。特殊处理:第二层要特殊处理,将这层中的节点的失败路径直接指向父节点。
根据AC自动机,搜索待处理的文本。从root节点开始,每次根据读入的字符沿着自动机向下移动。当读入的字符,在分支中不存在时,递归走失败路径。如果走失败路径走到了root节点,则跳过该字符,处理下一个字符。因为AC自动机是沿着输入文本的最长后缀移动的,所以在读取完所有输入文本后,最后递归走失败路径,直到到达根节点,这样可以检测出所有的模式。
若解析出的内容与黑背名单有匹配,则产生预警信息并发送。
实施例3
基于上述方法,如图2所示本实施例公开一可实现上述方法的装置。
一种工控全流量分析装置,包括:
用于获取数据包的第一网卡;
用于获取数据包的第二网卡;
按上述任一实施例的方法实现数据包合并识别解析的处理器;
对数据包进行存储的存储介质;
用于数据接收实现黑白名单远程配置的数据收发模块。
多个工控全流量分析装置之间可通过无线自组网的方式进行连接,在大规模部署情况下,只需要通过一个终端节点即可对整个装置群进行批量管理。
如图3所示,本实施例公开本装置的一具体应用,在该使用环境中有5个网络设备,包括4个工作机和1个网络打印机;其中,一个工作主机和一打印机通过两根网线分别连接到本装置,再将本装置连接到工作网络环境。若有多台本装置,则开机后,多台工控全流量分析装置通过无线自主网系统自动组网连接。网络监管人员通过终端系统,分别配置两台装置的域名、IP、关键字黑白名单预警信息,同时可以设置如果触发黑白名单的网络访问信息,本设备可以强制切断被监管设备的物理网络链接。如果被监控主机或者打印机出现违规行为,本设备将自动上报给相关监管人员,并且执行设置的处理行为,如强制断开网络、网络过滤等。如果发生违规行为,管理员还可以通过存储的网络抓包数据,进行行为分析,定位具体违规点。在使用过程中,管理员可以更具自身需要或者网络现状,进行新的分析预警规则下发。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种工控全流量分析方法,其特征在于,包括以下步骤:
A、至少从两个镜像端口抓取数据包;
B、合并数据包并根据黑白名单数据库对数据包进行识别解析;
C、加密存储数据包并产生预警信息。
2.根据权利要求1所述的一种工控全流量分析方法,其特征在于,采用ListsMap容器对数据包的时间戳进行排序后合并,所述ListsMap容器包括红黑二叉树算法。
3.根据权利要求2所述的一种工控全流量分析方法,其特征在于,采用load_protcols算法、Corasickplus算法对IP和域名进行解析,进行黑白名单匹配。
4.根据权利要求3所述的一种工控全流量分析方法,其特征在于,采用Corasickplus算法进行黑白名单匹配的具体步骤为:
建立多模式集合的Trie树;
为多模式集合的Trie树添加失败路径,建立AC自动机;
根据AC自动机,搜索待处理的文本。
5.根据权利要求3所述的一种工控全流量分析方法,其特征在于,采用load_protcols算法进行解析的具体步骤为:
B1、高层应用把三、四层的数据交给load_protcols;
B2、load_protcols根据默认端口和承载协议预估应用协议,并尝试用预估的协议解析器进行解析,若解析成功,返回结果;若不成功,则进入B3;
B3、依次使用承载协议分类下的协议解析器进行解析,若解析成功,返回结果;若不成功,则停止解析或者继续等待高层应用提供新的数据。
6.一种工控全流量分析装置,其特征在于,包括:
用于获取数据包的第一网卡;
用于获取数据包的第二网卡;
按权利要求1至5任一的方法实现数据包合并识别解析的处理器;
对数据包进行存储的存储介质。
7.根据权利要求6所述的一种工控全流量分析装置,其特征在于,还包括用于数据接收实现黑白名单远程配置的数据收发模块。
CN201810765192.3A 2018-07-12 2018-07-12 一种工控全流量分析方法及装置 Active CN109040028B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810765192.3A CN109040028B (zh) 2018-07-12 2018-07-12 一种工控全流量分析方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810765192.3A CN109040028B (zh) 2018-07-12 2018-07-12 一种工控全流量分析方法及装置

Publications (2)

Publication Number Publication Date
CN109040028A true CN109040028A (zh) 2018-12-18
CN109040028B CN109040028B (zh) 2021-01-22

Family

ID=64642092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810765192.3A Active CN109040028B (zh) 2018-07-12 2018-07-12 一种工控全流量分析方法及装置

Country Status (1)

Country Link
CN (1) CN109040028B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109768887A (zh) * 2019-01-11 2019-05-17 四川大学 一种自动挖掘工控流量周期性特征的方法
CN110311914A (zh) * 2019-07-02 2019-10-08 北京微步在线科技有限公司 通过镜像网络流量提取文件的方法及装置
CN110430225A (zh) * 2019-09-16 2019-11-08 杭州安恒信息技术股份有限公司 一种工业设备监管方法、装置、设备及可读存储介质
CN110795463A (zh) * 2019-06-27 2020-02-14 浙江大学 面向电力系统暂态分析的海量时间序列数据可视化方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101213811A (zh) * 2005-06-30 2008-07-02 英特尔公司 采用标记值的多样本包内容检测机制
CN103412858A (zh) * 2012-07-02 2013-11-27 清华大学 用于文本或网络内容分析的大规模特征匹配的方法
WO2015097428A1 (en) * 2013-12-23 2015-07-02 British Telecommunications Public Limited Company Improved pattern matching machine with mapping table

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101213811A (zh) * 2005-06-30 2008-07-02 英特尔公司 采用标记值的多样本包内容检测机制
CN103412858A (zh) * 2012-07-02 2013-11-27 清华大学 用于文本或网络内容分析的大规模特征匹配的方法
WO2015097428A1 (en) * 2013-12-23 2015-07-02 British Telecommunications Public Limited Company Improved pattern matching machine with mapping table

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109768887A (zh) * 2019-01-11 2019-05-17 四川大学 一种自动挖掘工控流量周期性特征的方法
CN110795463A (zh) * 2019-06-27 2020-02-14 浙江大学 面向电力系统暂态分析的海量时间序列数据可视化方法
CN110795463B (zh) * 2019-06-27 2023-08-08 浙江大学 面向电力系统暂态分析的海量时间序列数据可视化方法
CN110311914A (zh) * 2019-07-02 2019-10-08 北京微步在线科技有限公司 通过镜像网络流量提取文件的方法及装置
CN110430225A (zh) * 2019-09-16 2019-11-08 杭州安恒信息技术股份有限公司 一种工业设备监管方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN109040028B (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN109040028A (zh) 一种工控全流量分析方法及装置
US20210258791A1 (en) Method for http-based access point fingerprint and classification using machine learning
US7596809B2 (en) System security approaches using multiple processing units
WO2019139803A1 (en) Self-adaptive application programming interface level security monitoring
US20170289187A1 (en) System and method for visualizing and analyzing cyber-attacks using a graph model
US9031959B2 (en) Method and apparatus for identifying application protocol
CN102387045B (zh) 嵌入式p2p流量监控系统及方法
Komisarek et al. Machine Learning Based Approach to Anomaly and Cyberattack Detection in Streamed Network Traffic Data.
CN104243486B (zh) 一种病毒检测方法及系统
CN102932203B (zh) 异构平台间的深度报文检测方法及装置
WO2012177736A1 (en) Compiler for regular expressions
WO2012177752A1 (en) Anchored patterns
CN103067218B (zh) 一种高速网络数据包内容分析装置
CN104022924A (zh) 一种http通信内容检测的方法
US20210185059A1 (en) Label guided unsupervised learning based network-level application signature generation
Wang et al. Design and implementation of an intrusion detection system by using extended BPF in the Linux kernel
Yang et al. Intrusion detection system for high-speed network
He et al. On‐Device Detection of Repackaged Android Malware via Traffic Clustering
EP3211853B1 (en) Real-time validation of json data applying tree graph properties
Le et al. A proactive method of the webshell detection and prevention based on deep traffic analysis
CN113630301A (zh) 基于智能决策的数据传输方法、装置、设备及存储介质
CN110830416A (zh) 网络入侵检测方法和装置
US20140096228A1 (en) System and method for automatic provisioning of multi-stage rule-based traffic filtering
KR20140117217A (ko) 빅데이터 분석을 이용한 유해 정보 수집 방법 및 장치
Lukashin et al. Distributed packet trace processing method for information security analysis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230601

Address after: F13, Building 11, Zone D, New Economic Industrial Park, No. 99, West Section of Hupan Road, Xinglong Street, Tianfu New District, Chengdu, Sichuan, 610000

Patentee after: Sichuan Shenhu Technology Co.,Ltd.

Address before: No.5, 1st floor, unit 1, building 19, 177 Tianfu Avenue, high tech Zone, Chengdu, Sichuan 610000

Patentee before: SICHUAN CINGHOO TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right