CN104579832A - 一种OpenFlow网络安全检测方法及系统 - Google Patents

一种OpenFlow网络安全检测方法及系统 Download PDF

Info

Publication number
CN104579832A
CN104579832A CN201410837216.3A CN201410837216A CN104579832A CN 104579832 A CN104579832 A CN 104579832A CN 201410837216 A CN201410837216 A CN 201410837216A CN 104579832 A CN104579832 A CN 104579832A
Authority
CN
China
Prior art keywords
openflow
network
packet
openflow network
outside
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
CN201410837216.3A
Other languages
English (en)
Other versions
CN104579832B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and 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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201410837216.3A priority Critical patent/CN104579832B/zh
Publication of CN104579832A publication Critical patent/CN104579832A/zh
Application granted granted Critical
Publication of CN104579832B publication Critical patent/CN104579832B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及OpenFlow网络技术领域,公开了一种OpenFlow网络安全检测方法及系统。其中,该方法包括:采集OpenFlow数据包;在OpenFlow网络外,根据OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;在OpenFlow网络外,根据链路关系建立网络转发模型;在OpenFlow网络外,将网络转发模型与预设的安全策略进行比较;若比较匹配,则OpenFlow网络安全;若比较不匹配,则OpenFlow网络不安全,实现了对OpenFlow网络的安全检测,提高了OpenFlow网络的安全性。

Description

