网络靶场实战演练场景的装备机休眠网络托管系统与方法与流程

文档序号:23175893发布日期:2020-12-04 14:06阅读:132来源:国知局
网络靶场实战演练场景的装备机休眠网络托管系统与方法与流程

本发明涉及一种网络靶场实战演练场景的装备机休眠网络托管系统与方法,属于网络技术领域。



背景技术:

网络靶场是指通过虚拟环境与真实设备相结合,模拟仿真出真实网络空间攻防作战环境,能够支撑作战能力研究和武器装备验证的试验平台。随着信息时代的不断发展,网络环境日益严峻,不断提出了搭建大规模网络环境进行实战演练的需求。

网络靶场实战演练场景的部署图如图1所示,网络靶场通过多个多种实体网络设备连接控制节点、计算节点、互联网,网络靶场通过虚拟化技术在计算节点构建演练场景的虚拟机及虚拟网络。网络靶场为所有作战小队队员生成虚拟机作为网络靶场操作机,所有作战小队的队员通过网络靶场控制节点的虚拟机接入管理模块远程控制操作机,作战小队队员通过操作机连接装备库内的装备机来使用网络装备,进行渗透、攻击、扫描等操作。

目前网络靶场实战演练场景的作战流程主要包括:网络靶场创建装备库,装备库内有若干对外提供服务的装备机;指挥中心指定作战任务,并将任务指派给相应的作战小队或作战队员;作战小队接收指派的作战任务,并在网络靶场中的计算节点创建任务专属操作机,所有针对当前任务的作战操作都在将该操作机上执行;作战小队队员主机连接操作机管理模块发起操作机连接请求;操作机管理模块认证作战小队队员身份及权限并通过远程控制协议连接操作机;作战小队队员通过操作机执行任务,连接装备库内装备机并使用装备;作战小队队员完成作战任务后,释放操作机。对于暂时不需要使用的装备机,运维管理员手动或通过运维系统对装备机进行休眠处理。进入休眠的装备机的网络配置将保留在控制节点上,创建新的虚拟机时将不占用保留的ip地址,当需要使用时重新恢复装备机,同时保证恢复后的装备机依旧采用原来的网络配置。现有网络靶场实战演练场景中装备机的运维存在如下问题:1、运维灵活性差。仅能从虚拟机创建流程避免ip被占用,虚拟机的二次配置依旧会导致休眠状态ip被占用,常用的采用ping命令判断ip占用情况的方法失效。2、对动态分配方式dhcp服务器方案支持不佳。采用动态分配方式的dhcp服务器,休眠虚拟机租约到期的ip被释放,被释放的ip容易被其他虚拟机占用。3、部分冷僻装备长期占用装备库资源,造成资源浪费。4、装备机无法灵活支持装备使用峰值的扩容处理。装备库运维人员需要提前预知特定装备的使用峰值并提前做好扩容准备,并使用峰值之后释放,灵活性太差,人工无法很好把控扩容减容的时机。



技术实现要素:

发明目的:针对上述现有技术存在的问题,本发明的目的在于提供一种网络靶场实战演练场景的装备机休眠网络托管系统与方法,以提高运维灵活性、降低资源浪费,提升装备库的运维效率。

技术方案:为实现上述发明目的,本发明采用如下技术方案:

一种网络靶场实战演练场景的装备机休眠网络托管系统,包括部署在网络靶场控制节点的装备机管理模块和装备机休眠网络托管模块;

所述装备机管理模块,用于休眠装备机或恢复装备机,并在装备机休眠时或恢复时通知装备机休眠网络托管模块;

所述装备机休眠网络托管模块,用于装备机休眠时,保存休眠状态装备机的网络配置记录,生成并下发虚拟交换机流表,将目标为休眠状态装备机的流量转向网络靶场控制节点;装备机从休眠状态恢复时,清理保存的网络配置记录,并删除虚拟交换机对应流表记录;以及用于获取协议报文流量,针对休眠状态装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文;以及定期向dhcp服务器发送休眠状态装备机的续约报文,保证休眠状态装备机的ip地址不过期。

