首页> 中国专利> 一种基于蜜点的网络攻击动态欺骗防御系统

一种基于蜜点的网络攻击动态欺骗防御系统

摘要

本发明公开了一种基于蜜点的网络攻击动态欺骗防御系统,包括异常流量识别模块、管理模块、流量处理模块、网络节点学习模块、虚拟主机模块、动态转换模块、动态响应模块、攻击检测模块和数据包封装模块,本发明通过动态更改虚拟IP地址,让攻击者在扫描时获取到的IP地址出现变动,使得攻击者无法判断目标系统的具体情况,并且让访问到虚拟IP的流量导入预先布设好的蜜点系统中,让后续攻击链在蜜点系统中完成,能够有效的防止攻击者对目标系统的破坏攻击,同时收集攻击者的攻击技术用于后续分析。

著录项

  • 公开/公告号CN117220918A

    专利类型发明专利

  • 公开/公告日2023-12-12

    原文格式PDF

  • 申请/专利权人 广州大学;

    申请/专利号CN202311041254.3

  • 发明设计人

    申请日2023-08-17

  • 分类号H04L9/40;

  • 代理机构广州高航知识产权代理有限公司;

  • 代理人张宣布

  • 地址 510006 广东省广州市大学城外环西路230号

  • 入库时间 2024-04-18 19:58:30

说明书

技术领域

本发明涉及网络安全防御的技术领域,具体涉及一种基于蜜点的网络攻击动态欺骗防御系统。

背景技术

在现有的网络安全防御体系中,应对网络攻击主要是通过综合采用防火墙、入侵检测、主机监控、身份认证、漏洞修补等多种手段结合的防御体系,阻挡或隔绝外界入侵,这种静态分层的深度防御体系基于先验知识,在面对已知攻击时,具有反应迅速、防护有效的优点,但无法应对未知漏洞攻击,而且攻击者一旦发现了一个可以攻击的入口,就会通过这个入口继续深入的攻击整个网络系统,而防御者如果未能发现这种情况时,便会给网络系统造成未知的损失。因此为了应对这种网络攻防不对称的情况,防御者通过主动防御技术来应对,典型的技术便是蜜罐技术,通过在网络系统中部署蜜罐系统,从而诱捕攻击者。蜜罐技术通过吸引、诱骗攻击者,研究学习攻击者的攻击目的和攻击手段,从而延缓乃至阻止攻击破坏行为的发生,有效保护真实服务资源。

蜜罐技术的本质在于引诱、欺骗,其价值在于被攻击,通过部署吸引敌手攻击的潜在目标,如漏洞主机、价值信息、请求服务等,吸引攻击者并推测攻击意图、攻击手段等信息。但是随着高级攻击者如APT攻击者的出现,可以很容易识别出蜜罐,从而导致蜜罐失去了作用,无法诱捕到高级攻击者,甚至可能被攻击者找到蜜罐系统本身存在的漏洞,成为攻击者进入内部网络系统的跳板,而且如今蜜罐技术无法诱捕高级攻击者或缺乏主动吸引攻击者的设计缺陷。

发明内容

因此为了解决蜜罐技术无法诱捕高级攻击者的缺陷,本发明提出了一种基于蜜点的网络攻击动态欺骗防御技术,通过动态更改虚拟主机IP地址,让攻击者在扫描时获取到的IP地址出现变动,使得攻击者无法获得目标系统的具体情况,并且让访问到虚拟IP的流量导入预先布设好的蜜点系统中,让后续攻击链在蜜点系统中完成,收集攻击者信息。通过采用动态欺骗的攻击诱捕技术,可以有效的防止攻击者对目标系统的破坏攻击,同时收集攻击者的攻击技术用于后续分析。

本发明克服现有技术的不足,提供了一种基于蜜点的网络攻击动态欺骗防御系统。本发明的目的通过以下的技术方案实现:

一种基于蜜点的网络攻击动态欺骗防御系统,包括异常流量识别模块;

所述异常流量识别模块与管理模块连接,所述管理模块还分别与网络节点学习模块、虚拟主机模块、动态转换模块和真实主机连接,所述网络节点学习模块与流量处理模块和虚拟主机模块连接,所述虚拟主机模块还分别与动态转换模块、攻击检测模块和动态相应模块连接,所述流量处理模块还分别与攻击检测模块和数据包封装模块连接,所述攻击检测模块还分别与动态响应模块和数据包封装模块连接,所述动态响应模块还与蜜点系统连接;

所述异常流量识别模块用于识别攻击者侦察网络的流量,若是攻击者侦察网络流量,则交由管理模块下发在线的虚拟主机列表给攻击者,若为正常用户流量,由管理模块将这部分流量转向主机业务;

