CN113342479A - 一种基于文件系统的竞赛平台动态Flag注入方法及系统 - Google Patents

一种基于文件系统的竞赛平台动态Flag注入方法及系统 Download PDF

Info

Publication number
CN113342479A
CN113342479A CN202110905833.2A CN202110905833A CN113342479A CN 113342479 A CN113342479 A CN 113342479A CN 202110905833 A CN202110905833 A CN 202110905833A CN 113342479 A CN113342479 A CN 113342479A
Authority
CN
China
Prior art keywords
competition
flag
environment
virtual machine
computing node
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
CN202110905833.2A
Other languages
English (en)
Other versions
CN113342479B (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.)
Nanjing Cyber Peace Technology Co Ltd
Original Assignee
Nanjing Cyber Peace Technology Co Ltd
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 Nanjing Cyber Peace Technology Co Ltd filed Critical Nanjing Cyber Peace Technology Co Ltd
Priority to CN202110905833.2A priority Critical patent/CN113342479B/zh
Publication of CN113342479A publication Critical patent/CN113342479A/zh
Application granted granted Critical
Publication of CN113342479B publication Critical patent/CN113342479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于文件系统的竞赛平台动态Flag注入方法及系统。本发明采用虚拟机文件系统挂载方案,在选手启动赛题环境时记录绑定关系,生成Flag信息并将相关的请求发到计算节点上的代理服务;代理服务创建待挂载的目录并写入Flag信息,通过修改虚拟机镜像的开机启动脚本写入目录挂载命令,根据挂载信息生成启动命令并启动赛题环境虚拟机,赛题环境虚拟机启动完成后即可自动挂载计算节点上对应的目录,实现Flag注入。在选手重建赛题环境时,对于已经成功注入Flag的环境无需再重新注入Flag。本发明无需竞赛平台与赛题环境虚拟机之间网络连通,支持独立网络赛题环境的Flag注入,提高了安全性,注入效率及成功率。

Description