进一步地,所述网络配置包括ip地址、mac地址、网关、子网掩码和dns服务器地址。

进一步地,装备机的休眠是关闭、挂起或冻结装备机使装备机进入非正常运行可恢复的状态。

进一步地,装备机休眠时,生成并下发的虚拟交换机流表包含匹配项和动作,所述匹配项设置为休眠状态装备机的mac地址及ip地址,动作设置为修改目标mac地址为网络靶场控制节点上装备机休眠网络托管模块监听虚拟网卡的mac地址。

进一步地,所述装备机休眠网络托管模块,在装备机进入休眠状态时、租约过去50%时、租约过去87.5%时、租约过去90%时、租约过去95%时向dhcp服务器发送dhcprequest续约报文。

进一步地,系统还包括部署在的连接所有装备机的虚拟交换机上的装备机调度模块;所述装备机调度模块用于维护装备机的状态并记录操作机对装备机的访问记录,在操作机访问的装备机处于休眠状态时,通知装备机管理模块恢复装备机,以及在装备机超过设定时间无操作机访问时,通知装备机管理模块休眠装备机。

进一步地,装备机的类型包括主装备机和次装备机,主装备机的ip地址对操作机开放,次装备机的ip地址不对操作机开放;所述装备机管理模块,只对主装备机进行休眠或恢复操作,对次装备机进行创建或释放操作;所述装备机休眠网络托管模块只在主装备机休眠时对主装备机进行网络托管;

所述装备机调度模块,包括调度子模块和ip映射管理子模块;

所述调度子模块,用于保存装备库中装备机的类型、ip地址、对应的主装备机ip地址、装备机的状态和装备资源使用率,以及根据ip映射管理子模块的调度请求,匹配并返回有容量的装备机的ip地址,在因主装备机休眠导致匹配失败时,请求装备机管理模块恢复主装备机,在主装备机正常但因容量不足匹配失败时,请求装备机管理模块创建次装备机;

所述ip映射管理子模块,用于保存操作机ip地址、主装备机ip地址、映射后装备机ip地址的映射关系,以及对应的最近一次有效报文转发时间;基于ip地址修改的方式完成主装备机和次装备机的负载转发,在操作机ip地址和主装备机ip地址的映射记录存在时,则直接进行ip地址修正,否则请求装备机调4度模块获取有容量的装备机的ip地址并增加映射记录,再进行ip地址修正;以及用于根据最近一次有效报文转发时间定期清理过期的ip映射关系,并对不存在ip映射关系的主装备机或次装备机,通知装备机管理模块休眠主装备机或释放次装备机。

一种网络靶场实战演练场景的装备机休眠网络托管方法,包括如下步骤:

(1)在装备机需要进行休眠处理时,休眠装备机,保存休眠状态装备机的网络配置记录,生成并下发虚拟交换机流表,将目标为休眠状态装备机的流量转向网络靶场控制节点;

(2)获取协议报文流量,针对休眠状态装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文;

(3)定期向dhcp服务器发送休眠状态装备机的续约报文,保证休眠状态装备机的ip地址不过期;

(4)装备机从休眠状态恢复时,清理保存的网络配置记录,并删除虚拟交换机对应流表记录。

进一步地,所述装备机的休眠或恢复处理的指令由运维管理员手动发出,或,根据维护装备机的状态和操作机对装备机的访问情况自动发出,在操作机访问的装备机处于休眠状态时,恢复所访问的装备机,在装备机超过设定时间无操作机访问时,休眠装备机。

进一步地,装备机的类型包括主装备机和次装备机,主装备机的ip地址对操作机开放,次装备机的ip地址不对操作机开放;只对主装备机进行休眠或恢复操作,对次装备机进行创建或释放操作,只在主装备机休眠时对主装备机进行网络托管;具体的判断主装备机休眠或恢复,以及次装备机创建或释放的方法包括:

