[ctf.show]签到_观己

进入题目,显示了源码,其中对于file参数中检测是否包含php字符串,大小写不敏感。

[ctf.show]签到_观己

所以伪协议 php://input 等无法使用

 

测试了一下data://伪协议,结果显示目标服务器配置中关闭了这个伪协议

[ctf.show]签到_观己

从服务器返回的响应头中可以知道服务器是nginx服务器

[ctf.show]签到_观己

nginx服务器的访问日志文件路径是 /var/log/nginx/access.log

尝试包含了一下日志文件,成功

[ctf.show]签到_观己

访问日志文件记录了服务器收到的每一次请求的 IP、访问时间、URL、User-Agent,这4项中的前两项的值都是我们无法控制的,我们只能在自己可以控制的字段上做手脚,其中URL字段由于URL编码的存在,空格等一些符号无法包含其中,而User-Agent则不会被进行任何二次处理,我们发什么内容,服务器就将其原封不动的写入日志。

我们写入一个一句话木马。

[ctf.show]签到_观己

我们再次访问尝试包含这个日志,发现某次请求的User-Agent字段处只有一个 66666666,说明我们填的木马字符串成功被解析成了php代码

[ctf.show]签到_观己

我们把这个地址丢进antSword,发现连接成功。在根目录下找到了flag.txt

[ctf.show]签到_观己

 

[ctf.show]签到_观己