基于SDN构建动态网络的欺骗防御方法和系统与流程

文档序号:16402493发布日期:2018-12-25 20:12阅读:231来源:国知局
基于SDN构建动态网络的欺骗防御方法和系统与流程

本发明涉及防御网络攻击技术领域,尤其涉及一种基于sdn构建动态网络的欺骗防御方法和系统。

背景技术

九十年代蜜罐的概念被提出,最开始fredcohen,nielsprovos等安全研究者使用低交互蜜罐来欺骗攻击者,由于容易被识破,后来,大部分安全研究者都使用真实系统构建蜜罐网络,蜜罐技术发展到现在,独立的蜜罐网络已经比较成熟,但仍存在一些比较明显的缺陷,如密网系统仍是独立静态的,难以进行主动防御,只能被动的等待攻击者进入蜜罐网络,然后捕捉攻击行为。传统的ips产品存在大量的误报,当发现攻击之后,只能选择阻断攻击来止损,无法获取更多的攻击者信息,无法给予攻击者更多的威慑。并且,云计算盛行的今天,也鲜有蜜罐网络技术与云计算结合的安全技术,一些在云上的蜜罐网络也只是独立的静态的等待攻击者的攻击,无法做到动态构建,主动诱导。



技术实现要素:

本发明针对现有技术中的缺点,提供了一种基于sdn构建动态网络的欺骗防御方法和系统。

为了解决上述技术问题,本发明通过下述技术方案得以解决:

一种基于sdn构建动态网络的欺骗防御方法,包括以下步骤:

采用旁路模式监控云平台的所有流量数据,从中获取六元组信息数据,并存储至流量数据库中;

根据相关正则表达式匹配策略,建立恶意特征库和威胁情报库;

根据威胁情报库依次对流量数据库的每个六元组信息数据进行相似度匹配,判断六元组信息数据是否存在携带威胁情报,若是,则将所述六元组信息数据初步识别为攻击者;若不是,则与恶意特征库继续匹配,判断六元组信息数据是否匹配,若匹配,则将所述六元组信息数据初步识别为攻击者;

记录所述攻击者的相关信息,所述攻击者的相关信息包括攻击者服务器的ip、攻击者服务器的端口、被攻击服务器的ip、被攻击服务器的端口、网络协议类型和数据内容;

根据所述攻击者的相关信息调用sdn接口,将从攻击者服务器的ip到被攻击者服务器的ip和相应端口的流量数据转发到蜜罐的相同端口上;

若所述蜜罐捕捉到攻击者的流量数据,则将攻击者服务器ip地址定义为高危ip地址并对所述高危ip地址进行拦截封堵。

作为一种可实施方式,所述六元组信息数据包括源ip、源端口、目标ip、目标端口、协议以及数据内容;

所述恶意特征库中包含至少两条正则表达式匹配策略,所述威胁情报库中包含至少两条恶意ip。

作为一种可实施方式,所述根据威胁情报库依次对流量数据库的每个六元组信息数据进行相似度匹配,判断六元组信息数据是否存在携带威胁情报,若是,则将所述六元组信息数据初步识别为攻击者;若不是,则与恶意特征库继续匹配,判断六元组信息数据是否匹配,若匹配,则将所述六元组信息数据初步识别为攻击者,具体是指:将威胁情报库中的ip依次轮询取出与所述六元组中源ip进行对比,若两者相同,则认为是攻击者;将恶意特征库中的正则表达式匹配策略依次轮询取出与六元组中数据内容进行匹配,若匹配成功,则识别为攻击者。

作为一种可实施方式,所述判断六元组信息数据是否存在恶意特征或携带威胁情报,还包括,若六元组信息数据不存在恶意特征或携带威胁情报,则统计选定时间间隔内访问目标ip的目标端口的六元组信息数据并判断是否大于预设数值,若大于,则将所述六元组信息数据初步识别为攻击者,若不大于,则认定为非攻击者。

作为一种可实施方式,所述时间间隔为25s-30s;所述预设数值为8-12。

一种基于sdn构建动态网络的欺骗防御系统,包括获取模块、建立模块、判断模块、记录模块、调用模块和拦截模块;

所述获取模块,用于采用旁路模式监控云平台的所有流量数据,从中获取六元组信息数据,并存储至流量数据库中;

所述建立模块,用于根据相关正则表达式匹配策略,建立恶意特征库和威胁情报库;

所述判断模块,用于根据威胁情报库依次对流量数据库的每个六元组信息数据进行相似度匹配,判断六元组信息数据是否存在携带威胁情报,若是,则将所述六元组信息数据初步识别为攻击者;若不是,则与恶意特征库继续匹配,判断六元组信息数据是否匹配,若匹配,则将所述六元组信息数据初步识别为攻击者;

所述记录模块,用于记录所述攻击者的相关信息,所述攻击者的相关信息包括攻击者服务器的ip、攻击者服务器的端口、被攻击服务器的ip、被攻击服务器的端口、网络协议类型和数据内容;

