0. 通用要求
- 题目内容须积极向上,符合国家法律法规。
- 必须包含完整的 Writeup,且符合第6点具体要求。优先使用 .md格式, .docx不鼓励;若使用文档,代码请另存为文件,避免格式错误。
- 简述所有考点,Flag 格式尽量使用 bugku{}。
- 附件过大可上传网盘,并在投稿中注明。
- AI 时代提醒:平台不反对 AI 辅助,但 AI 风格过重的题目将严格审核(≈不通过)。题目应体现原创思考与设计巧思。
1. WEB 类型
- 强烈建议提供 Dockerfile及启动脚本 /start.sh;无 Dockerfile 会降低奖励金币。
- 若无可执行环境,请详细说明软件版本(如 Tomcat9 / PHP7.2 / Python3.7)。
- 动态 Flag:通过环境变量 $FLAG注入,写入文件或数据库后请执行 export FLAG=not_flag清除。
- 镜像推荐使用 alpine,暴露 80 端口(其他端口不识别)。
- 错误 Flag 须明示(如 flag{THIS_IS_NOT_FLAG})。
- 数据库请提供 db.sql,勿打包 mysql/data文件夹。
示例 Dockerfile (PHP5.5)
php5.5
FROM php:8.2-apache
EXPOSE 80
RUN rm -rf /var/www/html/*
COPY src/ /var/www/html/
COPY start.sh /start.sh
RUN chmod +x /start.sh && chown -R www-data:www-data /var/www/html
CMD ["/start.sh"]
示例 start.sh
#!/bin/bash
# 启动Web服务
apache2-foreground &
# 写入Flag文件(或执行数据库操作)
echo $FLAG > /flag && chmod 444 /flag
export FLAG=not_flag
# 保持容器运行
tail -f /dev/null
特殊替换:SQL注入场景可使用
create_db_sql="insert into flag(flag) values (${FLAG});"或通过
sed替换静态 flag。
2. PWN 类型
- 必须提供 Dockerfile并注明环境版本(如 Ubuntu16.04 / glibc2.23)。
- 提交源码及 gcc编译命令;如需 glibc 的 .so 请一并打包。
- 动态 Flag:通过环境变量 $FLAG写入文件(如 /home/ctf/flag)。
- 镜像推荐使用 Ubuntu 官方,暴露 9999 端口(其他端口不识别)。
- 尽量使用
ctf账户启动,示例:
RUN useradd -d /home/ctf/ -m -p ctf -s /bin/bash ctf
RUN echo "ctf:ctf" | chpasswd
3. MISC 类型
- 套娃题目尽量 少于5层。
- 不审核本平台已有类型套路题目。
4. RE 类型
- 严禁任何破坏 CTFer 本机的恶意行为,包括但不限于删除文件、格式化硬盘、蠕虫病毒等。
5. CRYPTO 类型
- 支持静态 / 动态 Flag。若为动态,请提供服务端脚本或 Dockerfile,环境变量参考 WEB / PWN。
- 禁止简单套娃:如栅栏+Base64 等无脑组合。
6. Writeup 要求
好题标准:选手解完后会拍大腿,而不是翻白眼
- 明确的知识考点和解题链路
- 难度曲线合理:入口有门槛,后续逐步升高
- 避免“猜谜式”出题(不依赖提示几乎无解)
内容要求:
- 具体的解题步骤— 完整可复现的 WP。
- 最得意的设计点— 你认为最巧妙的构思是什么?
- 选手可能卡在哪一步?预期卡点以及如何引导/解决以进入下一步。
7. 奖励标准
- 简单:30 – 100 金币
- 中等:100 – 200 金币
- 困难:200 – 400 金币 (仅限 Web / PWN / 逆向)
- Writeup 收入:每份 WP 被查看,出题者获得 1 金币。
补充说明
动态flag
原创性
- 所有 WEB 题目 Flag 必须为动态,启动时设置 $FLAG变量,写入后务必 export FLAG=not_flag。
- 投稿题目必须为 原创,不接受原题搬运或其他平台已公布 WP 后简单修改的题目。
- 不满足原创性、缺少 Dockerfile 或 Writeup 不完整将影响审核及奖励。
Bugku 平台 · 期待你的精彩原创题目
评论(9)
Gold Coast 6天前
终于更新了
小竟竟 3月前
不算
笨笨笨蛋 4年前
我顶!!!!
哇哦~ 5年前
顶爆
DawdleD 5年前
请问规范要求第一段中的”简单修改“具体是如何界定的? 比如一道题目我进行了少许修改,致使题目的解法改变了,这算是”简单修改“还是不算?
Jesen 5年前
不算
1998 5年前
好顶支持
5年前
好顶支持
cheyenne 管理员 5年前
好顶支持