ACTF2025 Web Writeup
p0l1st 发表于 浙江 CTF 263浏览 · 2025-04-28 13:17

ACTF upload

随便登录就是普通用户,进去可以上传文件,然后有任意文件读取,先读/app/app.py得到源码

可以看到upload路由这里如果是admin的话会执行os.system(f'base64 {file_path} > /tmp/{file_path}.b64'),存在命令注入,admin的密码解出是backdoor

图片加载失败


那么就可以通过命令注入获取flag名称/Fl4g_is_H3r3,再通过任意文件读取去读flag

not so web 1

CBC字节翻转攻击伪造admin打SSTI就行

首先我们注册的用户对象json格式为

返回给我们的cookie格式为base64(IV + AES(User)) ,可知道我们需要反转的m在User Json格式的第一个AES分组的第15位,根据CBC的特性可知,第一组明文在加密前需要与IV进行异或,那么我们直接翻转IV即可,同时不用考虑翻转后的扩散影响

图片加载失败


not so web 2

鉴权存在问题

base64解码后的username是admin就行

然后还是打SSTI

Excellent-Site

mail注入+sql注入,首先通过/report提交的邮件发送方必须是admin,并且ur必须是http://ezmail.org开头,这样我们通过/bot来请求/admin时会获取指定url的内容,然后通过/news的sql注入我们可以控制页面的回显,最后构造回显为SSTI Payload来使/admin触发

图片加载失败


eznote

/report路由这里未对url进行处理,url会直接传入bot.js的visit

通过js伪协议打XSS将nots外带,然后获取note/:noteId中的flag

图片加载失败


属于非预期

0 条评论
某人
表情
可输入 255

没有评论