一种OpenFlow网络安全检测方法及系统
技术领域
本发明涉及OpenFlow网络技术领域,主要适用于OpenFlow网络安全检测方法及系统。
背景技术
OpenFlow网络是一种可以由软件定义的新型网络架构,它分离了传统网络中交换机的控制平面和数据转发平面,由集中式的控制器统一管理网络中的交换机。参见图1和图2,OpenFlow网络由控制器和交换机组成。控制器和交换机之间建立TCP或SSL连接通道,通过OpenFlow协议进行通信。控制器提供开放的编程接口,抽象了网络资源和能力,可以实现复杂的应用服务。应用服务通过控制器设置OpenFlow交换机的流表,决定网络中数据包的转发路径。交换机接收到数据包后,将数据包的字段与流表进行匹配,根据匹配结果执行流表中对应的动作,如修改、转发和丢弃等。如果没有匹配项,交换机会把数据包上传到控制器,由控制器决定转发并配置流表。OpenFlow的中心化控制和可编程性有利于简化网络管理,实现网络能力及资源的灵活控制和调用。但是,OpenFlow也给网络带来了一些新的安全威胁,主要体现在拒绝服务攻击、非法接入访问和恶意应用等方面。
现有的OpenFlow网络安全监控方案主要是通过扩展OpenFlow网络设备的功能来实现安全防御的,通常和入侵检测及防御系统等安全设备相配合。但是这种方案缺少对OpenFlow网络设备本身的监控。当网络中的设备不可信或者已经被入侵,入侵者可以通过对流表的操作修改网络中的路由,控制整个网络的数据包的转发,从而获取网络的访问控制权限,窃取网络内部的数据,给网络安全带来极大的威胁。
发明内容
本发明所要解决的技术问题是提供一种OpenFlow网络安全检测方法及系统,它提高了OpenFlow网络的安全性。
为解决上述技术问题,本发明提供了一种OpenFlow网络安全检测方法,包括:
采集OpenFlow数据包;
在OpenFlow网络外,根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
在OpenFlow网络外,根据所述链路关系建立网络转发模型;
在OpenFlow网络外,将所述网络转发模型与预设的安全策略进行比较;
若比较匹配,则所述OpenFlow网络安全;
若比较不匹配,则所述OpenFlow网络不安全。
进一步地,所述根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系,包括:
判断所述OpenFlow数据包是否是LLDP协议的数据包;
若是,则从所述OpenFlow数据包中获取所述OpenFlow网络中各交换机的ID和端口号,得到所述OpenFlow网络中各交换机之间的链路关系。
进一步地,所述根据所述OpenFlow数据包得到OpenFlow网络外的主机的链路关系,包括:
从所述OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断所述OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若所述OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据所述OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到所述网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
进一步地,所述将所述网络转发模型与预设的安全策略进行比较;若比较匹配,则所述OpenFlow网络安全;若比较不匹配,则所述OpenFlow网络不安全,包括:
将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与所述预设的安全策略相冲突;
若冲突,则所述OpenFlow网络不安全;
若不冲突,则所述OpenFlow网络安全。
进一步地,还包括:建立OpenFlow网络连接;所述OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;所述建立OpenFlow网络连接,包括:
将由所述源IP地址、所述源端口号、所述目的IP地址和所述目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据所述四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或所述OpenFlow数据包的FIN位为1,则将所述会话从所述哈希值数据库中删除。
本发明提供的OpenFlow网络安全检测系统,包括:
数据采集模块,用于采集OpenFlow数据包;
链路获取模块,用于在OpenFlow网络外,根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
模型建立模块,用于在OpenFlow网络外,根据所述链路关系建立网络转发模型;
安全检测模块,用于在OpenFlow网络外,将所述网络转发模型与预设的安全策略进行比较;
若比较匹配,则所述OpenFlow网络安全;
若比较不匹配,则所述OpenFlow网络不安全。
进一步地,所述链路获取模块,包括:第一链路获取单元,用于在所述OpenFlow网络外,判断所述OpenFlow数据包是否是LLDP协议的数据包;
若是,则从所述OpenFlow数据包中获取所述OpenFlow网络中各交换机的ID和端口号,得到所述OpenFlow网络中各交换机之间的链路关系。
进一步地,所述链路获取模块,包括:第二链路获取单元,用于在所述OpenFlow网络外,从所述OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断所述OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若所述OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据所述OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到所述网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
进一步地,所述安全检测模块,具体用于在所述OpenFlow网络外,将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与所述预设的安全策略相冲突;
若冲突,则所述OpenFlow网络不安全;
若不冲突,则所述OpenFlow网络安全。
进一步地,还包括:网络连接建立模块,用于建立OpenFlow网络连接;所述OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;所述网络连接建立模块,具体用于将由所述源IP地址、所述源端口号、所述目的IP地址和所述目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据所述四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或所述OpenFlow数据包的FIN位为1,则将所述会话从所述哈希值数据库中删除。
本发明的有益效果在于:
本发明提供的OpenFlow网络安全检测方法及系统,通过采集OpenFlow数据包,并在OpenFlow网络外,根据采集到的OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系,并建立网络转发模型,将网络转发模型与预设的安全策略进行比较,得出结果,实现了对OpenFlow网络的安全检测,提高了OpenFlow网络的安全性。
附图说明
图1为OpenFlow网络的结构示意图;
图2为OpenFlow网络中控制器和交换机之间的交互信令图;
图3为本发明实施例提供的OpenFlow网络安全检测方法的流程图;
图4为本发明实施例提供的OpenFlow网络安全检测系统的结构框图。
具体实施方式
为进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的OpenFlow网络安全检测方法及系统的具体实施方式及工作原理进行详细说明。
参见图3,本发明实施例提供的OpenFlow网络安全检测方法,包括:
步骤S110:采集OpenFlow数据包;具体地,可以将HUB集线器或者交换机镜像端口部署在OpenFlow网络的关键节点和路径处,通过数据包标识码的优先级重点捕获与TCP/SSL连接相关的数据包和OpenFlow协议的数据包。在本实施例中,与TCP/SSL连接相关的数据包,包括:OpenFlow控制器下发流表的数据包、控制器查询数据包、交换机上传转发状态的数据包。OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;
步骤S120:建立OpenFlow网络连接;
对本步骤进行具体说明,步骤S120包括:
将由源IP地址、源端口号、目的IP地址和目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;具体地,哈希值数据库中的每一个会话均有一个链表,根据新获取的OpenFlow数据包中的标识码的优先级在会话链表中进行插入的操作,对会话进行排序。
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或OpenFlow数据包的FIN位为1,则表示对应的会话连接断开,则将该会话从哈希值数据库中删除。具体地,可以为每个会话建立对应的定时器,将时间阈值内没有新的数据包达到的会话从哈希值数据库中删除。
步骤S130:在OpenFlow网络外,解析OpenFlow数据包,提取网络中交换机的配置和状态信息;其中,交换机的配置和状态信息,包括:控制器下发的转发规则流表、交换机端口状态、链路信息。
步骤S140:在OpenFlow网络外,根据OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
由于在OpenFlow网络中,控制器会定时要求交换机向相邻的设备发送LLDP数据包以进行链路探测。相邻的设备在收到LLDP数据包后会通过Packet_In消息把LLDP数据包上传到控制器,因而根据OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系,包括:
根据输入标签判断OpenFlow数据包是否是LLDP协议的数据包;
若是,则从OpenFlow数据包中获取OpenFlow网络中各交换机的ID和端口号,得到OpenFlow网络中各交换机之间的链路关系。
具体地,对捕获的Packet_In消息,根据输入标签判断其是否是LLDP协议的数据包;
若是,则根据Packet_In和LLDP的内容提取对应相连的两个交换机的ID和端口号,再判断本地或预设的链路数据库中是否已有该链路的信息;
如果有,则更新链路关系和发现时间;
如果没有,则添加该链路和发现时间。
若不是,则根据数据包的流表信息进行转发。
根据OpenFlow数据包得到OpenFlow网络外的主机的链路关系,包括:
从OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
具体地,从获取的Packet_In消息中提取该消息中的交换机ID和对应端口号,根据预设的OpenFlow网络中的交换机的链路关系,判断该消息是来自网络边缘的主机还是由网络内部的交换机上传到控制器的。对来自网络边缘的主机的数据包,根据Packet_In中携带的MAC层数据帧,可以获取主机的MAC地址和IP地址等信息,而Packet_In消息中的交换机ID和端口号则对应主机的接入地址。
步骤S150:在OpenFlow网络外,根据链路关系建立网络转发模型;具体地,根据得到的OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系建立网络转发图或网络转发模型;
步骤S160:在OpenFlow网络外,当监测到控制器对交换机的流表的操作(如Flow-Mod等流表操作)时,更新网络转发模型,判断更新流表后的网络转发模型中是否存在违反安全策略的情况。具体地,将网络转发模型与预设的安全策略进行比较;其中,安全策略可以使用接入控制列表表示。
若比较匹配,则OpenFlow网络安全;
若比较不匹配,则OpenFlow网络不安全。
进一步对本步骤进行具体说明,步骤S160包括:
将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID(如IP地址等)表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与预设的安全策略相冲突,发现可疑的行为;
若冲突,则OpenFlow网络不安全,发出告警信息;其中,告警信息包括:对应的安全策略和相关的流表操作。
若不冲突,则OpenFlow网络安全。
需要说明的是,本发明实施例可以通过浏览器可视化显示OpenFlow网络中的设备信息和链路连接关系,并进行安全策略的增加、删除、修改、启用等操作。
参见图4,本发明实施例提供的OpenFlow网络安全检测系统,包括:
数据采集模块100,用于采集OpenFlow数据包;
在本实施例中,数据采集模块100,具体用于将HUB集线器或者交换机镜像端口部署在OpenFlow网络的关键节点和路径处,通过数据包标识码的优先级重点捕获与TCP/SSL连接相关的数据包和OpenFlow协议的数据包。其中,与TCP/SSL连接相关的数据包,包括:OpenFlow控制器下发流表的数据包、控制器查询数据包、交换机上传转发状态的数据包。OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;
网络连接建立模块200,用于建立OpenFlow网络连接;
在本实施例中,网络连接建立模块200,具体用于将由源IP地址、源端口号、目的IP地址和目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或OpenFlow数据包的FIN位为1,则表示对应的会话连接断开,则将该会话从哈希值数据库中删除。具体地,先为每个会话建立对应的定时器,再将时间阈值内没有新的数据包达到的会话从哈希值数据库中删除。
数据解析模块300,用于在OpenFlow网络外,解析OpenFlow数据包,提取网络中交换机的配置和状态信息;其中,交换机的配置和状态信息,包括:控制器下发的转发规则流表、交换机端口状态、链路信息。
链路获取模块400,用于在OpenFlow网络外,根据OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
在本实施例中,链路获取模块400,包括:
第一链路获取单元,用于在OpenFlow网络外,根据输入标签判断OpenFlow数据包是否是LLDP协议的数据包;
若是,则从OpenFlow数据包中获取OpenFlow网络中各交换机的ID和端口号,得到OpenFlow网络中各交换机之间的链路关系。
进一步地,第一链路获取单元,具体用于在OpenFlow网络外,对捕获的Packet_In消息,根据输入标签判断其是否是LLDP协议的数据包;
若是,则根据Packet_In和LLDP的内容提取对应相连的两个交换机的ID和端口号,再判断本地或预设的链路数据库中是否已有该链路的信息;
如果有,则更新链路关系和发现时间;
如果没有,则添加该链路和发现时间。
若不是,则根据数据包的流表信息进行转发。
第二链路获取单元,用于在OpenFlow网络外,从OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
进一步地,第二链路获取单元,具体用于在OpenFlow网络外,从获取的Packet_In消息中提取该消息中的交换机ID和对应端口号,根据预设的OpenFlow网络中的交换机的链路关系,判断该消息是来自网络边缘的主机还是由网络内部的交换机上传到控制器的。对来自网络边缘的主机的数据包,根据Packet_In中携带的MAC层数据帧,可以获取主机的MAC地址和IP地址等信息,而Packet_In消息中的交换机ID和端口号则对应主机的接入地址。
模型建立模块500,用于在OpenFlow网络外,根据链路关系建立网络转发模型;
在本实施例中,模型建立模块500,具体用于在OpenFlow网络外,根据得到的OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系建立网络转发图或网络转发模型;
安全检测模块600,用于在OpenFlow网络外,当监测到控制器对交换机的流表的操作(如Flow-Mod等流表操作)时,更新网络转发模型,判断更新流表后的网络转发模型中是否存在违反安全策略的情况。具体地,将网络转发模型与预设的安全策略进行比较;其中,安全策略可以使用接入控制列表表示。
若比较匹配,则OpenFlow网络安全;
若比较不匹配,则OpenFlow网络不安全。
在本实施例中,安全检测模块600,具体用于在OpenFlow网络外,将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID(如IP地址等)表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与预设的安全策略相冲突,发现可疑的行为;
若冲突,则OpenFlow网络不安全,发出告警信息;其中,告警信息包括:对应的安全策略和相关的流表操作。
若不冲突,则OpenFlow网络安全。
需要说明的是,本发明实施例可以通过浏览器可视化显示OpenFlow网络中的设备信息和链路连接关系,并进行安全策略的增加、删除、修改、启用等操作。
本发明实施例提供的OpenFlow网络安全检测方法及系统,通过采集OpenFlow数据包,并在OpenFlow网络外,根据采集到的OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系,并建立网络转发模型,将网络转发模型与预设的安全策略进行比较,得出结果,实现了对OpenFlow网络的安全检测,提高了OpenFlow网络的安全性。此外,由于本发明实施例对链路关系的获取、网络转发模型的建立以及安全判断都是在OpenFlow网络外进行的,因而本发明实施例可以作为可信的第三方系统接入OpenFlow网络,不依赖于网络中的设备对网络进行安全检测,实现了独立的安全监控功能,具有更广泛的适用性和扩展。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种OpenFlow网络安全检测方法,其特征在于,包括:
采集OpenFlow数据包;
在OpenFlow网络外,根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
在OpenFlow网络外,根据所述链路关系建立网络转发模型;
在OpenFlow网络外,将所述网络转发模型与预设的安全策略进行比较;
若比较匹配,则所述OpenFlow网络安全;
若比较不匹配,则所述OpenFlow网络不安全。
2.如权利要求1所述的OpenFlow网络安全检测方法,其特征在于,所述根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系,包括:
判断所述OpenFlow数据包是否是LLDP协议的数据包;
若是,则从所述OpenFlow数据包中获取所述OpenFlow网络中各交换机的ID和端口号,得到所述OpenFlow网络中各交换机之间的链路关系。
3.如权利要求1所述的OpenFlow网络安全检测方法,其特征在于,所述根据所述OpenFlow数据包得到OpenFlow网络外的主机的链路关系,包括:
从所述OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断所述OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若所述OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据所述OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到所述网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
4.如权利要求1所述的OpenFlow网络安全检测方法,其特征在于,所述将所述网络转发模型与预设的安全策略进行比较;若比较匹配,则所述OpenFlow网络安全;若比较不匹配,则所述OpenFlow网络不安全,包括:
将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与所述预设的安全策略相冲突;
若冲突,则所述OpenFlow网络不安全;
若不冲突,则所述OpenFlow网络安全。
5.如权利要求1-4中任一项所述的OpenFlow网络安全检测方法,其特征在于,还包括:建立OpenFlow网络连接;所述OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;所述建立OpenFlow网络连接,包括:
将由所述源IP地址、所述源端口号、所述目的IP地址和所述目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据所述四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或所述OpenFlow数据包的FIN位为1,则将所述会话从所述哈希值数据库中删除。
6.一种OpenFlow网络安全检测系统,其特征在于,包括:
数据采集模块,用于采集OpenFlow数据包;
链路获取模块,用于在OpenFlow网络外,根据所述OpenFlow数据包得到OpenFlow网络中各交换机之间的链路关系和OpenFlow网络外的主机的链路关系;
模型建立模块,用于在OpenFlow网络外,根据所述链路关系建立网络转发模型;
安全检测模块,用于在OpenFlow网络外,将所述网络转发模型与预设的安全策略进行比较;
若比较匹配,则所述OpenFlow网络安全;
若比较不匹配,则所述OpenFlow网络不安全。
7.如权利要求6所述的OpenFlow网络安全检测系统,其特征在于,所述链路获取模块,包括:第一链路获取单元,用于在所述OpenFlow网络外,判断所述OpenFlow数据包是否是LLDP协议的数据包;
若是,则从所述OpenFlow数据包中获取所述OpenFlow网络中各交换机的ID和端口号,得到所述OpenFlow网络中各交换机之间的链路关系。
8.如权利要求6所述的OpenFlow网络安全检测系统,其特征在于,所述链路获取模块,包括:第二链路获取单元,用于在所述OpenFlow网络外,从所述OpenFlow数据包中获取各网络设备的ID和端口号;
根据预设的OpenFlow网络中的交换机的链路关系,判断所述OpenFlow数据包是由OpenFlow网络中的交换机还是由OpenFlow网络外的网络设备发出的;
若所述OpenFlow数据包是由OpenFlow网络外的网络设备发出的,根据所述OpenFlow数据包中携带的MAC层数据帧,获取网络设备的MAC地址和IP地址,并得到所述网络设备的接入地址,从而得到OpenFlow网络外的主机的链路关系。
9.如权利要求6所述的OpenFlow网络安全检测系统,其特征在于,所述安全检测模块,具体用于在所述OpenFlow网络外,将OpenFlow网络中的交换机的每条流表项用二叉决策图表示,结合设备ID表示数据包在网络中的转发状态,使用计算树逻辑CTL进行符号模型检测,检测网络端到端的可达性,并判断是否与所述预设的安全策略相冲突;
若冲突,则所述OpenFlow网络不安全;
若不冲突,则所述OpenFlow网络安全。
10.如权利要求6-9中任一项所述的OpenFlow网络安全检测系统,其特征在于,还包括:网络连接建立模块,用于建立OpenFlow网络连接;所述OpenFlow数据包,包括:源IP地址、源端口号、目的IP地址和目的端口号;所述网络连接建立模块,具体用于将由所述源IP地址、所述源端口号、所述目的IP地址和所述目的端口号组成的四元组标识一个会话连接;
对新获取的OpenFlow数据包,根据所述四元组计算哈希值,并在哈希值数据库中进行查询,将哈希值相等的OpenFlow数据包归为同一个会话;
若在时间阈值内,没有收到属于一个会话的OpenFlow数据包或所述OpenFlow数据包的FIN位为1,则将所述会话从所述哈希值数据库中删除。
CN201410837216.3A 2014-12-30 2014-12-30 一种OpenFlow网络安全检测方法及系统 Expired - Fee Related CN104579832B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410837216.3A CN104579832B (zh) 2014-12-30 2014-12-30 一种OpenFlow网络安全检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410837216.3A CN104579832B (zh) 2014-12-30 2014-12-30 一种OpenFlow网络安全检测方法及系统