(101)在接收到操作机请求报文时,判断是否存在操作机ip地址和主装备机ip地址的ip映射关系,若存在则进入步骤(102),否则进入步骤(103);

(102)根据ip映射记录进行ip地址修正,转发报文并更新映射记录中最后一次有效报文转发时间,进入步骤(104);

(103)根据主装备机ip地址判断是否存在对应的有容量的装备机,若主装备机休眠,则恢复主装备机,主装备机恢复后更新装备机状态为正常,并增加相应的ip映射关系,进入步骤(102);若主装备机正常,但因容量不足导致匹配不到装备机,则创建主装备机的次装备机,次装备机创建后增加新创建的装备机的记录,并增加相应的ip映射关系,进入步骤(102);若存在匹配的装备机,则增加相应的ip映射关系,进入步骤(102);

(104)在接收到装备机响应报文时,根据ip映射关系进行ip地址修正;

(105)根据最近一次有效报文转发时间定期清理过期的ip映射关系,并对不存在ip映射关系的主装备机进行休眠,对不存在ip映射关系的次装备机进行释放。

有益效果:本发明通过流表报文转发及装备机休眠网络托管模块底层协议自动回复机制,将底层协议如icmp、arp、rarp、dhcp流量转到装备机休眠网络托管模块,并由装备机休眠网络托管模块进行自动回复,保证休眠状态的装备机的网络配置保持占用状态;并定期发送ip续约报文,保证休眠装备机的ip租约持续有效。此外,本发明通过装备机调度模块实现装备库基于容量的规模自适应调度,并进一步设计了ip报文缓存队列能够保证业务不丢失,支撑了装备机状态切换对业务无影响及无感知。与现有技术相比,本发明具有如下优点:

1、运维灵活性更高。装备机处于休眠状态时,常用的命令依旧能识别ip处于占用状态,达到装备机业务休眠,网络状态不休眠的效果。

2、支持动态分配方式的dhcp服务器方案。休眠虚拟机的租约由装备机休眠网络托管模块负责进行续约,保证ip持续有效。

3、提升了装备库运维效率。快速扩容及减容提升了运维人员的工作效率。

4、提升了资源利用率。装备机休眠网络托管系统支持装备机实现了从0(无)到n(多)之间的伸缩性,大幅降低了闲置资源的浪费。

5、提升了装备库响应装备使用期高峰低谷的能力,整体提升了装备库的作战支撑能力。

附图说明

图1为网络靶场实战演练场景的部署图。

图2为本发明实施例的装备机休眠网络托管系统在网络靶场实战演练场景的应用结构示意图。

图3为本发明另一实施例的装备机休眠网络托管系统在网络靶场实战演练场景的应用结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅只是本发明的一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的其他所有实施例,都属于本发明保护的范围。

如图2所示,本发明实施例公开的一种网络靶场实战演练场景的装备机休眠网络托管系统,包括部署在网络靶场控制节点的装备机管理模块和装备机休眠网络托管模块;其中装备机管理模块,用于休眠装备机或恢复装备机,并在装备机休眠时或恢复时通知装备机休眠网络托管模块。装备机休眠网络托管模块,用于装备机休眠时,保存休眠状态装备机的网络配置记录,生成并下发虚拟交换机流表,将目标为休眠状态装备机的流量转向网络靶场控制节点;装备机从休眠状态恢复时,清理保存的网络配置记录,并删除虚拟交换机对应流表记录;以及用于获取协议报文流量,针对休眠状态装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文;以及定期向dhcp服务器发送休眠状态装备机的续约报文,保证休眠状态装备机的ip地址不过期。