所述虚拟主机模块用于根据网络节点学习模块提供的网络中未使用的IP地址和端口分布,随机选择一部分未使用的IP地址构建虚拟主机,并为每个虚拟主机配置一个虚拟IP地址,一个虚拟主机MAC地址、虚拟操作系统类型和版本和开放的端口;当IP地址从未使用状态变为已使用状态时,需要将其从生成的虚拟主机列表中移除;并根据动态转换模块发送的转换信息周期性地重新生成新的虚拟主机,生成动态的虚拟主机在线列表;

所述动态转换模块用于根据管理模块下发的动态转换间隔周期性通知虚拟主机模块重新生成新的虚拟主机IP地址列表和对应的漏洞类型。

优选的,所述管理模块用于管理信息的配置,为虚拟主机模块配置基本网元信息,所述基本网元信息包括虚拟IP地址范围、虚拟MAC地址范围、虚拟操作系统类型及版本、虚拟开放端口范围、响应数据包IP头中的OPTION字段和TTL字段、响应数据包中TCP头的窗口大小以及选项字段的类型和排列顺序。

优选的,所述流量处理模块用于处理双向网络通信数据包,匹配数据包的目的IP地址,若目的IP地址为网络节点学习模块使用的IP地址,则判断该数据包为主动检测目标网络在线主机情况的数据包,将进一步发送给网络节点学习模块学习目标网络当前已被使用的IP地址和端口分布,否则判断该数据包为攻击者的侦察扫描数据包,将进一步发送给攻击检测模块。

优选的,所述攻击检测模块用于实时检测流量处理模块发送的数据包,查询虚拟主机模块生成的虚拟主机列表,如果访问目标是虚拟主机,则发送给动态响应模块或重定向到蜜点系统,如果访问目标不是虚拟主机,则将此数据包丢弃。

优选的,所述网络节点学习模块用于获取网络中在线的真实主机的IP地址列表,用于虚拟主机模块剔除掉在线主机列表中的地址,以配置虚拟主机。

优选的,所述动态响应模块包括ARP响应子模块、ICMP响应子模块、TCP响应子模块和重定向子模块。

优选的,所述动态响应模块用于查询虚拟主机模块生成的虚拟主机,根据不同协议类型构造虚拟响应数据包对攻击者侦察网络的流量进行回复,响应数据包经过二层封装后发送给流量处理模块,最终发送给攻击者;若攻击者在得到了上述正确的响应后,仍选择对其中的虚拟主机发起漏洞利用,则重定向子模块修改数据包的IP和MAC地址发送给蜜点系统,从而在蜜点系统中观察和记录攻击者后续的攻击行为。

优选的,所述数据封装模块用于将动态响应模块的响应数据包经过封装后发送给流量处理模块。

本发明提供的一种基于蜜点的网络攻击动态欺骗防御系统,与现有技术相比,还存在以下优点:

1、通过动态更改虚拟IP地址,让攻击者在扫描时获取到的IP地址出现变动,使得攻击者无法判断目标系统的具体情况,并且让访问到虚拟IP的流量导入预先布设好的蜜点系统中,让后续攻击链在蜜点系统中完成,收集攻击者信息。通过采用基于蜜点的网络攻击动态欺骗防御技术,可以有效的防止攻击者对目标系统的破坏攻击,同时收集攻击者的攻击技术用于后续分析。

2、利用本发明设计的攻击诱捕技术,无论攻击者如何以任何形式(包括已知和未知的网络侦察工具)对目标网络进行扫描侦察,都大概率会自动遇到虚拟主机。虚拟主机可以根据攻击者访问的不同自动响应攻击者,也可以自动将攻击流量引向蜜点,从而扩大蜜点的诱捕范围,可以充分利用蜜点技术,最大程度地诱捕到攻击者甚至是APT攻击者。

3、本发明通过新增了异常流量识别模块,有别于传统的诱捕攻击者方案,倾向于主动出击,为攻击者设置更加主动的陷阱,吸引攻击者进入蜜点系统,再进一步收集攻击者的信息;通过新增了虚拟主机模块,不直接使用实际的主机来当吸引攻击者的诱饵,可以有效的减少系统的资源开销;通过新增了动态转换模块,改变虚拟主机的IP地址,有效的避免攻击者对虚拟主机进行标记,有效的减少攻击者的先验知识,从而增加攻击者攻击系统的难度。

附图说明

利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。

图1是本发明一种基于蜜点的网络攻击动态欺骗防御系统的框架图;

图2是本发明异常流量识别模块流程图;

图3是本发明网络节点学习模块流程图;

图4是本发明ARP响应子模块、ICMP响应子模块和TCP响应子模块的处理数据包的流程图。