所述调用模块,用于根据所述攻击者的相关信息调用sdn接口,将从攻击者服务器的ip到被攻击者服务器的ip和相应端口的流量数据转发到蜜罐的相同端口上;

所述拦截模块,用于若所述蜜罐捕捉到攻击者的流量数据,则将攻击者服务器ip地址定义为高危ip地址并对所述高危ip地址进行拦截封堵。

作为一种可实施方式,所述获取模块被设置为:所述六元组信息数据包括源ip、源端口、目标ip、目标端口、协议以及数据内容;

所述建立模块被设置为:所述恶意特征库中包含至少两条正则表达式匹配策略,所述威胁情报库中包含至少两条恶意ip。

作为一种可实施方式,所述判断模块被设置为:将威胁情报库中的ip依次轮询取出与所述六元组中源ip进行对比,若两者相同,则认为是攻击者;将恶意特征库中的正则表达式匹配策略依次轮询取出与六元组中数据内容进行匹配,若匹配成功,则识别为攻击者。

作为一种可实施方式,所述判断模块还用于若六元组信息数据不存在恶意特征或携带威胁情报,则统计选定时间间隔内访问目标ip的目标端口的六元组信息数据并判断是否大于预设数值,若大于,则将所述六元组信息数据初步识别为攻击者,若不大于,则认定为非攻击者。

作为一种可实施方式,所述判断模块被设置为:所述时间间隔为25s-30s,所述预设数值为8-12。

本发明由于采用了以上技术方案,具有显著的技术效果:

本发明将蜜罐网络的分配调度与sdn技术结合,根据攻击者的行为,动态调整攻击者流量走向,将静态的网络动态化;蜜罐网络对高危ip地址进行拦截封堵,让攻击者再也无法得到攻击目标的端口、服务或系统等真实的信息,从而主动诱导攻击者针对蜜罐发起攻击,捕获攻击者行为,隔离攻击。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的整体流程示意图;

图2是本发明的整体结构示意图;

图3是本发明的详细流程图。

具体实施方式

下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。

实施例1:

一种基于sdn构建动态网络的欺骗防御方法,如图1所示,包括以下步骤:

s100、采用旁路模式监控云平台的所有流量数据,从中获取六元组信息数据,并存储至流量数据库中;

s200、根据相关正则表达式匹配策略,建立恶意特征库和威胁情报库;

s300、根据威胁情报库依次对流量数据库的每个六元组信息数据进行相似度匹配,判断六元组信息数据是否存在携带威胁情报,若是,则将所述六元组信息数据初步识别为攻击者;若不是,则与恶意特征库继续匹配,判断六元组信息数据是否匹配,若匹配,则将所述六元组信息数据初步识别为攻击者;

s400、记录所述攻击者的相关信息,所述攻击者的相关信息包括攻击者服务器的ip、攻击者服务器的端口、被攻击服务器的ip、被攻击服务器的端口、网络协议类型和数据内容;

s500、根据所述攻击者的相关信息调用sdn接口,将从攻击者服务器的ip到被攻击者服务器的ip和相应端口的流量数据转发到蜜罐的相同端口上;

s600、若所述蜜罐捕捉到攻击者的流量数据,则将攻击者服务器ip地址定义为高危ip地址并对所述高危ip地址进行拦截封堵。

更进一步地,所述六元组信息数据包括源ip、源端口、目标ip、目标端口、协议以及数据内容。

在此,所述攻击者的相关信息和六元组信息数据的内容是相同的,只是当六元组信息数据被初步识别为初步攻击者后,六元组信息数据就被称作攻击者的相关信息,并且,其包含的内容也换了一种称呼:即攻击者服务器的ip、攻击者服务器的端口、被攻击服务器的ip、被攻击服务器的端口、网络协议类型和数据内容。

在步骤s300中,依次对流量数据库的每个六元组信息数据进行相似度匹配具体过程为:流量数据库中存在很多六元组信息数据,而建立的个恶意特征库,这个里面保存的是多个正则表达式策略,威胁情报库里面包含的是恶意ip或恶意url,每个流量数据都可以提取出来一个六元组信息数据,把每个六元组信息数据的的数据内容与恶意特征库进行中的每个正则表达式策略,如果匹配上了,则认为该流量数据是恶意的,如果没匹配上,则将六元组信息数据中的源ip与威胁情报库中的恶意ip进行匹配,如果匹配上了,则认为是该流量数据是恶意数据。

