CTF本地靶场搭建——GZ:CTF基础使用

简介: GZ::CTF是一个基于ASP.NET Core的开源CTF竞赛平台,支持Docker或K8s容器部署,提供静态和动态题目类型,包括静态附件、动态附件、静态容器和动态容器,具备动态分值功能,如三血奖励和动态flag作弊检测。平台还具有实时通知、邮件验证、用户权限管理、Writeup收集、流量代理转发等功能。此外,它包含比赛管理、队伍管理、用户管理等多个管理模块,适合举办和参与网络安全竞赛。

GZ::CTF 是一个基于 ASP.NET Core 的开源 CTF 平台。

简介

GZ::CTF 是一个基于 ASP.NET Core 的开源 CTF 平台,采用 Docker 或 K8s 作为容器部署后端,提供了可自定义的题目类型、动态容器和动态分值功能。

本项目缘起于作者认为 CTFd 的实现不优雅,动态容器配置需要采用插件的方式,且前端不好看,同时为了办校赛和帮助其他学校的同学办赛,于是自己动手写了一个。

特性

创建高度可自定义的题目

题目类型:静态附件、动态附件、静态容器、动态容器

  • 静态附件:共用附件,任意添加的 flag 均可提交。

  • 动态附件:需要至少满足队伍数量的 flag 和附件,附件及 flag 按照队伍进行分发。

  • 静态容器:共用容器模版,不下发 flag,任意添加的 flag 均可提交。

  • 动态容器:自动生成并通过容器环境变量进行 flag 下发,每个队伍 flag 唯一。

动态分值

分值曲线:

image.png

三血奖励: 平台对一二三血分别奖励 5%、3%、1% 的当前题目分值。

比赛进行中可启用、禁用题目,可多次放题

动态 flag 中启用作弊检测,可选的 flag 模版,leet flag 功能。

分组队伍得分时间线、分组积分榜

其他

基于 Docker 或 K8s 的动态容器分发、管理、多种端口映射方式

基于 SignalR 的实时比赛通知、比赛事件和 flag 提交监控及日志监控

SMTP 邮件验证功能、基于 Google ReCaptchav3 的恶意注册防护

用户封禁、用户三级权限管理

可选的队伍审核、邀请码、注册邮箱限制

平台内 Writeup 收集、查阅、批量下载

可下载导出积分榜、可下载全部提交记录

比赛期间裁判监控、提交和主要事件日志

题目流量 TCP over WebSocket 代理转发、可配置流量捕获

基于 Redis 的集群缓存、基于 PGSQL 的数据库存储后端

面向 Prometheus / OpenTelemetry 的监控和数据追踪

全局配置项自定义、平台标题、备案信息

基础使用

管理员账号进去后如下图所示:

image.png

左侧分为五个功能模块,分别为首页、文章、赛事、队伍、关于、管理

image.png

首页的话没有太多需要介绍的,展示的是置顶文章和最近赛事。

文章栏主要是用来写一些告示内容,一般都是比赛时前几天发一些前情须知和比较大的分析文件的链接(加密的应急响应包啥的)。新建的方式也很简单,填写如下所示即可:

image.png

赛事可以查看所有的比赛情况,包括比赛的细节、排名、得分情况、比赛监控等。

image.png

队伍模块则是集中展示各个参赛队伍的详细信息,可以加入队伍或者创建队伍。

image.png
image.png

管理模块是整个内容的核心部分,其中又包括比赛管理、队伍管理、用户管理、实例管理、系统日志、系统设置。

比赛管理

进入后点击新建比赛,如下位置:

image.png

修改题目为你自己的,再设置对应时间即可。

image.png

填写内容如下,按照自己要求来即可~,修改完点击保存更新。

image.png

同时也可以新增比赛公告,这也比较容易,在此不赘述。

image.png

新增题目是一个重点,也是难点,具体放到后面来单独细说,这里先只看看基础的怎么建。

image.png

点击新建,输入题目名字,下拉选择题目标签和题目类型。

image.png
image.png

像MISC和Crypto一般也都是静态的文件,但是PWN和WEB一般都是动态的了,而如果考察应急响应的话对标之前陇剑杯的题型也是静态文件,但是帕鲁杯时就直接给的大的虚拟机,反正总之,出题方式多种多样。

这里我们选择静态文件。

image.png

然后看难度来给提示吧,如果难就多提示一下,最后预览了没问题保存更改即可,题目就已经更新上去了。

image.png

队伍审核主要是审核参赛队伍的资格。

image.png

writeup是下载所有参赛队伍的wp来进行赛后核验的。

image.png

这几点就是比赛管理中的基础功能。

队伍管理

顾名思义,对队伍进行管理。

image.png

用户管理

对平台注册的用户进行管理。

image.png

实例管理

这个后面会讲到,主要是对动态容器的实例进行查看和管理。

image.png

系统日志

查看所有的日志信息。

image.png

系统设置

可以自己做一些二开的操作,同时设置一些账号策略、容器策略等。

image.png

以上都是管理下的子功能,除去管理外,还有几个个性化的按钮。

image.png

调整文字、界面颜色选择、用户信息查看和登出。

总的来说,GZ:CTF这个开源靶场确实还是制作的非常用心的,比CTFD好用一些,也推荐网络安全的学习者使用这个。

相关文章
|
1月前
|
NoSQL Ubuntu Linux
CTF-Pwn 入门:环境搭建
CTF-Pwn 入门:环境搭建
|
6月前
|
Ubuntu 网络安全 开发者
CTF本地靶场搭建——GZ:CTF安装
GZCTF是一个开源的网络安全竞技平台,由GZTimeWalker维护,提供环境供爱好者和专业人士通过解决CTF题目提升技能。本文档介绍了在Ubuntu 20.04上部署GZCTF的步骤,包括安装操作系统、配置清华镜像源、更新软件、安装Docker和docker-compose,以及根据GZCTF文档创建配置文件并启动服务。完成部署后,用户可在浏览器中看到GZCTF平台。
|
6月前
|
SQL 安全 数据库
SQLI-Labs通关笔记(1-5)
SQLI-Labs通关笔记(1-5)
70 0
|
6月前
|
数据安全/隐私保护
BUUCTF [GUET-CTF2019]KO 1
BUUCTF [GUET-CTF2019]KO 1
81 0
|
安全 Shell PHP
Kira CTF靶机
Kira CTF靶机
99 0
|
安全 测试技术 Shell
CTF竞赛 -- Shellcode学习
CTF竞赛 -- Shellcode学习
228 0
|
安全 数据库连接 PHP
中文版Pikachu web靶机平台搭建指南,英语小白的福音
中文版Pikachu web靶机平台搭建指南,英语小白的福音
541 0
|
安全 Unix Shell
CTF靶场练习
翻了翻自己的文档,看见有一篇之前打CTF练习留下的文章,对文章做了修整,然后正文如下: 开始对目标进行了一波信息搜集,端口只开放了80端口,其他端口并不是很有帮助,不得不提nmap的协议识别功能非常好用,并且还自带扫目录的功能。
182 0
|
安全 Unix Linux
[CTF/网络安全] 攻防世界 php_rce 解题详析
PHP REC ThinkPHP V5漏洞Payload 姿势 总结
378 0
|
网络安全 PHP
[CTF/网络安全] 攻防世界 simple_php 解题详析
PHP弱语言特性 姿势 参数a限制绕过 参数b限制绕过
231 0