CN112269738B - Ctf靶场调试方法、装置、电子设备及介质 - Google Patents
Ctf靶场调试方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN112269738B CN112269738B CN202011156479.XA CN202011156479A CN112269738B CN 112269738 B CN112269738 B CN 112269738B CN 202011156479 A CN202011156479 A CN 202011156479A CN 112269738 B CN112269738 B CN 112269738B
- Authority
- CN
- China
- Prior art keywords
- container
- debugging
- information
- server equipment
- mirror image
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种CTF靶场调试方法、装置、电子设备及介质,涉及网络安全技术领域,用于解决相关技术中由于CTF靶场的调试受运行环境限制使得操作繁琐及在调试或检测出错的情况下检错效率低的问题,其中,该方法包括:服务器设备获取题目镜像;服务器设备根据题目镜像生成第一容器和第二容器;服务器设备接收调试请求,基于调试请求控制第二容器进行调试,并得到调试信息;服务器设备接收比对请求,基于比对请求调取第一容器中与调试信息对应的信息,并记为参考信息。本发明具有不受运行环境的限制、操作简单及检错效率高的优点。
Description
技术领域
本发明涉及网络安全技术领域,尤其是涉及一种CTF靶场调试方法、装置、电子设备及介质。
背景技术
夺旗赛(Capture the Flag,简称CTF),是一种流行的信息安全竞赛形式。其大致流程是,参赛团队之间通过进行攻防对抗、程序分析等形式,率先从比赛环境中得到一串字符串或其他内容,并将其提交平台夺得分数,提交的内容简称为“Flag”。
在相关技术中,CTF靶场通常在完成本地调试之后还要进行联网检测,一方面,由于运行环境的改变,导致调试后的CTF靶场在进行联网检测时可能存在问题;另一方面,在调试或检测出错的情况下,工作人员需要检查代码以寻找问题,导致花费了大量的时间。
目前针对相关技术中由于CTF靶场的调试受运行环境限制使得操作繁琐及在调试或检测出错的情况下检错效率低的问题,尚未提出有效的解决方案。
发明内容
为了克服相关技术的不足,本发明的目的在于提供一种CTF靶场调试方法、装置、电子设备及介质,其具有不受运行环境的限制、操作简单及检错效率高的优点。
本发明的目的之一采用如下技术方案实现:
一种CTF靶场调试方法,所述方法包括:
服务器设备获取题目镜像;
所述服务器设备根据所述题目镜像生成第一容器和第二容器;
所述服务器设备接收调试请求,基于所述调试请求控制所述第二容器进行调试,并得到调试信息;
所述服务器设备接收比对请求,基于所述比对请求调取所述第一容器中与所述调试信息对应的信息,并记为参考信息。
在其中一些实施例中,在所述服务器设备得到所述调试信息和所述参考信息之后,所述方法还包括:
所述服务器设备接收调试成功信号,并响应所述调试成功信号根据所述第二容器生成临时镜像;
所述服务器设备删除所述第一容器、所述第二容器以及所述题目镜像,并将所述临时镜像变更为所述题目镜像。
在其中一些实施例中,在所述服务器设备得到所述调试信息和所述参考信息之后,所述方法还包括:
所述服务器设备接收调试失败信号,并响应所述调试失败信号删除所述第一容器和所述第二容器。
在其中一些实施例中,在所述服务器设备得到所述调试信息和所述参考信息之后,所述方法还包括:
所述服务器设备根据参考信息生成时间得到第一时间,并在第一时间时控制所述第一容器关闭;
所述服务器设备根据调试信息生成时间得到第二时间,并在第二时间时控制所述第二容器关闭。
在其中一些实施例中,所述服务器设备包括前端和后端,其中,所述前端设置有可视化界面,所述可视化界面显示所述调试信息和所述参考信息。
在其中一些实施例中,所述服务器设备控制所述第二容器进行调试包括:
所述前端基于所述可视化界面生成调试请求;
所述前端将所述调试请求发送至所述第二容器,所述第二容器响应所述调试请求并进行调试。
在其中一些实施例中,在所述服务器设备根据所述题目镜像生成第一容器和第二容器之后,所述方法还包括:
服务器设备判断所述第一容器/所述第二容器启动是否失败,若是,则生成报错log文件,并将所述log文件保存于管理员目录中。
本发明的目的之二采用如下技术方案实现:
一种CTF靶场调试装置,包括:
获取模块,用于服务器设备获取题目镜像;
容器生成模块,用于所述服务器设备根据所述题目镜像生成第一容器和第二容器;
第二模块,用于所述服务器设备接收调试请求,基于所述调试请求控制所述第二容器进行调试,并得到调试信息;
第一模块,用于所述服务器设备接收比对请求,基于所述比对请求调取所述第一容器中与所述调试信息对应的信息,并记为参考信息。
本发明的目的之三在于提供执行发明目的之一的电子设备,其包括存储器和处理器,所处存储器中存储有计算机程序,所述处理器被设置为执行所述计算机程序时实现上述的方法。
本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
相比相关技术,本发明的有益效果在于:通过题目镜像得到第一容器和第二容器,而第一容器和第二容器是不受运行环境限制的,因此利用第二容器进行调试可以省去在线检测这一步骤,不仅提高了调试准确度,还具有操作简单的优点;通过设置第一容器和第二容器,并仅针对第二容器进行调试,因此即使在调试过程中出错,也可以比对第一容器得到的参考信息和经由第二容器得到的调试信息,以快速找到错误代码,即提高了检错效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请实施例一所示CTF靶场调试方法的流程图;
图2是本申请实施例二所示第一反馈步骤的流程图;
图3是本申请实施例四所示CTF靶场调试装置的结构框图;
图4是本申请实施例五所示电子设备的结构框图。
附图说明:31、获取模块;32、容器生成模块;33、第二模块;34、第二模块。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
实施例一
本实施例一提供了一种CTF靶场调试方法,旨在解决相关技术中由于CTF靶场调试受运行环境限制使得操作繁琐及在调试或检测出错的情况下检错效率低的问题。
图1是本申请实施例一所示CTF靶场调试方法的流程图,参照图1所示,本方法包括步骤S101至步骤S104。
步骤S101、服务器设备获取题目镜像。在此值得说明的是,该服务器镜像可以存储于服务器设备中,也可以存储于云端,在此不做限定,优选存储于该服务器设备中,以便于调动。该题目镜像是利用docker得到的,该题目镜像是只读不能写的。
步骤S102、服务器设备根据题目镜像生成第一容器和第二容器。在此值得说明的是,服务器设备可以根据题目镜像生成多个容器,该容器均是可读可写的。可以理解,该第一容器和第二容器均是docker容器,且具体数量在此不做限制。
步骤S103、服务器设备接收调试请求,基于调试请求控制第二容器进行调试,并得到调试信息。该调试请求中携带有调试用代码,在此将调试用代码所在的模块记为被调试模块,第二容器针对该调试用代码进行相应的修改后运行,而服务器设备可以调取调试后的第二容器的数据,并得到调试信息。在此还值得说明的是,该调试信息通常是以代码呈现的。该调试信息包含上述的调试用代码。
步骤S104、服务器设备接收比对请求,基于比对请求调取第一容器中与调试信息对应的信息,并记为参考信息。该参考信息也是以代码的呈现的。相应地,参考信息应当包含第一容器中与被调试模块对应的完整代码。
作为可选的技术方案,参考信息为第一容器中与被调试模块对应的完整代码,并记为第一完整代码;调试信息是第二容器中与被调试模块对应的完整代码,并记为第二完整代码;服务器设备自动比对第一完整代码和第二完整代码,以快速对二者的差异处进行定位,以供工作人员查看。
作为可选的技术方案,该参考信息采用第一容器的全部代码,调试信息采用第二容器的全部代码,服务器设备自动比对上述二者,以快速对二者的差异处进行定位,以供工作人员查看,同时还可以了解到调试用代码对其他模块的影响。
综上所示,通过题目镜像得到第一容器和第二容器,而第一容器和第二容器是不受运行环境限制的,因此利用第二容器进行调试可以省去在线检测这一步骤,不仅提高了调试准确度,还具有操作简单的优点;通过设置第一容器和第二容器,并仅针对第二容器进行调试,因此即使在调试过程中出错,也可以比对第一容器得到的参考信息和经由第二容器得到的调试信息,以快速找到错误代码,即提高了检错效率。
可以理解,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例二
本实施例二提供了一种CTF靶场调试方法,本实施例二是在实施例一的基础上进行的。本方法还可以包括第一反馈步骤,该第一反馈步骤是在步骤S104完成之后开始运行。
图2是本申请实施例二所示第一反馈步骤的流程图,参照图1和图2所示,该第一反馈步骤可以包括步骤S201至步骤S202。
步骤S201、服务器设备接收调试成功信号,并响应调试成功信号根据第二容器生成临时镜像。可以理解,该调试信号可以是服务器设备自行生成,也可以是由相应的设备发送,在此不做限定。在此值得说明的是,对于docker而言,一个镜像可以生成多个容器,但是一个容器仅能生成一个镜像。具体地,第二容器可以通过使用docker的commit命令打包并生成一个临时tag的临时镜像。
步骤S202、服务器设备删除第一容器、第二容器以及题目镜像,并将临时镜像变更为题目镜像。在此以第二容器为例进行说明,第二容器可以通过ssh脚本使用docker stopcontainer:tag命令自动关闭,然后服务器设备使用docker rm container:tag命令删除第二容器。可以理解,服务器设备使用docker image:tag命令给临时镜像更名为题目镜像的名字并且使用docker rm image:tag命令删除临时tag,以实现将临时镜像变更为题目镜像。
通过本技术方案,当服务器设备收到调试成功信号时,则说明在线调试成功,即第二容器对应的靶场优于原先的靶场,因此,需要执行相应镜像的替换,从而实现靶场的可在线调试。
作为可选的技术方案,第一反馈步骤还可以包括以下步骤:服务器设备接收调试失败信号,并响应调试失败信号删除第一容器和第二容器。在此值得说明的是,该步骤中的调试失败信号与步骤S201中的调试成功信号是互斥的,该调试失败信号也可以是服务器设备自行生成,也可以是由相应的设备发送,在此不做限定。该第一容器和第二容器的删除具体可以参考步骤S202中的相关说明,在此不具体赘述。
通过本技术方案,当服务器设备收到调试失败信号时,则说明调试失败,即第二容器对应的靶场劣于原先的靶场,因此,并不需要执行进行靶场的修改,即该调试过程可以视为可逆的,其解决了相关技术中调试不可逆的问题。
作为可选的技术方案,由于第二容器经过调试之后,可以给出调试信息,后续无论是人工比对还是自动比对,均不需要第一容器和第二容器的参与,因此,可以关闭第一容器和第二容器以减少其占用的内容。
具体地,服务器设备根据参考信息生成时间得到第一时间,并在第一时间时控制第一容器关闭。服务器设备根据调试信息生成时间得到第二时间,并在第二时间时控制第二容器关闭。该第一容器和第二容器的关闭可以参照上述步骤S202中的相关说明,在此不做赘述。
该参考信息生成时间和第一时间之间的运算关系在此不做限定,只要第一时间等于或大于参考信息生成时间即可,相应地,第二时间大于或等于调试信息生成时间即可。第一时间与第二时间优选设置相同,以实现同步关闭第一容器和第二容器。
实施例三
本实施例三提供一种CTF靶场调试方法,本实施例三在实施例一和/或实施例二的基础上进行的。
该服务器设备可以包括前端和后端,其前端与后端通信连接,生成的第一容器和第二容器与前端通信连接,第一容器和第二容器还与后端通信连接。在此值得说明的是,前端具有可视化界面,第一容器和第二容器均可以通过debug参数将相应的代码打印在前端的可视化界面上,即相应的调试信息和参考信息可以显示于可视化界面。
对于后端与第二容器的关系,在此进行说明,第二容器开启ssh模块,通过22端口连接至后端,ssh模块使用随机生成的强密码保证连接安全,后端的os模块接收前端的调试用代码并且通过ssh模块传入第二容器内部达到调用的效果,第二容器内部的回显同样使用ssh模块连接到后端并且同样使用os模块打印在前端。
作为可选的技术方案,步骤S103中的服务器设备控制第二容器进行调试包括以下步骤:前端基于可视化界面生成调试请求,即工作人员在可视化界面中输入调试用代码,前端生成携带有该调试用代码的调试请求;前端将调试请求发送至第二容器,第二容器响应调试请求并进行调试。在此值得说明的是,上述实施例二中的调试成功信号和调试失败信号均是基于前端生成的,其他的程序处理等步骤则是在后端执行的。
在此值得说明的是,在相关技术中,通常由后端进行代码修改,但是若本申请中也经由后端进行第二容器的修改,会导致后端强制运转而损伤,因此,在本申请中从前端向第二容器上传调试用代码,即后端并未读取该调试用代码,以减少对后端的伤害,以提高该服务器设备的整体寿命。
作为可选的技术方案,该方法还包括报错步骤,该报错步骤具体是在步骤S102之后、步骤S103和步骤S104之前执行。具体地,该报错步骤包括:服务器设备判断第一容器/第二容器启动是否失败,若是,则生成报错log文件,并将log文件保存于管理员目录中,以供工作人员下载。可以理解,经由步骤S102得到的第一容器和第二容器为均可启动,或均不可启动,因此只需要对第一容器和第二容器中的任意一个判断即可。
在此值得说明的是,若第一容器/第二容器启动失败,则无法执行步骤S103和步骤S104。上述的报错log文件是后端基于cp命令复制docker自动生成并保存的。
实施例四
本实施例四提供一种CTF靶场调试装置,其为上述实施例的虚拟装置结构。图3是本申请实施例四所示CTF靶场调试装置的结构框图,参照图3所示,该装置包括:获取模块31、容器生成模块32、第二模块33、第二模块34。
获取模块31,用于服务器设备获取题目镜像;
容器生成模块32,用于服务器设备根据题目镜像生成第一容器和第二容器;
第二模块33,用于服务器设备接收调试请求,基于调试请求控制第二容器进行调试,并得到调试信息;
第一模块34,用于服务器设备接收比对请求,基于比对请求调取第一容器中与调试信息对应的信息,并记为参考信息。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
实施例五
本实施例五提供了一种电子设备,图4是本申请实施例五所示电子设备的结构框图,参照图4所示,该电子设备包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行实现上述实施例中的任意一种CTF靶场调试方法,具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
另外,结合上述实施例中的CTF靶场调试方法,本申请实施例五可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种CTF靶场调试方法,该方法包括:
服务器设备获取题目镜像;
服务器设备根据题目镜像生成第一容器和第二容器;
服务器设备接收调试请求,基于调试请求控制第二容器进行调试,并得到调试信息;
服务器设备接收比对请求,基于比对请求调取第一容器中与调试信息对应的信息,并记为参考信息。
如图4所示,以一个处理器为例,电子设备中的处理器、存储器、输入装置和输出装置可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器作为一种计算机可读存储介质,可以包括高速随机存取存储器、非易失性存储器等,可用于存储操作系统、软件程序、计算机可执行程序和数据库,如本发明实施例一的CTF靶场调试方法对应的程序指令/模块,还可以包括内存,可用于为操作系统和计算机程序提供运行环境。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。
处理器用于提供计算和控制能力,可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。处理器通过运行存储在存储器中的计算机可执行程序、软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现实施例一的CTF靶场调试方法。
该电子设备的输出装置可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
该电子设备还可包括网络接口/通信接口,该电子设备的网络接口用于与外部的终端通过网络连接通信。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)、DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
值得注意的是,在该CTF靶场调试方法的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种CTF靶场调试方法,其特征在于,所述方法包括:
服务器设备获取题目镜像;
所述服务器设备根据所述题目镜像生成第一容器和第二容器;
所述服务器设备接收调试请求,所述调试请求携带有调试用代码,所述第二容器针对所述调试用代码进行相应的修改后运行,所述服务器设备调取调试后的第二容器的数据,得到调试信息;
所述服务器设备接收比对请求,基于所述比对请求调取所述第一容器中与所述调试信息对应的信息,并记为参考信息,自动比对所述调试信息和所述参考信息,获得差异信息;
所述服务器设备接收调试成功信号,并响应所述调试成功信号根据所述第二容器生成临时镜像;
所述服务器设备删除所述第一容器、所述第二容器以及所述题目镜像,并将所述临时镜像变更为所述题目镜像。
2.根据权利要求1所述的方法,其特征在于,在所述服务器设备得到所述调试信息和所述参考信息之后,所述方法还包括:
所述服务器设备接收调试失败信号,并响应所述调试失败信号删除所述第一容器和所述第二容器。
3.根据权利要求2所述的方法,其特征在于,在所述服务器设备得到所述调试信息和所述参考信息之后,所述方法还包括:
所述服务器设备根据参考信息生成时间得到第一时间,并在第一时间时控制所述第一容器关闭;
所述服务器设备根据调试信息生成时间得到第二时间,并在第二时间时控制所述第二容器关闭。
4.根据权利要求1所述的方法,其特征在于,所述服务器设备包括前端和后端,其中,所述前端设置有可视化界面,所述可视化界面显示所述调试信息和所述参考信息。
5.根据权利要求4所述的方法,其特征在于,所述服务器设备控制所述第二容器进行调试包括:
所述前端基于所述可视化界面生成调试请求;
所述前端将所述调试请求发送至所述第二容器,所述第二容器响应所述调试请求并进行调试。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,在所述服务器设备根据所述题目镜像生成第一容器和第二容器之后,所述方法还包括:
所述服务器设备判断所述第一容器/所述第二容器启动是否失败,若是,则生成报错log文件,并将所述log文件保存于管理员目录中。
7.一种CTF靶场调试装置,其特征在于,包括:
获取模块,用于服务器设备获取题目镜像;
容器生成模块,用于所述服务器设备根据所述题目镜像生成第一容器和第二容器;
第二模块,用于所述服务器设备接收调试请求,所述调试请求携带有调试用代码,所述第二容器针对所述调试用代码进行相应的修改后运行,所述服务器设备调取调试后的第二容器的数据,得到调试信息;
第一模块,用于所述服务器设备接收比对请求,基于所述比对请求调取所述第一容器中与所述调试信息对应的信息,并记为参考信息,自动比对所述调试信息和所述参考信息,获得差异信息;
所述服务器设备接收调试成功信号,并响应所述调试成功信号根据所述第二容器生成临时镜像;
所述服务器设备删除所述第一容器、所述第二容器以及所述题目镜像,并将所述临时镜像变更为所述题目镜像。
8.一种电子设备,其包括存储器和处理器,其特征在于,所处存储器中存储有计算机程序,所述处理器被设置为执行所述计算机程序时实现权利要求1至6中任意一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011156479.XA CN112269738B (zh) | 2020-10-26 | 2020-10-26 | Ctf靶场调试方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011156479.XA CN112269738B (zh) | 2020-10-26 | 2020-10-26 | Ctf靶场调试方法、装置、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112269738A CN112269738A (zh) | 2021-01-26 |
CN112269738B true CN112269738B (zh) | 2023-04-07 |
Family
ID=74341456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011156479.XA Active CN112269738B (zh) | 2020-10-26 | 2020-10-26 | Ctf靶场调试方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112269738B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783342A (zh) * | 2017-11-10 | 2019-05-21 | 华为技术有限公司 | 脚本调试方法、设备及计算机存储介质 |
CN110399307A (zh) * | 2019-07-31 | 2019-11-01 | 网宿科技股份有限公司 | 一种测试方法、测试平台及目标服务器 |
CN111382079A (zh) * | 2020-03-16 | 2020-07-07 | 北京云宽志业网络技术有限公司 | 应用程序现场还原的方法、装置、设备及存储介质 |
US10735430B1 (en) * | 2019-04-22 | 2020-08-04 | Cyberark Software Ltd. | Systems and methods for dynamically enrolling virtualized execution instances and managing secure communications between virtualized execution instances and clients |
CN111736921A (zh) * | 2020-06-28 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 服务配置方法、装置、设备及计算机可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3688593B1 (en) * | 2017-09-30 | 2022-06-22 | Oracle International Corporation | Real-time debugging instances in a deployed container platform |
CN108874674A (zh) * | 2018-06-21 | 2018-11-23 | 北京金山安全软件有限公司 | 页面调试方法及装置 |
JP7197783B2 (ja) * | 2019-01-11 | 2022-12-28 | 富士通株式会社 | 情報処理システム、管理装置および管理プログラム |
CN110704324B (zh) * | 2019-09-30 | 2023-11-10 | 聚好看科技股份有限公司 | 应用调试方法、装置及存储介质 |
CN111045783B (zh) * | 2019-11-20 | 2023-12-15 | 东软集团股份有限公司 | 生成容器镜像的方法、装置、存储介质及电子设备 |
-
2020
- 2020-10-26 CN CN202011156479.XA patent/CN112269738B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783342A (zh) * | 2017-11-10 | 2019-05-21 | 华为技术有限公司 | 脚本调试方法、设备及计算机存储介质 |
US10735430B1 (en) * | 2019-04-22 | 2020-08-04 | Cyberark Software Ltd. | Systems and methods for dynamically enrolling virtualized execution instances and managing secure communications between virtualized execution instances and clients |
CN110399307A (zh) * | 2019-07-31 | 2019-11-01 | 网宿科技股份有限公司 | 一种测试方法、测试平台及目标服务器 |
CN111382079A (zh) * | 2020-03-16 | 2020-07-07 | 北京云宽志业网络技术有限公司 | 应用程序现场还原的方法、装置、设备及存储介质 |
CN111736921A (zh) * | 2020-06-28 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 服务配置方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112269738A (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020119434A1 (zh) | 接口数据处理方法、自动化测试方法、装置、设备和介质 | |
CN110008129B (zh) | 一种存储定时快照的可靠性测试方法、装置及设备 | |
CN111680008B (zh) | 日志处理方法、系统、可读存储介质及智能设备 | |
CN108491322A (zh) | 自动化测试方法、装置及存储介质 | |
CN109189686A (zh) | 自动化回归测试方法、装置、存储介质和计算机设备 | |
CN110908909A (zh) | 自动化测试方法、装置、存储介质及设备 | |
CN112579455B (zh) | 一种接口自动化测试方法、装置、电子设备及存储介质 | |
US20190149571A1 (en) | Method and device for repairing page vulnerability | |
US20140215279A1 (en) | Scalable structured data store operations | |
CN115982049A (zh) | 性能测试中的异常检测方法、装置和计算机设备 | |
CN110147354B (zh) | 批量数据编辑方法、装置、计算机设备及存储介质 | |
CN113094251A (zh) | 嵌入式系统测试方法、装置、计算机设备和存储介质 | |
CN117130941B (zh) | 基于浏览器插件的接口自动化方法、系统、设备及介质 | |
CN111367869A (zh) | 镜像文件处理方法、装置、存储介质及电子设备 | |
CN108241543B (zh) | 业务操作断点执行的方法、业务服务器及系统 | |
CN117914737A (zh) | 一种网络靶场的镜像资源测试方法及装置 | |
CN112269738B (zh) | Ctf靶场调试方法、装置、电子设备及介质 | |
CN103729269A (zh) | 一种基于云架构的网络考试数据双缓存方法 | |
CN111176986B (zh) | 线程脚本调试方法、装置、计算机设备和存储介质 | |
CN112650674A (zh) | 远程获取、调试网页日志的方法、计算机设备及存储介质 | |
CN111694724B (zh) | 分布式表格系统的测试方法、装置、电子设备及存储介质 | |
CN116302020A (zh) | Fpga的逻辑程序升级方法、装置、设备及介质 | |
CN103312554A (zh) | 一种多服务器交互业务的测试方法及系统 | |
US20220244975A1 (en) | Method and system for generating natural language content from recordings of actions performed to execute workflows in an application | |
CN113238950A (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 |