Publications (2)

Publication Number Publication Date
CN104579832A true CN104579832A (zh) 2015-04-29
CN104579832B CN104579832B (zh) 2018-07-24

Family

ID=53095096

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410837216.3A Expired - Fee Related CN104579832B (zh) 2014-12-30 2014-12-30 一种OpenFlow网络安全检测方法及系统

Country Status (1)

Country Link
CN (1) CN104579832B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612731A (zh) * 2017-09-19 2018-01-19 北京工业大学 一种基于软件定义可信的网络切片生成与可信恢复系统
CN109831428A (zh) * 2019-01-29 2019-05-31 内蒙古大学 Sdn网络攻击检测及防御的方法和装置
CN113076462A (zh) * 2021-03-25 2021-07-06 恒安嘉新(北京)科技股份公司 网络会话数据查询方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130316766A1 (en) * 2012-05-25 2013-11-28 Uros Oy Apparatus having at least one sim
CN103609070A (zh) * 2012-10-29 2014-02-26 华为技术有限公司 网络流量检测方法、系统、设备及控制器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130316766A1 (en) * 2012-05-25 2013-11-28 Uros Oy Apparatus having at least one sim
CN103609070A (zh) * 2012-10-29 2014-02-26 华为技术有限公司 网络流量检测方法、系统、设备及控制器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612731A (zh) * 2017-09-19 2018-01-19 北京工业大学 一种基于软件定义可信的网络切片生成与可信恢复系统
CN109831428A (zh) * 2019-01-29 2019-05-31 内蒙古大学 Sdn网络攻击检测及防御的方法和装置
CN109831428B (zh) * 2019-01-29 2021-04-20 内蒙古大学 Sdn网络攻击检测及防御的方法和装置
CN113076462A (zh) * 2021-03-25 2021-07-06 恒安嘉新(北京)科技股份公司 网络会话数据查询方法、装置、设备及介质
CN113076462B (zh) * 2021-03-25 2024-04-30 恒安嘉新(北京)科技股份公司 网络会话数据查询方法、装置、设备及介质