具体地,网络配置包括ip地址、mac地址、网关、子网掩码和dns服务器地址。装备机的休眠是关闭、挂起或冻结装备机使装备机进入非正常运行可恢复的状态。生成并下发的虚拟交换机流表包含匹配项和动作,匹配项设置为休眠状态装备机的mac地址及ip地址,动作设置为修改目标mac地址为网络靶场控制节点上装备机休眠网络托管模块监听虚拟网卡的mac地址。针对不同的虚拟化方案,可采用相应的流表管理方案。

具体实施时,装备机的休眠或恢复处理的指令可由运维管理员手动发出,或者由运维系统自动发出,自动休眠或恢复装备机由部署在的连接所有装备机的虚拟交换机上的装备机调度模块实现。装备机调度模块用于维护装备机的状态并记录操作机对装备机的访问记录,在操作机访问的装备机处于休眠状态时,通知装备机管理模块恢复装备机,以及在装备机超过设定时间无操作机访问时,通知装备机管理模块休眠装备机。

基于相同的发明构思,本发明实施例公开一种网络靶场实战演练场景的装备机休眠网络托管方法,包括如下步骤:

(1)在装备机需要进行休眠处理时,休眠装备机,保存休眠状态装备机的网络配置记录,生成并下发虚拟交换机流表,将目标为休眠状态装备机的流量转向网络靶场控制节点;

(2)获取协议报文流量,针对休眠状态装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文;

(3)定期向dhcp服务器发送休眠状态装备机的续约报文,保证休眠状态装备机的ip地址不过期;

(4)装备机从休眠状态恢复时,清理保存的网络配置记录,并删除虚拟交换机对应流表记录。

装备机的休眠或恢复处理的指令由运维管理员手动发出,或者根据维护装备机的状态和操作机对装备机的访问情况自动发出,在操作机访问的装备机处于休眠状态时,恢复所访问的装备机,在装备机超过设定时间无操作机访问时,休眠装备机。

下面对采用本发明实施例的网络靶场实战演练场景的作战流程做进一步说明。具体作战流程包括:

1)网络靶场创建装备库。网络靶场在计算节点上创建虚拟机作为装备库内的装备机,虚拟机内分别安装攻击工具、渗透工具、扫描工具等并对外提供服务,实际应用中一般虚拟机通过含有攻防工具的镜像直接初始化而成,可通过ssh协议、tcp协议、http协议提供服务。

2)指挥中心创建任务。指挥中心指挥官通过主机连接控制节点内任务管理模块(网络靶场平台现有模块)创建作战任务,并将任务指派给相应的作战小队或作战队员。

3)作战小队队员接收任务并创建任务专属操作机。作战小队通过队员主机连接任务管理模块接收指派的作战任务,并在网络靶场中的计算节点创建虚拟机作为作战用操作机,所有针对当前任务的作战操作都在将该操作机上执行。

4)作战小队队员主机连接操作机管理模块(网络靶场平台现有模块)发起操作机连接请求。队员主机连接网络靶场控制节点的操作机管理模块,操作机管理模块完成身份验证、授权控制、安全审计功能,承担了堡垒机的功能,实际应用组件如jumpserver、guacamole等。

5)操作机管理模块认证作战小队队员身份及权限并连接操作机。操作机管理模块认证作战小队队员身份信息,并校验其对操作机的权限,校验通过后,通过远程控制协议连接操作机,远程控制协议如rdp、ssh、telnet、vnc等,由此队员主机通过网络靶场操作机管理模块与操作机建立连接。

6)作战小队队员通过操作机执行任务,连接装备库内装备机并使用装备。作战队员连接装备库内装备机上的服务来使用装备库的装备,进行渗透、攻击、扫描等操作,装备机记录装备使用记录保存统一日志存储模块。实际应用中支持ssh协议、tcp协议、http协议等,且仅供计算节点内操作机访问调用。

7)作战小队队员完成任务,释放操作机。作战小队队员完成作战任务后,释放当前任务用的操作机,即释放虚拟机资源。