一种基于文件系统的竞赛平台动态Flag注入方法及系统
技术领域
本发明涉及一种基于文件系统的竞赛平台动态Flag注入方法及系统,属于网络安全、计算机软件领域。
背景技术
CTF(Capture The Flag)是一种网络安全技术人员之间进行技术竞技的一种比赛形式。参赛团队之间通过进行攻防对抗、程序分析等形式,率先从赛题环境中得到一串具有一定格式的字符串或其他内容,并将其提交给主办方,从而夺得分数,把这样的内容称之为Flag。为了防止参赛团队或队员作弊,通常采用动态Flag方案。目前竞赛平台向赛题环境注入动态Flag,通常要依赖于竞赛平台与赛题环境虚拟机之间的网络,例如图1所示的一种基于SSH的Flag注入方案。主要过程为:1.选手登录竞赛平台后,选择相应的题目,点击启动赛题环境;2.竞赛平台随机选择一个计算节点启动赛题环境虚拟机;3.竞赛平台给赛题环境虚拟机分配一个浮动IP用于SSH连接;4.竞赛平台检测赛题环境虚拟机的SSH端口是否能连通;5.如果不能连通则等待一段时间后重复第4步;6.如果能连通则由竞赛平台生成一个随机的Flag,通过SSH连接到赛题环境虚拟机,并修改对应的flag文件。
现有的Flag注入方案存在如下问题:1. 虚拟机必须要有网络服务、获取到正确的IP地址并开启SSH服务才能注入Flag;2.通过SSH方式注入Flag需要保证竞赛平台与赛题环境虚拟机之间的网络能够连通,对于独立网络环境的赛题无法为其注入Flag;3.启动赛题环境虚拟机后需要定时检测赛题环境虚拟机Flag端口是否能连通性,大量用户并发启动赛题环境时会为每个赛题环境连通性检测分配一个进程,这会占用大量服务器资源;4.每次用户还原赛题环境虚拟机时都需要重新注入Flag。
发明内容
发明目的:针对上述现有技术存在的问题,本发明目的在于提供一种基于文件系统的竞赛平台动态Flag注入方法及系统,以支持独立网络赛题环境的Flag注入,提高赛题环境的安全性和Flag注入效率及成功率。
技术方案:为实现上述发明目的,本发明采用如下技术方案:
一种基于文件系统的竞赛平台动态Flag注入方法,包括如下步骤:
竞赛平台在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;
竞赛平台生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务;
代理服务根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;
代理服务修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;
代理服务根据挂载信息生成启动命令并启动赛题环境虚拟机;
赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;
代理服务判断Flag是否注入成功,并将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
进一步地,所述方法还包括:
竞赛平台在接收到参赛选手还原其赛题环境时,根据记录的绑定关系,将重建请求发送到对应的计算节点上的代理服务;
代理服务判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
进一步地,所述方法在代理服务判断Flag注入成功后,为赛题环境虚拟机创建快照,以备后续选手的重建操作。
进一步地,同一计算节点上启动多个赛题环境虚拟机。
进一步地,所述方法适用于竞赛平台与赛题环境虚拟机网络不连通的场景。
进一步地,赛题环境虚拟机在挂载写有Flag信息的目录时,指定文件系统格式为9P文件系统。
基于相同的发明构思,一种基于文件系统的竞赛平台动态Flag注入系统,包括:竞赛平台赛题管理模块,至少一个容置赛题环境虚拟机的计算节点,以及部署在计算节点上的代理服务模块;
所述竞赛平台赛题管理模块,用于在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;以及生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务模块;
所述代理服务模块,用于在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;以及根据挂载信息生成启动命令并启动赛题环境虚拟机,并判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台;
所述赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录。
进一步地,所述竞赛平台赛题管理模块,还用于在接收到参赛选手还原其赛题环境时,根据记录的绑定关系将重建请求发送到对应的计算节点上的代理服务模块;所述代理服务模块,还用于在接收到重建赛题环境的请求时,判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
基于相同的发明构思,一种基于文件系统的竞赛平台动态Flag注入系统,包括:竞赛平台服务器,至少一个用于容置赛题环境虚拟机的计算节点服务器;所述竞赛平台服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下步骤:
在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;
生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的计算机程序;
所述计算节点服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下步骤:
在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;
修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;
根据挂载信息生成启动命令并启动赛题环境虚拟机;所述赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;
判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
有益效果:与现有技术相比,本发明具有如下优点:1、本发明采用虚拟机文件系统挂载方案,无需竞赛平台与赛题环境虚拟机之间网络连通,能够支持独立网络赛题环境的Flag注入,提高了赛题环境的安全性。2、本发明的Flag注入无需等待赛题环境虚拟机正确配置网络、开启SSH服务,提到了Flag注入效率及成功率。3、本发明通过计算节点上的代理服务减轻了竞赛平台注入Flag的压力,能够支持大量用户的并发操作。4、本发明将Flag信息注入在计算节点上,在用户还原赛题环境虚拟机时,不再需要重新注入Flag。
附图说明
图1为现有动态Flag注入方案示意图。
图2为本发明实施例的动态Flag注入方案示意图。
具体实施方式
下面将结合附图和具体实施例,对本发明的技术方案进行清楚、完整的描述。
如图2所示,本发明实施例公开的一种基于文件系统的竞赛平台动态Flag注入方法,主要包括:竞赛平台在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;然后生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务;代理服务在接收到创建请求后,根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;然后修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;再根据挂载信息生成启动命令并启动赛题环境虚拟机;赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;最后代理服务再判断Flag是否注入成功,并将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
此外,在代理服务判断Flag注入成功后,为赛题环境虚拟机创建快照,以备后续选手的重建操作。竞赛平台在接收到参赛选手还原其赛题环境时,根据记录的绑定关系,将重建请求发送到对应的计算节点上的代理服务;代理服务判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
下面结合具体示例,以基于9P文件系统的动态Flag注入方案为例,详细说明本发明实施例的具体操作步骤:
1.选手登录竞赛平台后,选择相应的题目,点击启动赛题环境。
2.竞赛平台随机选择一个计算节点并在数据库中记录该选手、赛题、计算节点的绑定关系。
3.竞赛平台生成本赛题环境对应的随机Flag,并将虚拟机创建请求(包括选手及赛题信息)及生成的Flag信息、挂载信息(赛题虚拟机里面Flag文件存放的目录)发送到对应计算节点的代理服务。
4.代理服务根据选手及赛题信息创建待挂载的目录,例如可以根据选手ID/赛题ID结构创建待挂载目录,或者将选手及赛题信息映射为唯一ID,再根据唯一ID创建待挂载目录。
5.代理服务将Flag文件写入到待挂载的目录中。
6.代理服务调用libguestfs工具中的virt-edit命令修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令。
7.代理服务根据挂载信息生成启动命令并启动赛题环境虚拟机。虚拟机启动命令示例:
kvm -m 2048 -name user1-task1 -drive file=/images/task1.img,if=virtio
-fsdev local,security_model=passthrough,id=fsdev1,path=/flags/user1/task1 -device virtio-9p-pci,id=fs1,fsdev=fsdev1,mount_tag= user1-task1-flag
其中,-name user1-task1 指定虚拟机名称,采用用户ID(user1)-题目ID(task1)的方式命名;file=/images/task1.img 指定虚拟机镜像文件路径,采用题目ID(task1).img方式命名;path=/flags/user1/task1 指定用户(user1)对应的赛题(task1)的flag目录;mount_tag= user1-task1-flag 指定挂载的tag,采用用户ID(user1)-赛题ID(task1)-flag的方式命名。
8.赛题环境虚拟机启动完成后会根据虚拟机新启动脚本自动挂载计算节点上对应的目录,挂载时指定文件系统格式为9P文件系统,即可完成Flag的注入;注入完成后选手即可根据赛题要求进行答题,获取到正确的Flag即可认为答题成功。目录挂载命令示例:
mount -t 9p -o trans=virtio,version=9p2000.L user1-task1-flag /usr/local/flag
其中,-t 9p 指定驱动类型为9p;user1-task1-flag 对应启动命令中的挂载tag;/usr/local/flag 对应赛题的Flag目录路径。
9.代理服务判断完成注入后将虚拟机信息及Flag注入结果信息返回给竞赛平台;虚拟机系统启动后可由启动脚本创建一个固定名称的文件到挂载的目录中,代理服务检测到这个文件即认为注入成功,注入成功后代理服务会对虚拟机当前状态打一个快照,以备后续选手的重建操作。
10. 若选手因一些破坏性的操作导致赛题环境损坏时,可以在竞赛平台上点击重建赛题环境。选手还原赛题虚拟机环境时会根据竞赛平台数据库中记录的绑定关系直接在对应的计算节点上重建赛题虚拟机环境,即对赛题虚拟机进行快照恢复操作。
11. 代理服务在收到重建环境请求时,会判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。代理服务可根据之前创建的固定名称的文件及虚拟机快照来判断是否注入成功,如果文件及虚拟机快照存在,则直接进行快照恢复操作;否则就按照步骤4-9的流程创建赛题虚拟机环境并注入Flag信息。
基于相同的发明构思,本发明实施例公开的 一种基于文件系统的竞赛平台动态Flag注入系统,包括:竞赛平台赛题管理模块,至少一个容置赛题环境虚拟机的计算节点,以及部署在计算节点上的代理服务模块;竞赛平台赛题管理模块,用于在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;以及生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务模块;代理服务模块,用于在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;以及根据挂载信息生成启动命令并启动赛题环境虚拟机,并判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台;赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录。
此外,竞赛平台赛题管理模块,还用于在接收到参赛选手还原其赛题环境时,根据记录的绑定关系将重建请求发送到对应的计算节点上的代理服务模块;代理服务模块,还用于在接收到重建赛题环境的请求时,判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
基于相同的发明构思,本发明另一实施例公开的一种基于文件系统的竞赛平台动态Flag注入系统,包括:竞赛平台服务器,以及,至少一个用于容置赛题环境虚拟机的计算节点服务器。其中竞赛平台服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被加载至处理器时实现如下步骤:
在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的计算机程序。
计算节点服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被加载至处理器时实现如下步骤:
在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;根据挂载信息生成启动命令并启动赛题环境虚拟机;所述赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
上述系统实施例的具体实现细节,参见上述方法实施例部分,此处不再赘述。

