掌桥专利:专业的专利平台
掌桥专利
首页

一种虚拟化靶场环境包构建方法及系统

文献发布时间:2023-06-19 11:52:33


一种虚拟化靶场环境包构建方法及系统

技术领域

本发明涉及网络安全领域,具体涉及一种虚拟化靶场环境包构建方法及系统。

背景技术

随着虚拟化技术快速发展以及广泛应用,能有效减少网络CTF解题平台对硬件设备的依赖,基于虚拟化构建仿真网络安全靶场训练环境,一方面提高设备的利用率,减少对硬件设施依赖,另一方面简化操作步骤,能批量构建虚拟化靶场节点。通过虚拟组件化网络组建网络环境,存储镜像和创建实例,通过轻量级虚拟化镜像模拟业务场景漏洞;通过主机靶场节点主动上报手段监控主机状态、虚拟硬件资源、进程端口、流量信息;通过脚本检测环境加固情况;最后通过选手提交目标机IP,端口号和Flag信息判定攻击是否成功。

在生产环境下,靶场渗透会影响业务正常运营,因此通过虚拟化构建业务场景,能有效模拟真实网络环境。目前构建镜像分为两种级别,一种为操作系统级别漏洞镜像,另一种为应用程序级别漏洞镜像。操作系统级别漏洞镜像使用虚拟化镜像组件构建虚拟靶场节点环境,并配置靶场节点控制服务和脚本检测;应用程序级别的漏洞则通过虚拟机技术与轻量化技术相结合构建环境,首先选择虚拟机系统,再使用轻量级虚拟化技术制作特定镜像,将Flag文件挂载,封装虚拟资源包,最后将资源包上传发布。

因此,在同一网段下,基于虚拟化构建CTF解题平台,会出现两种镜像类型:

一种是构建系统漏洞CTF题对应镜像;

一种是构建应用程序漏洞CTF题对应镜像;

关于虚拟化靶场环境的现有技术,诸如一种信息安全靶场训练的实现方法,步骤如下:

a)搭建系统主服务器用于验证用户请求,并在主服务器中部署模式选择模块;

b)在系统主服务器中部署主控模块,用于控制各模块的角色和过程权限策略控制,并根据用户请求进行功能模块执行控制;

c)在系统主服务器中部署管理员模块,用于在平台使用中的权限分配;

d)在系统主服务器中部署靶场训练控制模块,用于控制在靶场模式中的时间和角色转换控制;

e)在系统主服务器中部署监控录像接收模块、调度模块和报表模块,用于用户使用平台的过程展示、监管和使用后的信息取证;

f)搭建系统数据库服务器和集群服务端,部署靶场训练实体。

现有技术还公开一种贴近真实网络环境的CTF靶场训练系统及方法,采用KVM和OpenStack构建赛题服务靶场节点,启动速度慢,占用系统资源高,在同等配置下,难以实现秒级启动。

此外,现有技术还公开一种基于云平台的靶场渗透系统,通过使用OpenStack 平台,生成虚拟设备,创建靶场场景模拟,靶场业务模块和管理靶场信息系统组成靶场渗透靶场系统,但这种方式无法满足在同一环境下,每位用户的虚拟机是独立的和Flag信息和选手虚拟环境漏洞绑定。

发明内容

本发明的目的在于提供一种虚拟化靶场环境包构建方法及系统,采用全新设计架构,能够适用于不同漏洞类型,高效准确完成虚拟化靶场环境包的搭建,为虚拟化靶场环境提高保障,使得试用于CTF平台的同时,靶场启动速度更快。

本发明为了解决上述技术问题采用以下技术方案:

本发明提供了一种虚拟化靶场环境包构建方法,包括步骤A至步骤D如下;

步骤A. 针对虚拟化靶场环境设计要求中的各个漏洞,按各漏洞的类型,构建各漏洞所对应的各个CTF题对应镜像,然后进入步骤B;

步骤B. 根据虚拟化靶场环境设计要求中各个题目与各个漏洞之间的对应关系,将各个CTF题对应镜像与各个题目进行关联,然后进入步骤C;

步骤C. 分别针对各个CTF题对应镜像,将CTF题对应镜像进行实例化,获得其所对应的虚拟化靶场节点,即获得各CTF题对应镜像分别所对应的虚拟化靶场节点,然后进入步骤D;

步骤D. 根据虚拟化靶场环境设计要求,实现解题用户分别与各虚拟化靶场节点之间的关联,即完成用于在CTF竞赛中使用的虚拟化靶场环境包的构建。

作为本发明的一种优选技术方案:所述步骤A 中各个CTF题对应镜像的构建过程中,均引入检测Flag脚本的配置。

作为本发明的一种优选技术方案:所述步骤A中,若漏洞的类型为系统漏洞,则按如下步骤A1-1至步骤A1-7,构建系统漏洞所对应的CTF题对应镜像;

步骤A1-1. 创建虚拟Docker环境镜像;

步骤A1-2. 编写DockerFile文件,制作基础镜像;

步骤A1-3. 写入Flag文件信息;

步骤A1-4. 配置特殊命令;

步骤A1-5. 配置加固检测脚本;

步骤A1-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A1-7. 上传发布系统漏洞镜像。

作为本发明的一种优选技术方案:所述步骤A中, 若漏洞的类型为单应用程序漏洞,则按如下步骤A2-1至步骤A2-7,构建单应用程序漏洞所对应的CTF题对应镜像;

步骤A2-1. 创建虚拟Docker环境镜像;

步骤A2-2. 编写DockerFile文件,制作基础镜像;

步骤A2-3. 写入Flag文件信息;

步骤A2-4. 应用轻量级虚拟化构建镜像,并挂载Flag文件信息;

步骤A2-5. 针对镜像,配置加固检测脚本;

步骤A2-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A2-7. 上传发布单应用程序漏洞所对应的CTF题对应镜像。

作为本发明的一种优选技术方案:所述步骤A中,若漏洞的类型为多应用程序漏洞,则按如下步骤A3-1至步骤A3-7,构建多应用程序漏洞所对应的CTF题对应镜像;

步骤A3-1. 创建虚拟Docker环境镜像;

步骤A3-2. 编写DockerFile文件,制作基础镜像;

步骤A3-3. 写入Flag文件信息;

步骤A3-4. 分别针对各应用程序,应用轻量级虚拟化针对应用程序进行镜像构建,并挂载Flag文件信息;

步骤A3-5. 分别针对各应用程序所对应的镜像,配置加固检测脚本;

步骤A3-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A3-7. 上传发布多应用程序漏洞所对应的CTF题对应镜像。

作为本发明的一种优选技术方案:所述步骤C中,若CTF题对应镜像为应用程序CTF题对应镜像,则针对应用程序CTF题对应镜像所对应的虚拟化靶场节点,设置为开机自启。

作为本发明的一种优选技术方案:所述解题用户分别分配Root权限的账号,用于进行虚拟化靶场环境。

作为本发明的一种优选技术方案:所述解题用户为CTF解题用户。

与上述相对应,本发明所要解决的技术问题是提供一种执行虚拟化靶场环境包构建方法的系统,以所设计的虚拟化靶场环境包构建方法为对象,应用模块化之间的相互协作,能够高效实现虚拟化靶场环境包的快速构建,为虚拟化靶场环境提供平台保障。

本发明为了解决上述技术问题采用以下技术方案:

一种执行所述虚拟化靶场环境包构建方法的系统,包括用户管理模块、镜像管理模块、题目管理模块、赛事管理模块和虚拟机管理模块;

其中,用户管理模块包括用户账号的注册管理和信息管理功能;

镜像管理模块包括虚拟化靶场节点类型和轻量级虚拟化类型,用于存储CTF题对应镜像名称、CTF题对应镜像ID和CTF题对应Docker镜像类型;

题目管理模块用于针对CTF解题平台的漏洞进行管理,其中,各题目中记录漏洞的信息,以及所对应CTF题对应镜像ID和Flag文件地址;

赛事管理模块用于组建虚拟化靶场环境比赛,以及建立参赛选手、题目、虚拟化靶场节点之间的关系,基于虚拟化靶场环境比赛的创建,不同用户拥有相同的虚拟化靶场环境包,但是虚拟化靶场环境包中各Flag信息不同,并用于设置虚拟化靶场节点自动启动主机靶场节点监控服务;

虚拟机管理模块用于对虚拟化靶场节点进行展示、创建、删除、重启功能,以及为参赛选手建立与虚拟化靶场环境比赛、题目、虚拟化靶场节点关联的功能。

与现有技术相比,本发明具有以下技术效果:

本发明提供的虚拟化靶场环境包的构建方法,采用全新设计架构,支持一键部署虚拟化靶场环境,在虚拟靶场节点引入靶场检测和攻击事件判定,根据靶场检测脚本和提交Flag信息判定攻击成功;构建镜像分为系统靶场环境包和应用靶场环境包,分别通过虚拟化组件和轻量级虚拟化构建镜像;在所构建虚拟化靶场环境包中,每位选手和靶场环境的虚拟靶场节点建立是一对一关系,靶场使得每位选手的虚拟靶场环境是隔离的。本发明的虚拟化靶场环境包构建方法能够适用于不同漏洞类型,高效准确完成虚拟化靶场环境包的搭建,为虚拟化靶场环境提高保障,使得试用于CTF平台的同时,靶场启动速度更快。同时,本发明还提供了执行虚拟化靶场环境包构建方法的系统,应用模块化之间的相互协作,高效实现虚拟化靶场环境包的快速构建,为虚拟化靶场环境提供平台保障。

附图说明

图1是本发明提供的虚拟化靶场环境包构建方法的流程示意图。

具体实施方式

下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。

本发明提供的虚拟化靶场环境包构建方法,用于在CTF竞赛中使用的虚拟化靶场环境包的制作,如图1所示,虚拟化靶场环境包构建方法具体执行如下步骤A至步骤D。

步骤A. 针对虚拟化靶场环境设计要求中的各个漏洞,按各漏洞的类型,构建各漏洞所对应的各个CTF题对应镜像,然后进入步骤B;

实际应用当中,在步骤A中各CTF题对应镜像的构建过程中,分别均引入检测Flag脚本的配置,具体针对系统漏洞、单应用程序漏洞和多应用程序漏洞,分别详细设计了如下各CTF题对应镜像的构建方法。

若漏洞的类型为系统漏洞,则按如下步骤A1-1至步骤A1-7,构建系统漏洞所对应的CTF题对应镜像;

步骤A1-1. 创建虚拟Docker环境镜像;

步骤A1-2. 编写DockerFile文件,制作基础镜像;

步骤A1-3. 写入Flag文件信息;

步骤A1-4. 配置特殊命令;

步骤A1-5. 配置加固检测脚本;

步骤A1-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A1-7. 上传发布系统漏洞镜像。

若漏洞的类型为单应用程序漏洞,则按如下步骤A2-1至步骤A2-7,构建单应用程序漏洞所对应的CTF题对应镜像;

步骤A2-1. 创建虚拟Docker环境镜像;

步骤A2-2. 编写DockerFile文件,制作基础镜像;

步骤A2-3. 写入Flag文件信息;

步骤A2-4. 应用轻量级虚拟化构建镜像,并挂载Flag文件信息;

步骤A2-5. 针对镜像,配置加固检测脚本;

步骤A2-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A2-7. 上传发布单应用程序漏洞所对应的CTF题对应镜像。

若漏洞的类型为多应用程序漏洞,则按如下步骤A3-1至步骤A3-7,构建多应用程序漏洞所对应的CTF题对应镜像;

步骤A3-1. 创建虚拟Docker环境镜像;

步骤A3-2. 编写DockerFile文件,制作基础镜像;

步骤A3-3. 写入Flag文件信息;

步骤A3-4. 分别针对各应用程序,应用轻量级虚拟化针对应用程序进行镜像构建,并挂载Flag文件信息;

步骤A3-5. 分别针对各应用程序所对应的镜像,配置加固检测脚本;

步骤A3-6. DockerFile文件所在的目录执行Docker中Build命令生成题目镜像,封装虚拟资源包,获得系统漏洞对应镜像;

