2024PolarCTF冬季赛个人WP
1.Misc
1-1 Sign-in questions
本题思路如下:
对mp3文件进行binwalk提取获得一个rar文件
里面有key.txt和公众号二维码
获得flag
1-6 妖精纪元
本题思路如下:
解压发现一个加密的压缩包和一个docx文件
尝试对文档进行binwalk提取,获得2BF5.rar
之后出现一个“凝固的岁月.exe”,打开,发现图标是很明显的Tkinter默认图标,可以判断这是Python程序编译成exe后的结果
随后使用pyinstxtractor-ng.py和pycdc.exe对程序进行逆向
成功后打开x.py,发现有一长串base64编码,分析代码可以得知这是图片的base64编码。
使用在线工具base64转图片,得到图片后用binwalk提取出“走入深渊的辞行.mp3”文件。
使用audacity查看音频文件,可以看出来这是摩尔斯密码,肉眼转成摩尔斯密码
得出压缩包密码:YOU‘VEH@D@1ONGD@Y

2 Crypto
2-3 幂数加密了解一下
本题思路如下:
1 | ciphertext = "44420122088421088810140108442" |

3.Web
3-2 井字棋
本题思路如下:
审计代码后不难发现,只需要修改origboard的值强制把自己的棋子放上即可胜利,因此执行如下代码即可。
1 | origBoard[3]='O'; |
其中下面代码是显示O的,上面是修改结果
3-3 button
本题思路如下:
打开发现是个按不到的按钮,因此看源代码,发现这个位置很可疑,因此尝试进入
打开页面一片空白,发现flag在注释里

4.Pwn
1、bllbl_bind_calc
没有附件,直接手搓脚本
第一次成功发现打520次就能获得flag
Exp:
1 | from pwn import * |
最后几次手打答案能获得flag(不知道为什么总是卡住)
2、tangniu
本题思路如下:
格式化字符串漏洞,偏移为7,用fmtstrpayload,改printf的got表为system的plt表即可
发现打的aaaa(0x61616161)是第七位,因此可以确定偏移为7
Exp:
1 | from pwn import * |

3、stack
本题思路如下:
IDA放进去
1 | __int64 test1() |
如果想要执行指令,那么passwd和v4的值应该为4660,转16进制是0x1234
main函数里面的好写入,直接str(0x1234)即可,
然后看passwd,没有直接的赋值写入,但是test1存在栈溢出,因此利用栈溢出来覆盖return到passwd的地址

exp:
1 | from pwn import * |

- 标题: 2024PolarCTF冬季赛个人WP
- 作者: ljnljn
- 创建于 : 2024-12-08 18:17:00
- 更新于 : 2026-05-25 22:04:46
- 链接: https://ljnljn2005.github.io/2024/12/08/2024PolarCTF冬季赛个人WP/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。