Claims (10)

1.一种基于文件系统的竞赛平台动态Flag注入方法,其特征在于,包括如下步骤:
竞赛平台在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;
竞赛平台生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务;
代理服务根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;
代理服务修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;
代理服务根据挂载信息生成启动命令并启动赛题环境虚拟机;
赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;
代理服务判断Flag是否注入成功,并将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
2.根据权利要求1所述的基于文件系统的竞赛平台动态Flag注入方法,其特征在于,还包括:
竞赛平台在接收到参赛选手还原其赛题环境时,根据记录的绑定关系,将重建请求发送到对应的计算节点上的代理服务;
代理服务判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
3.根据权利要求1所述的基于文件系统的竞赛平台动态Flag注入方法,其特征在于,在代理服务判断Flag注入成功后,为赛题环境虚拟机创建快照,以备后续选手的重建操作。
4.根据权利要求1所述的基于文件系统的竞赛平台动态Flag注入方法,其特征在于,同一计算节点上启动多个赛题环境虚拟机。
5.根据权利要求1所述的基于文件系统的竞赛平台动态Flag注入方法,其特征在于,竞赛平台与赛题环境虚拟机网络不连通。
6.根据权利要求1所述的基于文件系统的竞赛平台动态Flag注入方法,其特征在于,赛题环境虚拟机在挂载写有Flag信息的目录时,指定文件系统格式为9P文件系统。
7.一种基于文件系统的竞赛平台动态Flag注入系统,其特征在于,包括:竞赛平台赛题管理模块,至少一个容置赛题环境虚拟机的计算节点,以及部署在计算节点上的代理服务模块;
所述竞赛平台赛题管理模块,用于在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;以及生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的代理服务模块;
所述代理服务模块,用于在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;以及根据挂载信息生成启动命令并启动赛题环境虚拟机,并判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台;
所述赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录。
8.根据权利要求7所述的基于文件系统的竞赛平台动态Flag注入系统,其特征在于,所述竞赛平台赛题管理模块,还用于在接收到参赛选手还原其赛题环境时,根据记录的绑定关系将重建请求发送到对应的计算节点上的代理服务模块;所述代理服务模块,还用于在接收到重建赛题环境的请求时,判断计算节点的Flag是否已注入成功,如果已注入成功则直接使用计算节点本地的Flag目录进行挂载。
9.根据权利要求7所述的基于文件系统的竞赛平台动态Flag注入系统,其特征在于,所述代理服务模块,在判断Flag注入成功后,为赛题环境虚拟机创建快照,以备后续选手的重建操作。
10.一种基于文件系统的竞赛平台动态Flag注入系统,其特征在于,包括:竞赛平台服务器,至少一个用于容置赛题环境虚拟机的计算节点服务器;所述竞赛平台服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下步骤:
在接收到参赛选手启动所选题目对应的赛题环境时,选择一个计算节点并记录选手、赛题和计算节点的绑定关系;
生成赛题环境对应的Flag,并将虚拟机创建请求及生成的Flag信息、挂载信息发送到对应计算节点上的计算机程序;
所述计算节点服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下步骤:
在接收到赛题环境虚拟机创建的请求时根据选手及赛题信息创建待挂载的目录,将记录Flag信息的文件写入到待挂载的目录中;
修改赛题环境虚拟机镜像的开机启动脚本,写入目录挂载命令;
根据挂载信息生成启动命令并启动赛题环境虚拟机;所述赛题环境虚拟机启动完成后根据新启动脚本自动挂载计算节点上对应的目录;
判断Flag是否注入成功,将赛题环境虚拟机信息及Flag注入结果返回给竞赛平台。
CN202110905833.2A 2021-08-09 2021-08-09 一种基于文件系统的竞赛平台动态Flag注入方法及系统 Active CN113342479B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110905833.2A CN113342479B (zh) 2021-08-09 2021-08-09 一种基于文件系统的竞赛平台动态Flag注入方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110905833.2A CN113342479B (zh) 2021-08-09 2021-08-09 一种基于文件系统的竞赛平台动态Flag注入方法及系统