8)对于暂时不需要使用的装备机,运维管理员或装备机调度模块会对装备机进行休眠处理。进入休眠的装备机的记录并不从虚拟机管理模块中清除,创建新的虚拟机时将不占用进入休眠的装备机的ip地址,当需要使用时重新恢复装备机,同时保证恢复后的装备机依旧采用原来的网络配置。

9)控制节点内装备机休眠网络托管模块维护休眠装备机的网络配置记录,生成并下发到装备库虚拟交换机流表,将目标为休眠装备机的流量转向控制节点。实际应用中通过ssh连接装备机所在计算节点采用openvswitch组件的ovs-ofctl命令工具针对装备机虚拟交换机下发流表,流表包含匹配项、动作,匹配项设置为休眠装备的mac地址及ip地址,动作设置为修改目标mac地址为控制节点上装备机休眠网络托管模块监听虚拟网卡的mac地址,命令如ovs-ofctladd-flow,或采用sdn控制器对所有虚拟交换机统一管理直接下发流表,如opendaylight。

10)装备机休眠网络托管模块获取协议报文流量,针对休眠装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文,其中包括dhcprequest报文、arpreply报文、icmpreply报文、rarpreply报文,其中响应报文设置对应休眠装备机的mac地址及ip地址。实际应用中基于scapy工具分析协议流量,并构建正确的响应报文返回。

11)装备机休眠网络托管模块定期向dhcp服务器发送休眠装备机的续约报文,保证休眠装备的ip地址不过期,即dhcprequest报文,装备机进入休眠状态时、租约过去50%时、租约过去87.5%时、租约过去90%时、租约过去95%时发送dhcprequest续约报文。

12)当装备机从休眠状态恢复时,清理装备机休眠网络托管模块内的休眠装备机网络配置记录,并删除虚拟交换机对应流表记录。实际应用中采用openvswitch组件的ovs-ofctl命令工具删除虚拟交换机内的流表记录,命令如ovs-ofctldel-flows。若直接释放休眠状态的装备机,也同时清理装备机休眠网络托管模块内的休眠装备机网络配置记录,并删除虚拟交换机对应流表记录。

为进一步灵活支持装备使用峰值的扩容处理,如图3所示,本发明在上述实施例的基础上,公开的另一实施例采用自适应的装备机调度,将装备机的类型分为主装备机和次装备机,主装备机的ip地址对操作机开放,次装备机的ip地址不对操作机开放。装备机管理模块,只对主装备机进行休眠或恢复操作,对次装备机进行创建或释放操作。装备机休眠网络托管模块在主装备机休眠时对主装备机进行网络托管。具体地,本发明另一实施例公开的网络靶场实战演练场景的装备机休眠网络托管系统,其中的装备机调度模块部署在网络靶场计算节点上与装备库内所有装备机连接的虚拟交换机内,包括调度子模块和ip映射管理子模块。

调度子模块,用于保存装备库中装备机的类型、ip地址、对应的主装备机ip地址、装备机的状态和装备资源使用率,以及根据ip映射管理子模块的调度请求,匹配并返回有容量的装备机的ip地址,在因主装备机休眠导致匹配失败时,请求装备机管理模块恢复主装备机,在主装备机正常但因容量不足匹配失败时,请求装备机管理模块创建次装备机。

ip映射管理子模块,用于保存操作机ip地址、主装备机ip地址、映射后装备机ip地址的映射关系,以及对应的最近一次有效报文转发时间;基于ip地址修改的方式完成主装备机和次装备机的负载转发,在操作机ip地址和主装备机ip地址的映射记录存在时,则直接进行ip地址修正,否则请求装备机调度模块获取有容量的装备机的ip地址并增加映射记录,再进行ip地址修正;以及用于根据最近一次有效报文转发时间定期清理过期的ip映射关系,并对不存在ip映射关系的主装备机或次装备机,通知装备机管理模块休眠主装备机或释放次装备机。