Also Published As

Publication number Publication date
CN104579832B (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
US11201882B2 (en) Detection of malicious network activity
KR101703446B1 (ko) DoS 공격의 탐지가 가능한 네트워크 및 이의 제어 방법과, 상기 네트워크에 포함되는 게이트웨이 및 관리 서버
CN104683333A (zh) 基于sdn的实现异常流量拦截的方法
CN103607399B (zh) 基于暗网的专用ip网络安全监测系统及方法
US9979740B2 (en) Data surveillance system
CN101589595B (zh) 用于潜在被污染端系统的牵制机制
US10354070B2 (en) Thread level access control to socket descriptors and end-to-end thread level policies for thread protection
KR101070614B1 (ko) 봇넷 정보를 이용한 악성 트래픽 격리 시스템과 봇넷 정보를 이용한 악성 트래픽 격리 방법
Aldabbas et al. A novel mechanism to handle address spoofing attacks in SDN based IoT
WO2014151591A2 (en) A device, a system and a related method for dynamic traffic mirroring and policy, and the determination of applications running on a network
CN112929200B (zh) 一种面向sdn多控制器的异常检测方法
KR20160006915A (ko) 사물인터넷 관리 방법 및 장치
CN104579832A (zh) 一种OpenFlow网络安全检测方法及系统
Monshizadeh et al. An adaptive detection and prevention architecture for unsafe traffic in SDN enabled mobile networks
US20230421466A1 (en) Generating network system maps based on network traffic
Amiri et al. Black hole attacks detection by invalid IP addresses in mobile ad hoc networks
Reddy et al. Software-defined networking with ddos attacks in cloud computing
KR20130007246A (ko) 시그널링 트래픽 관리 시스템 및 그 방법
Melnyk et al. Machine learning based network traffic classification approach for Internet of Things devices
CN106685923A (zh) 一种基于Linux网络防火墙的设计系统
WO2021158171A1 (en) System and method for detecting and identifying individual attack-stages in internet-of-things (iot) networks
Shehzadi et al. Detection of Unauthorized IoT Devices Using Machine Learning Techniques
CN105530098A (zh) 一种协议指纹自动提取方法及系统
KR101914831B1 (ko) 호스트 추적 서비스에 대한 공격을 방지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러
Garg et al. Current State and Challenges in Privacy of Software Defined Networks for the Internet of Things

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180724

Termination date: 20181230