Publications (2)

Publication Number Publication Date
CN113342479A true CN113342479A (zh) 2021-09-03
CN113342479B CN113342479B (zh) 2021-11-26

Family

ID=77481089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110905833.2A Active CN113342479B (zh) 2021-08-09 2021-08-09 一种基于文件系统的竞赛平台动态Flag注入方法及系统

Country Status (1)

Country Link
CN (1) CN113342479B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373417A (zh) * 2015-11-04 2016-03-02 浪潮(北京)电子信息产业有限公司 一种云计算下虚拟机管理的方法及系统
CN106874245A (zh) * 2017-02-15 2017-06-20 南京赛宁信息技术有限公司 一种CTF在线竞赛平台动态Flag处理方法及装置
CN106909432A (zh) * 2017-02-15 2017-06-30 南京赛宁信息技术有限公司 一种ctf在线竞赛平台的在线环境智能部署系统及方法
CN107172127A (zh) * 2017-04-21 2017-09-15 北京理工大学 基于多代理的信息安全技术竞赛过程监控方法
CN111209089A (zh) * 2020-02-28 2020-05-29 杭州师范大学 一种基于Docker容器的CTF竞赛在线环境类题目安全部署方法
CN111786983A (zh) * 2020-06-24 2020-10-16 国家计算机网络与信息安全管理中心 一种虚拟化攻防对抗环境构建方法
US20210067541A1 (en) * 2019-09-04 2021-03-04 Haiku, Inc. System and method for cyber training

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373417A (zh) * 2015-11-04 2016-03-02 浪潮(北京)电子信息产业有限公司 一种云计算下虚拟机管理的方法及系统
CN106874245A (zh) * 2017-02-15 2017-06-20 南京赛宁信息技术有限公司 一种CTF在线竞赛平台动态Flag处理方法及装置
CN106909432A (zh) * 2017-02-15 2017-06-30 南京赛宁信息技术有限公司 一种ctf在线竞赛平台的在线环境智能部署系统及方法
CN107172127A (zh) * 2017-04-21 2017-09-15 北京理工大学 基于多代理的信息安全技术竞赛过程监控方法
US20210067541A1 (en) * 2019-09-04 2021-03-04 Haiku, Inc. System and method for cyber training
CN111209089A (zh) * 2020-02-28 2020-05-29 杭州师范大学 一种基于Docker容器的CTF竞赛在线环境类题目安全部署方法
CN111786983A (zh) * 2020-06-24 2020-10-16 国家计算机网络与信息安全管理中心 一种虚拟化攻防对抗环境构建方法