在步骤s300中,所述判断六元组信息数据是否存在恶意特征或携带威胁情报还包括,若六元组信息数据不存在恶意特征或携带威胁情报,则统计选定时间间隔内访问目标ip的目标端口的六元组信息数据并判断是否大于预设数值,若大于,则将所述六元组信息数据初步识别为攻击者,若不大于,则认定为非攻击者。也就是说,如果由于误差或者其他原因,如果没有识别出攻击者,那么,有可能未被识别的六元组信息数据还是攻击者,所以,需要进一步的进行判断,就是通过在选定的时间间隔内通过目标端口的六元组信息数据六元组信息数据的访问量与预设数值进行比较,加入访问的特别频繁,比预设数值大,那么,就有可能是攻击者,就会将其初步识别为攻击者。经多个环境实测,时间间隔为25s-30s,预设数值为8-12之间,识别效果最佳。

在步骤500中,具体操作可参见以下实例:

假设六元组信息数据中,攻击者服务器的ip为47.90.44.133,被攻击服务器的ip为101.32.14.55,其中蜜罐的ip为192.168.10.14,攻击者对被攻击服务器的ip(101.32.14.55)发起扫描行为,流量监控平台识别到扫描行为后,攻击者服务器的ip(47.90.44.133)连接被攻击服务器的ip(101.32.14.55)的2222端口的流量转发到蜜罐(192.168.10.14)的22端口上,则在攻击者的视角,被攻击服务器的ip(101.32.14.55)的2222端口为一个ssh服务,存在漏洞可被攻击,实际上攻击者的行为被隔离到了蜜罐中。

在步骤s600中,所述拦截封堵一般为:规定时间内禁止该恶意ip访问云平台内的某个特定主机;规定时间内禁止该恶意ip访问云平台内所有主机;永久禁止该恶意ip访问云平台内某个特定主机;永久禁止该恶意ip访问云平台内所有主机,这样,才能真正的实现防御。详细的流程图可参见附图3。

本发明的方法是将蜜罐网络的分配调度与sdn技术结合,根据攻击者的行为,动态调整攻击者流量走向,将静态的网络动态化;蜜罐网络对高危ip地址进行拦截封堵,让攻击者再也无法得到攻击目标的端口、服务或系统等真实的信息,从而主动诱导攻击者针对蜜罐发起攻击,捕获攻击者行为,隔离攻击。

实施例2:

一种基于sdn构建动态网络的欺骗防御系统,如图2所示,包括获取模块100、建立模块200、判断模块300、记录模块400、调用模块500和拦截模块600;

所述获取模块100,用于采用旁路模式监控云平台的所有流量数据,从中获取六元组信息数据,并存储至流量数据库中;

所述建立模块200,用于根据相关正则表达式匹配策略,建立恶意特征库和威胁情报库;

所述判断模块300,用于根据威胁情报库依次对流量数据库的每个六元组信息数据进行相似度匹配,判断六元组信息数据是否存在携带威胁情报,若是,则将所述六元组信息数据初步识别为攻击者;若不是,则与恶意特征库继续匹配,判断六元组信息数据是否匹配,若匹配,则将所述六元组信息数据初步识别为攻击者;

所述记录模块400,用于记录所述攻击者的相关信息,所述攻击者的相关信息包括攻击者服务器的ip、攻击者服务器的端口、被攻击服务器的ip、被攻击服务器的端口、网络协议类型和数据内容;

所述调用模块500,用于根据所述攻击者的相关信息调用sdn接口,将从攻击者服务器的ip到被攻击者服务器的ip和相应端口的流量数据转发到蜜罐的相同端口上;

所述拦截模块600,用于若所述蜜罐捕捉到攻击者的流量数据,则将攻击者服务器ip地址定义为高危ip地址并对所述高危ip地址进行拦截封堵。

所述获取模块100被设置为:所述六元组信息数据包括源ip、源端口、目标ip、目标端口、协议以及数据内容;

所述建立模块200被设置为:所述恶意特征库中包含至少两条正则表达式匹配策略,所述威胁情报库中包含至少两条恶意ip。

更进一步地,所述判断模块300被设置为:将威胁情报库中的ip依次轮询取出与所述六元组中源ip进行对比,若两者相同,则认为是攻击者;将恶意特征库中的正则表达式匹配策略依次轮询取出与六元组中数据内容进行匹配,若匹配成功,则识别为攻击者。若初步判断都不为攻击者后,所述判断模块300还用于若六元组信息数据不存在恶意特征或携带威胁情报,则统计选定时间间隔内访问目标ip的目标端口的六元组信息数据并判断是否大于预设数值,若大于,则将所述六元组信息数据初步识别为攻击者,若不大于,则认定为非攻击者。在判断的过程中,将时间间隔设置为25s-30s,将预设数值设置为8-12。

通过本发明的系统,也是将蜜罐网络的分配调度与sdn技术结合,根据攻击者的行为,动态调整攻击者流量走向,将静态的网络动态化;蜜罐网络对高危ip地址进行拦截封堵,让攻击者再也无法得到攻击目标的端口、服务或系统等真实的信息,从而主动诱导攻击者针对蜜罐发起攻击,捕获攻击者行为,隔离攻击。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

需要说明的是:

说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1