步骤A3-7. 上传发布多应用程序漏洞所对应的CTF题对应镜像。

基于上述步骤A在实际应用当中所执行的上述具体操作,即构建获得各漏洞所对应的各个CTF题对应镜像,然后进入步骤B。

步骤B. 根据虚拟化靶场环境设计要求中各个题目与各个漏洞之间的对应关系,将各个CTF题对应镜像与各个题目进行关联,然后进入步骤C;

步骤C. 分别针对各个CTF题对应镜像,将CTF题对应镜像进行实例化,获得其所对应的虚拟化靶场节点,即获得各CTF题对应镜像分别所对应的虚拟化靶场节点,然后进入步骤D;

所述步骤C在实际应用当中,在将各CTF题对应镜像分别实例化,获得所对应的虚拟化靶场节点的过程中,若CTF题对应镜像为应用程序CTF题对应镜像,则针对应用程序CTF题对应镜像所对应的虚拟化靶场节点,设置为开机自启。

步骤D. 根据虚拟化靶场环境设计要求,实现解题用户分别与各虚拟化靶场节点之间的关联,即完成用于在CTF竞赛中使用的虚拟化靶场环境包的构建。

本发明提供的虚拟化靶场环境包构建方法,在实际应用当中,针对CTF解题用户,进一步设计分别分配Root权限的账号,用于进行虚拟化靶场环境,保证每位选手设备与设备是隔离的。

在实际应用当中,本发明进一步设计了执行虚拟化靶场环境包构建方法的系统,由CTF平台管理系统执行步骤A至步骤D,其中,CTF平台管理系统包括用户管理模块、镜像管理模块、题目管理模块、赛事管理模块和虚拟机管理模块。

其中,用户管理模块包括用户账号的注册管理和信息管理功能;

镜像管理模块包括虚拟化靶场节点类型和轻量级虚拟化类型,用于存储CTF题对应镜像名称、CTF题对应镜像ID和CTF题对应Docker镜像类型;

题目管理模块用于针对CTF解题平台的漏洞进行管理,其中,各题目中记录漏洞的信息,以及所对应CTF题对应镜像ID和Flag文件地址;

赛事管理模块用于组建虚拟化靶场环境比赛,以及建立参赛选手、题目、虚拟化靶场节点之间的关系,基于虚拟化靶场环境比赛的创建,不同用户拥有相同的虚拟化靶场环境包,但是虚拟化靶场环境包中各Flag信息不同,并用于设置虚拟化靶场节点自动启动主机靶场节点监控服务;

虚拟机管理模块用于对虚拟化靶场节点进行展示、创建、删除、重启功能,以及为参赛选手建立与虚拟化靶场环境比赛、题目、虚拟化靶场节点关联的功能。

由此应用所述包括用户管理模块、镜像管理模块、题目管理模块、赛事管理模块和虚拟机管理模块的CTF平台管理系统,执行虚拟化靶场环境包构建方法,应用模块化之间的相互协作,即可快速高效的完成虚拟化靶场环境包的构建,为实际应用中的虚拟化靶场环境提供技术保障。

本发明提供的虚拟化靶场环境包构建方法,采用全新设计架构,支持一键部署虚拟化靶场环境,在虚拟靶场节点引入靶场检测和攻击事件判定,根据靶场检测脚本和提交Flag信息判定攻击成功;而且构建靶场环境包分为系统靶场环境包和应用靶场环境包,分别通过虚拟化组件和轻量级虚拟化构建靶场环境包;在所构建虚拟化靶场环境包中,每位选手和靶场环境的虚拟靶场节点建立是一对一关系,靶场使得每位选手的虚拟靶场环境是隔离的;同时,本发明还提供了执行虚拟化靶场环境包构建方法的系统,应用模块化之间的相互协作,高效实现虚拟化靶场环境包的快速构建,为虚拟化靶场环境提供平台保障。

以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

相关技术
  • 一种虚拟化靶场环境包构建方法及系统
  • 一种虚拟化网络环境构建方法和系统
技术分类

06120113084344