一种工控全流量分析方法及装置制造方法及图纸

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

【技术实现步骤摘要】
一种工控全流量分析方法及装置
本专利技术涉及网络安全
,具体涉及一种工控全流量分析方法及装置。
技术介绍
随着互联网技术的快速发展,网络连接设备面临越来越多的连接异常和网络攻击事件,特别是对于计算机外围的网路连接设备很难进行实时安全监管。随着网络抓包(packetcapture)技术的日新月异,其常被用来进行网络数据截取、转存和检查网络安全。传统的网络安全监管,大致分为两类:一类是针对通用计算机系统,采用安装软件如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算法、Corasickplu本文档来自技高网...

【技术保护点】
1.一种工控全流量分析方法,其特征在于,包括以下步骤:A、至少从两个镜像端口抓取数据包;B、合并数据包并根据黑白名单数据库对数据包进行识别解析;C、加密存储数据包并产生预警信息。

【技术特征摘要】
1.一种工控全流量分析方法,其特征在于,包括以下步骤:A、至少从两个镜像端口抓取数据包;B、合并数据包并根据黑白名单数据库对数据包进行识别解析;C、加密存储数据包并产生预警信息。2.根据权利要求1所述的一种工控全流量分析方法,其特征在于,采用ListsMap容器对数据包的时间戳进行排序后合并,所述ListsMap容器包括红黑二叉树算法。3.根据权利要求2所述的一种工控全流量分析方法,其特征在于,采用load_protcols算法、Corasickplus算法对IP和域名进行解析,进行黑白名单匹配。4.根据权利要求3所述的一种工控全流量分析方法,其特征在于,采用Corasickplus算法进行黑白名单匹配的具体步骤为:建立多模式集合的Trie树;为多模式集合的Trie树添加失败路径,建立AC自动机;根据AC自动机,搜索待处理的文本。5....

【专利技术属性】
技术研发人员:陈虹宇苗宁
申请(专利权)人:四川神琥科技有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1