Docker练习及在CTFd平台上放题目

本文是作者使用Docker进行CTFd平台环境部署的练习记录,通过复现SUSCTF 2018的题目,体验Docker的强大。文章详述了如何利用Dockerfile搭建题目,以及在CTFd平台上发布和编辑Markdown格式的题目。

前言

这篇文章算是Docker学习还有CTFd平台搭建后的练习吧,毕竟都是用的dockerfile

正文

这里我复现的题目是SUSCTF 2018的题目,下面是github地址
https://github.com/susers/Writeups/

这里我是利用了dockerfile去尝试把各个web题目复现一遍,深刻感受到docker的强大

总结一下我用的频率最多的是这两句话

docker build -t=镜像名字 .
docker run --name=容器名字 -p 9999:22  -d 镜像名 

第一句话的.指的是当前目录下的Dockfile文件,每一个都执行一下
下图是我搭好的题目
CIaUHA.png

然后就快乐地做题了,打开192.168.1.103:4440这里是虚拟机的地址,回显题目,成功
CIar38.png

再来继续上一篇搭好CTFd平台的博客内容,来放题目,第一个创建的是管理员账号,然后点击右上角

### 关于CTFd插件的相关信息 CTFd 是一款流行的开源 Capture The Flag (CTF) 平台,支持通过插件扩展其功能。虽然提供的引用未直接涉及 CTFd 插件的内容,但可以根据已知的专业知识以及常见的实践方法来解答。 #### 什么是 CTFd 插件? CTFd 提供了一种灵活的机制允许开发者通过 Python 和 Flask 扩展平台的功能。插件通常用于自定义比赛逻辑、集成外部服务或增强用户体验。官方文档提供了详细的指导[^4],帮助开发者了解如何构建和部插件。 #### 如何安装 CTFd 插件? 要安装 CTFd 插件,可以通过以下方式实现: - **手动安装**:将插件文件置到 `CTFd/plugins` 目录下,确保该目录被正确加载。 - **pip 安装**:如果插件已经发布至 PyPI,则可以直接使用 pip 工具进行安装。 以下是安装插件的一个简单示例命令: ```bash pip install ctfd-plugin-example ``` #### 创建自己的 CTFd 插件 创建一个新的 CTFd 插件需要遵循一定的结构和约定。下面是一个基本的模板代码片段: ```python from CTFd.plugins import register_plugin_assets_directory from flask import Blueprint def load(app): # 注册蓝图 app.register_blueprint(plugin_blueprint) # 加载静态资源 register_plugin_assets_directory(app, base_path="/plugins/example/assets/") plugin_blueprint = Blueprint( "example", __name__, template_folder="templates", static_folder="assets" ) ``` 此脚本展示了如何注册一个简单的蓝图加载静态资产[^5]。 #### 常见用途 一些典型的 CTFd 插件应用场景包括但不限于: - 添加新的题目类型(例如动态分数题目)。 - 集成第三方认证系统。 - 实现自动化评分或其他复杂业务逻辑。 --- ###
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值