调度子模块可包括容量选择单元、主装备机恢复单元、次装备机创建单元、主装备机休眠单元、次装备机释放单元、ip报文缓存单元。其中容量选择单元用于根据主装备机ip地址选择状态正常且有容量的主装备机或次装备机;主装备机恢复单元用于在因主装备机休眠导致匹配失败时,发送恢复信号到装备机管理模块,并在主装备机恢复后更新装备机状态,由容量选择单元再按照主装备机ip地址进行匹配;次装备机创建单元用于在主装备机正常但因容量不足导致匹配失败时,发送次装备机创建信号到装备机管理模块,并在次装备机创建后,添加相应的记录,由容量选择单元再按照主装备机ip地址进行匹配;主装备机休眠单元用于传递休眠信号到装备机管理模块,并在主装备机休眠后更新装备机状态;次装备机释放单元用于传递释放信号到装备机管理模块,并在次装备机释放后删掉对应的记录;ip报文缓存单元用于在通知装备机管理模块恢复主装备机或创建次装备机之前将ip报文缓存到ip报文缓存队列。

ip映射管理子模块可包括ip地址修正单元和ip映射关系清理单元。ip地址修正单元用于在收到操作机请求报文时,判断是否存在操作机ip地址和主装备机ip地址的映射记录,若存在则根据映射记录修正ip报文内目标ip地址为映射后装备机ip地址,转发报文并更新映射记录中最后一次有效报文转发时间;否则请求装备机调度模块获取有容量的装备机的ip地址,获取到匹配的装备机后增加相应的ip映射记录,并修正ip报文的目标ip地址,转发报文并更新映射记录中最后一次有效报文转发时间;以及在收到装备机响应报文时,根据映射记录将ip报文内源ip地址修正为主装备机ip地址。ip映射关系清理单元用于根据最后一次有效报文转发时间定期清理过期ip映射关系;当次装备机不存在ip映射关系时,发出次装备机释放信号,当主装备机不存在ip映射关系时,发出主装备机休眠信号。

具体实施时,ip映射管理子模块可采用异步方式实现ip地址修正,在需要恢复主装备机或创建次装备机的情形,调度子模块将ip报文缓存到ip报文缓存队列,主装备机恢复或次装备机创建后,ip映射管理子模块再修正ip报文缓存队列中的ip报文的目标ip地址。

具体的判断主装备机休眠或恢复,以及次装备机创建或释放的方法包括:

(101)在接收到操作机请求报文时,判断是否存在操作机ip地址和主装备机ip地址的ip映射关系,若存在则进入步骤(102),否则进入步骤(103);

(102)根据ip映射记录进行ip地址修正,转发报文并更新映射记录中最后一次有效报文转发时间,进入步骤(104);

(103)根据主装备机ip地址判断是否存在对应的有容量的装备机,若主装备机休眠,则恢复主装备机,主装备机恢复后更新装备机状态为正常,并增加相应的ip映射关系,进入步骤(102);若主装备机正常,但因容量不足导致匹配不到装备机,则创建主装备机的次装备机,次装备机创建后增加新创建的装备机的记录,并增加相应的ip映射关系,进入步骤(102);若存在匹配的装备机,则增加相应的ip映射关系,进入步骤(102);

(104)在接收到装备机响应报文时,根据ip映射关系进行ip地址修正;

(105)根据最近一次有效报文转发时间定期清理过期的ip映射关系,并对不存在ip映射关系的主装备机进行休眠,对不存在ip映射关系的次装备机进行释放。

基于本发明实施例的作战流程包括:

1)网络靶场创建装备库,保存快照、网络配置,释放资源。网络靶场在计算节点上创建虚拟机作为装备库内的装备,虚拟机内分别安装攻击工具、渗透工具、扫描工具等并对外提供服务,创建完成之后生成内存、磁盘快照,将快照保存到快照存储模块,保留网络配置信息,装备机转入冻结状态(本示例以冻结操作为例),并将冻结状态同步到装备库虚拟交换机内的装备机调度模块,同时释放装备机资源。该阶段初始化的装备机称为主装备机,考虑到部分装备机存在突发使用高峰期,故会临时拓展的一部分次装备机,次装备机的初始化过程与主装备机保持一致,次装备机为临时资源,使用完成后将释放。装备机调度模块保存装备机状态记录表,该表包含字段:装备机类型(主装备机、次装备机)、装备机ip地址、主装备机ip地址、装备机状态(冻结、正常)、装备机cpu使用率、装备机内存使用率、装备资源使用率(cpu和内存使用率加权合计),主装备机存在冻结状态,次装备机不存在冻结状态,主装备机无业务时冻结,次装备机无业务时释放,主装备机ip地址直接对操作机开放,次装备机ip地址不直接对操作机开放,操作机仅访问主装备机ip地址,虚拟交换机内ip映射管理子模块基于ip修改方式完成主次装备机的负载转发。实际应用中一般虚拟机通过含有攻防工具的镜像直接初始化而成,可通过ssh协议、tcp协议、http协议提供服务,同种装备一般生成一台主装备机,快照存储模块一般为nfs网络共享存储,存储保证各个装备机计算节点可以直接访问主装备机快照即可;快照生成工具如virsh,快照生成指令:virshsnapshot-create-as。

2)指挥中心创建任务。指挥中心指挥官通过主机连接控制节点内任务管理模块(网络靶场平台现有模块)创建作战任务,并将任务指派给相应的作战小队或作战队员。

3)作战小队队员接收任务并创建任务专属操作机。作战小队通过队员主机连接任务管理模块接收指派的作战任务,并在网络靶场中的计算节点创建虚拟机作为作战用操作机,所有针对当前任务的作战操作都在将该操作机上执行。

4)作战小队队员主机连接操作机管理模块(网络靶场平台现有模块)发起操作机连接请求。队员主机连接网络靶场控制节点的操作机管理模块,操作机管理模块完成身份验证、授权控制、安全审计功能,承担了堡垒机的功能,实际应用组件如jumpserver、guacamole等。

5)操作机管理模块认证作战小队队员身份及权限并连接操作机。操作机管理模块认证作战小队队员身份信息,并校验其对操作机的权限,校验通过后,通过远程控制协议连接操作机,远程控制协议如rdp、ssh、telnet、vnc等,由此队员主机通过网络靶场操作机管理模块与操作机建立连接。

6)作战小队队员通过操作机执行任务,需要使用网络装备时请求连接装备库内装备机(通过对操作机开放的主装备机ip地址连接)。作战队员连接装备库内装备机上的服务来使用装备库的装备,进行渗透、攻击、扫描等操作,装备机记录装备使用记录保存统一日志存储模块(保存在计算节点可共同访问的存储系统即可)。实际应用中支持ssh协议、tcp协议、http协议等,且仅供计算节点内操作机访问调用。

7)虚拟交换机通过内部ip映射管理子模块对ip报文重新映射目标ip地址。ip映射管理子模块保存一张ip报文转发策略表,包含字段:操作机ip地址、主装备机ip地址、映射后装备机ip地址、最近一次有效报文转发时间。根据ip报文内源ip地址(即操作机ip地址)、目标ip地址(主装备机ip地址)查询映射记录。如果存在映射记录,直接根据映射记录,修正ip报文目标ip地址即可,通过ip修正的方式来对主装备机、次装备机完成基于ip报文的路由策略,转发报文,并更新映射记录中最近一次有效报文转发时间字段,返回的响应报文也通过ip映射管理子模块完成对源ip地址(即装备机ip地址)的修正。

8)如果不存在映射记录,通过主装备机ip地址查询调度子模块,调度子模块根据指定主装备机ip地址对应的装备机列表顺序选择有容量的装备机,记录ip映射关系。装备机列表默认顺序为创建顺序,容量根据装备资源使用率来衡量,当低于最大容量时认定装备机是有容量的,最大容量即最大装备资源使用率。应用中一般最大容量设置为85%。

9)如果根据记录匹配装备机失败,因主装备冻结导致匹配失败时,判断ip报文类型,如果为非业务类型ip报文,则直接丢弃ip报文。如果为业务类型ip报文,缓存报文到ip报文缓存队列,发送解冻信号到装备机管理模块,装备机管理模块对该装备机进行解冻,在快照存储模块检索到指定装备机快照,并根据该快照恢复装备机冻结之前的内存、磁盘状态,删除装备机快照,并将装备机状态同步到装备机调度模块。实际应用中非业务协议可以包含icmp协议、arp协议、rarp协议、dhcp协议、dns协议,快照恢复工具有如virsh,快照恢复指令:virshsnapshot-revert。

10)如果根据记录匹配装备机失败,主装备机正常,由容量不足匹配失败时,缓存报文到ip报文缓存队列,发送次装备创建信号到装备机管理模块,装备机管理模块创建指定装备类型的次装备机(采用与主装备机相同的镜像初始化而成),并将装备机状态同步到装备机调度模块。

11)如果是需要解冻主装备机或容量不足创建次装备机,ip映射管理子模块异步接收到装备机调度模块返回的可用的装备机ip后,记录ip映射关系,从ip报文缓存队列中获取相应的ip报文,完成ip地址的修正再进行转发。

12)虚拟交换机内ip映射管理子模块根据最近一次有效报文转发时间字段定期清理过期ip映射关系,当次装备机不存在ip映射关系时,发送次装备释放信号到装备机管理模块,装备机管理模块直接释放次装备资源,不保留任何信息,并将装备机状态同步到装备机调度模块;当主装备机不存在ip映射关系时,发送主装备冻结信号到装备机管理模块,装备机管理模块保存主装备网络配置信息,冻结主装备,并将装备机状态同步到装备机调度模块。实际应用中过期时间一般设置为30分钟。

13)作战小队队员完成任务,释放操作机。作战小队队员完成作战任务后,释放当前任务用的操作机,即释放虚拟机资源。

14)控制节点内装备机休眠网络托管模块维护冻结的主装备机的网络配置记录,生成并下发虚拟交换机流表,将目标为冻结的主装备机的流量转向控制节点。实际应用中通过ssh连接装备机所在计算节点采用openvswitch组件的ovs-ofctl命令工具针对装备机虚拟交换机下发流表,流表包含匹配项、动作,匹配项设置为休眠装备的mac地址及ip地址,动作设置为修改目标mac地址为控制节点上装备机休眠网络托管模块监听虚拟网卡的mac地址,命令如ovs-ofctladd-flow,或采用sdn控制器对所有虚拟交换机统一管理直接下发流表,如opendaylight。

15)装备机休眠网络托管模块获取协议报文流量,针对冻结的主装备机的arp协议、rarp协议、dhcp协议、icmp协议流量回复对应的响应报文,其中包括dhcprequest报文、arpreply报文、icmpreply报文、rarpreply报文,其中响应报文设置对应休眠装备的mac地址及ip地址。实际应用中基于scapy工具分析协议流量,并构建正确的响应报文返回。

16)装备机休眠网络托管模块定期向dhcp服务器发送冻结的主装备机的续约报文,保证冻结的主装备机的ip地址不过期,即dhcprequest报文,主装备机进入冻结状态时、租约过去50%时、租约过去87.5%时、租约过去90%时、租约过去95%时发送dhcprequest续约报文。

17)当主装备机解冻时,清理装备机休眠网络托管模块内的冻结的主装备机网络配置记录,并删除虚拟交换机对应流表记录。实际应用中采用openvswitch组件的ovs-ofctl命令工具删除虚拟交换机内的流表记录,命令如ovs-ofctldel-flows。

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