具体实施方式

以下结合具体实施例对一种基于蜜点的网络攻击动态欺骗防御系统作进一步的详细描述,这些实施例只用于比较和解释的目的,本发明不限定于这些实施例中。

本发明的一种基于蜜点的网络攻击动态欺骗防御系统主要由几个功能模块组成,由欺骗管理系统识别流经的流量数据包是攻击者侦察网络的流量或是正常用户流量,若为攻击者流量则需要经过其他功能模块的处理,并将其最终引入蜜点系统中完成完整的攻击链,若为正常用户流量则直接导向真实主机,具体如下:

在一实施例中,如图1所示,提供了一种基于蜜点的网络攻击动态欺骗防御系统,包括异常流量识别模块;

所述异常流量识别模块与管理模块连接,所述管理模块还分别与网络节点学习模块、虚拟主机模块、动态转换模块和真实主机连接,所述网络节点学习模块与流量处理模块和虚拟主机模块连接,所述虚拟主机模块还分别与动态转换模块、攻击检测模块和动态相应模块连接,所述流量处理模块还分别与攻击检测模块和数据包封装模块连接,所述攻击检测模块还分别与动态响应模块和数据包封装模块连接,所述动态响应模块还与蜜点系统连接;

此部分(异常流量识别模块)主要是为了对攻击者和正常用户做区分,对尝试连接系统的数据包进行数据报的拆解。在此处声明一下,本发明涉及的攻击指的是攻击者的扫描侦察攻击。攻击者通过扫描网络系统发现存在漏洞的IP地址和端口,并对其进行利用。因此,为了从一开始就将攻击者引诱到防御者设计好的蜜点系统中,需要在侦察扫描环节即对攻击者做出相应的措施。

如图2所示,为异常流量识别模块的大致流程图,将流量数据包交由异常流量识别模块进行处理,判断其为正常用户连接流量还是攻击者扫描侦察请求操作的流量。

本发明中判断一个数据包是否是扫描数据包其具体的实现方式如下:

①分析数据包的源IP地址,如果该地址在短时间内向同一目标端口发送大量数据包,则判定为扫描数据包。

②检查数据包的协议类型和协议字段,如果这些信息与正常的流量不匹配,例如TCP SYN包没有后续的ACK包,则判定为扫描数据包。

③检查数据包的时间戳,如果数据包的时间戳在短时间内与其他数据包的时间戳存在规律性,则判定为扫描数据包。

④分析数据包的payload内容,查找是否存在扫描工具的特征,例如Nmap、Masscan等工具的特征。使用IForest等孤立森林算法,对数据包进行分类或聚类,从而找出与正常情况差异较大的数据包,这些数据包判定为扫描数据包。

所述异常流量识别模块用于识别攻击者侦察网络的流量,若是攻击者侦察网络流量,则交由管理模块下发在线的虚拟主机列表给攻击者,若为正常用户流量,由管理模块将这部分流量转向主机业务;

所述虚拟主机模块用于根据网络节点学习模块提供的网络中未使用的IP地址和端口分布,随机选择一部分未使用的IP地址构建虚拟主机,并为每个虚拟主机配置一个虚拟IP地址,一个虚拟主机MAC地址、虚拟操作系统类型和版本和开放的端口;当IP地址从未使用状态变为已使用状态时,需要将其从生成的虚拟主机列表中移除;并根据动态转换模块发送的转换信息周期性地重新生成新的虚拟主机,生成动态的虚拟主机在线列表;

所述动态转换模块用于根据管理模块下发的动态转换间隔周期性通知虚拟主机模块重新生成新的虚拟主机IP地址列表和对应的漏洞类型。

优选的,所述管理模块用于管理信息的配置,为虚拟主机模块配置基本网元信息(标识信息),所述基本网元信息包括虚拟IP地址范围、虚拟MAC地址范围、虚拟操作系统类型及版本、虚拟开放端口范围、响应数据包IP头中的OPTION字段和TTL字段、响应数据包中TCP头的窗口大小以及选项字段的类型和排列顺序。

其中管理模块主要是为了管理整个系统的信息配置,主要涉及对虚拟主机的处理。需要给虚拟主机配置基本网元信息(标识信息),包括虚拟IP地址范围、虚拟MAC地址范围、虚拟操作系统类型及版本、虚拟开放端口范围等。整个虚拟主机的设置通过SDN技术来完成。

虚拟IP地址范围:虚拟主机的IP地址主要选用的是系统中未使用的IP地址,由于一开始系统的正常运行需要开启一部分主机,这一部分主机需要占用IP地址,而剩余未被使用的IP地址则可以用来作为虚拟主机的IP地址资源池。而虚拟主机的IP地址资源池则通过网络节点学习模块进行保存管理。

