ISCTF2025
Web
b@by n0t1ce b0ard
打开靶机进入注册界面
发现可以进行文件上传,因此存在文件上传漏洞。
构造一句话木马
1 | |
随意输入账号密码,并上传我们的木马,页面提示注册成功并返回一句警告
由于比赛有提供网页后端代码,因此打开registration.php直接获取上传文件存储路径,即images/注册所用邮箱/所上传文件名
1 | |
利用中国蚁剑进行链接,成功获取flag
难过的bottle
查看后端代码,发现黑名单限制,由于是bottle模型,因此利用斜体字构造stti绕过
1 | |
创建文本文本档输入{{𝑜𝑝𝑒𝑛('/flag').𝑟𝑒𝑎𝑑()}}保存后压缩成zip上传,查看,成功获取flag
flag?我就借走了
利用软连接创建tar上传
成功上传,查看flag
来签个到吧
通过 index.php 的 POST 参数 shark 提交构造好的序列化字符串
访问 api.php 传入记录id,查询数据库中的序列化字符串并反序列化,得到 flag。
misc
阿利维亚的传说
下载附件,修改后缀为zip解压,打开第一个word文档,检查发现存在隐藏文字
利用ctrl+A选中全文档,在字体中关闭隐藏,出现谕言1
利用stegsolve查看附件中的图片,发现异常片段
将其base64解码后得到谕言2
利用010 Editor查看图片,发现末尾藏着一个压缩文件,其中包含flag3.txt
将其提取后发现解压需要密码,利用工具爆破后得到密码
成功得到谕言3
将三则谕言组合起来,从上往下读得到flag
1 | |
Guess
秒了!
湖心亭看雪
利用随波逐流工具得到图片附加内容,发现是一个头部残缺的压缩包,将其补全利用工具还原成压缩包,发现解压需要密码。查看另一个python附件
1 | |
解出a=b’15ctf2025’输入密码成功获取一个flag.txt文件。利用010 Editor查看文件,发现含有大量非同寻常的空格或者制表符,于是判断该文件为snow隐写。
使用snow隐写解码工具解码,得到flag。