2023年“绿盟杯”四川省大学生信息安全技术大赛

pyfile

先check源码,没什么发现,接着进行目录扫描,扫到路径 /download

下载备份文件得到 www.zip,解压得到app.py

大致审一下代码:

在read目录下给file传参进行请求,如果这个东西存在就会读取出来

2023年“绿盟杯”四川省大学生信息安全技术大赛_第1张图片

这里先尝试读一下/etc/passwd,读取成功

payload:

/read?file=/etc/passwd

但是尝试读取其他东西很多都没有成功

这里是没有flag这个文件的,它藏在Linux当前进程的环境变量里

这个东西你知道就会想到去读取它,不知道这个东西存在那就难搞了

构造payload:

/read?file=/proc/self/environ

读取成功即可找到flag 

你可能感兴趣的:(CTF,web,linux,服务器,web安全,环境变量,代码审计)