PolarCTF2026秋季赛
本文最后更新于 2026年9月6日 中午
第一次全方向打PolarCTF,一天做下来真的好累
Web
php反序列
非常简单的反序列化
1 | |

迷宫
走到终点然后在控制台修改steps即可

贪吃蛇
查看源代码,游戏结束后会向api.php发包程序,直接自己手动发包一个很大的score即可

消消乐
游戏不是很难,直接通关了

打赏
注释里有QD2AHXMGSJMMG2NM

1 | |

打地鼠
过于脑洞了。第十次打地鼠达到100分之后响应头会出现一个X-Flag-Key

然后访问index.php?flag_key=cafebabe2024secret 即可
guess
备忘卡片会进行渲染,上传主题包后自动解压,这里又给出了它们的路径

我们可以制作一个压缩包,利用路径穿越覆盖memo.html
1 | |
cryweb
ticket不是常用的加密算法,很难猜出来,这里贴一下AI的解释
- 信息收集:首页提示“通行证是加密的,不是签名的”(可篡改、无完整性校验)、“游客和管理员身份字段长度一样”(
guest和admin都是 5 个字母,翻转后不会破坏格式)。 - 领取游客通行证:登录后拿到 86 字符的 base64url Cookie,解码为 64 字节。明文结构由 profile.php 的调试回显得知:
uid=1001&name=ctfer&role=guest&level=1(38 字节,PKCS7 填充到 48 字节),剩余 16 字节即 IV 拼在密文最前面(同一名字两次领取密文完全不同,排除了 ECB)。 - 构造攻击:CBC 模式下解密满足
P_n = D(C_n) XOR C_{n-1}。明文第二块fer&role=guest&l中的guest位于块内偏移 9–13,只需把前一个密文块的同偏移字节与guest⊕admin异或,解密后该块就变成fer&role=admin&l(副作用是第一个块uid/name会解密成乱码,但不影响 role 的解析)。
1 | |
Cry
hiller
根据题目名称是希尔密码,找个在线工具解密即可

基础数学
1 | |
Misc
letter
零宽二进制隐写,使用我优化过的CTF编码工具可以一把梭

我的光标去哪了
terminal.bin 是含 ANSI 光标控制序列的终端录制。我们直接用python离线渲染。
1 | |

PolarCTF2026秋季赛
https://www.sunynov.top/2026/09/05/PolarCTF2026秋季赛/