打印出值是因为执行了系统的echo命令
pwd:系统当前路径 %0a换行
打印出值是因为执行了系统的echo命令
pwd:系统当前路径 %0a换行
config
var dump(sb)
passthru
ecev(string )
shell_exec
ob_start函数
换行符:%0a
回车符:%0b
连续指令:;
后台进程:&
管道符:|
逻辑?: && ||
命令注入相关函数
执行系统命令,linux服务器
0x1 system()
执行系统命令,并将相应结果输出
system('pwd') //路径
system('whoami')
0x2 exec()
命令执行结果,只输出最后一行
0x3 passthru()
0x4 shell_exec
没有回显,需要输出,echo,var_dump
0x5 反引号``
执行系统命令
`ls` `pwd` ``相当于system函数
0x6 ob_start()
绕过技巧
(服务器命令)命令注入:
string system(string command,int &return_var)
可以用来执行系统命令并将相应的执行结果输出
<?php
highlight_file(_FILE_);
system('pwd');
system('whoami');
?>
/var/www/html/rce/demo/SystemCode www-data
命令执行绕过:
<?php
highlight_file(_FILE_);
$rce="echo 123";
system($rce.$_GET[1]);
?>
换行符:%0a
回车符:%0d(没成功)
连续指令: ;
后台进程:&
管道符:|
(逻辑?):|| &&
<符号
$IFS
${IFS}
$IFS$9
%09用于url传递
a=l;b=s;$a$b
`echo d2hvYW1p|base64 -D`
base64编码