虚拟MAC地址范围:对于MAC地址,可以直接通过指令进行修改,在Windows中,可以使用命令行工具“ipconfig”和“netsh”来修改MAC地址,例如:“netsh interface setinterface name="Ethernet"newmac=XX-XX-XX-XX-XX-XX”;在Linux中,可以使用命令行工具“ifconfig”和“ip”来修改MAC地址,例如:“ifconfig eth0 hw etherXX:XX:XX:XX:XX:XX”;在macOS中,可以使用命令行工具“ifconfig”来修改MAC地址,例如:“sudo ifconfigen0 ether XX:XX:XX:XX:XX:XX”。

优选的,所述流量处理模块用于处理双向网络通信数据包,匹配数据包的目的IP地址,若目的IP地址为网络节点学习模块使用的IP地址,则判断该数据包为主动检测目标网络在线主机情况的数据包,将进一步发送给网络节点学习模块学习目标网络当前已被使用的IP地址和端口分布,否则判断该数据包为攻击者的侦察扫描数据包,将进一步发送给攻击检测模块。

优选的,所述攻击检测模块用于实时检测流量处理模块发送的数据包,查询虚拟主机模块生成的虚拟主机列表,如果访问目标是虚拟主机,则发送给动态响应模块或重定向到蜜点系统,如果访问目标不是虚拟主机,则将此数据包丢弃。

优选的,所述网络节点学习模块用于获取网络中在线的真实主机的IP地址列表,用于虚拟主机模块剔除掉在线主机列表中的地址,以配置虚拟主机。

其中网络节点学习模块包括主动检测子模块和流量学习子模块。根据管理模块下发的配置信息,由主动检测子模块周期性发送ARP、ICMP、TCP、UDP等检测数据包,对目标网络进行检测;流量学习子模块接收流量处理模块发送的检测响应数据包,提取响应数据包中的MAC地址、IP地址和端口等数据,构建网络节点在线列表发送给虚拟主机模块。网络节点学习模块主要是为了获取网络中在线真实主机的IP地址列表,便于虚拟主机模块剔除掉在线主机列表中的地址从而去配置虚拟主机。如图3所示,为网络节点学习模块的流程图。

优选的,所述动态响应模块包括ARP响应子模块、ICMP响应子模块、TCP响应子模块和重定向子模块。

优选的,所述动态响应模块用于查询虚拟主机模块生成的虚拟主机,根据不同协议类型构造虚拟响应数据包对攻击者侦察网络的流量进行回复,响应数据包经过二层封装后发送给流量处理模块,最终发送给攻击者;若攻击者在得到了上述正确的响应后,仍选择对其中的虚拟主机发起漏洞利用,则重定向子模块修改数据包的IP和MAC地址发送给蜜点系统,从而在蜜点系统中观察和记录攻击者后续的攻击行为。

其中动态响应模块通过主动构造ARP响应、ICMP响应和TCP响应数据包来回应攻击者的扫描侦察请求,分为四个子模块,ARP响应子模块、ICMP响应子模块、TCP响应子模块和重定向子模块。

由于攻击者的扫描侦察数据包通常包含以下几种类型:分别是ARP请求数据包(通常包含攻击者所在网络中的IP地址和MAC地址以及目标主机的IP地址);ICMP ECHO请求数据包(通常包含攻击者所在网络中的IP地址和目标主机的IP地址);TCP SYN请求数据包(通常包含攻击者所在网络中的IP地址和端口号以及目标主机的IP地址和端口号)。

因此为了主动应对攻击者的扫描侦察数据包,本发明增加了ARP响应、ICMP响应和TCP响应三个子模块去响应攻击者的扫描请求,其流程图如图4所示。当接收到攻击者扫描数据包时,管理模块对数据包的请求类型进行判断,若为ARP请求数据包,则将数据包交给ARP响应子模块处理,构造符合要求的ARP响应数据包发送给流量处理模块,最终作为回复包发送给攻击者;若为ICMP ECHO请求包,则将数据包交给ICMP响应子模块处理,构造符合要求的ICMP响应数据包发送给流量处理模块,最终作为回复包发送给攻击者;若为TCP SYN请求数据包,则将数据包交给TCP响应子模块进行处理,构造符合要求的TCP响应数据包发送给流量处理模块,最终作为回复包发送给攻击者。

若攻击者在得到了回复的响应数据包之后,仍选择对其中的虚拟主机进行进一步的连接,则通过重定向子模块修改数据包的目的IP和目的MAC地址将其改为蜜点系统的IP和MAC地址,从而让攻击者与蜜点系统进行连接,最终在蜜点系统中观察和记录攻击者后续的攻击行为。

最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号