Also Published As

Publication number Publication date
CN113342479B (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
CN106909432B (zh) 一种ctf在线竞赛平台的在线环境智能部署系统及方法
CN106874245B (zh) 一种CTF在线竞赛平台动态Flag处理方法及装置
CN112363795B (zh) 一种网络安全实训平台虚拟机快速启动方法与系统
CN111209089B (zh) 一种ctf竞赛在线环境类题目安全部署方法
CN105404539A (zh) 客户端游戏向网页游戏移植的方法、网页游戏系统及终端
CN108786115B (zh) 基于透明代理生成CTF动态Flag的方法及系统
CN106075911B (zh) 一种网页游戏微端的生成方法及装置
CN113342479B (zh) 一种基于文件系统的竞赛平台动态Flag注入方法及系统
CN111385294A (zh) 数据处理方法、系统、计算机设备和存储介质
CN114741695A (zh) 一种恶意代码监控方法、装置、电子设备及存储介质
CN110308951A (zh) 一种启动界面卡顿的处理方法及装置、设备、存储介质
CN108494864A (zh) 一种数据处理方法、装置和机器可读存储介质
CN113535535A (zh) 游戏服务器的测试方法、装置、系统和计算机存储介质
CN111586438B (zh) 一种业务数据的处理方法、装置及系统
CN116881145A (zh) 基于流量回放的接口测试方法、装置、设备以及存储介质
CN110908821B (zh) 任务失败管理的方法、装置、设备和存储介质
KR101665041B1 (ko) 게임 서버의 종료 처리 방법 및 시스템
CN108579093B (zh) 目标进程的运行保护方法、装置及可读介质
CN103905475B (zh) 网络应用客户端的回放方法和系统
CN113221083A (zh) 一种能够提升服务器性能的区块链用户会话缓存方法
CN101751513A (zh) 基于分布式服务器的回合制网络游戏的实现方法
CN109361540A (zh) 一种自精简功能的测试方法及相关装置
CN115834567B (zh) 一种vue组件的图片上传方法及系统
KR101870256B1 (ko) 온라인 게임의 플레이 데이터를 이용한 멀티미디어 컨텐츠 생성 장치 및 그 방법
CN115640061A (zh) 一种数据处理方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant