我正在创建一个 CMS,但我不知道如何编写代码以从命令注入中保存。让我知道我的代码中是否存在 RCE 漏洞。
case 'clearcache':
global $selected_language;
$url= $_REQUEST['url'];
$type = $_REQUEST['type'];
if($type && $type == 'full') {
if($selected_language == 'en'){
exec('curl -X BAN -H "Host: en.mydomain.com" http://0.0.0.0/*',$output,$return);
}else{
exec('curl -X BAN -H "Host: www.mydomain.com" http://0.0.0.0/*',$output,$return);
}
echo $return;
exit;
}else{
$parse_url=parse_url($url);
//echo $parse_url['path'];
if(isset($parse_url['path'])){
if($selected_language == 'en'){
exec('curl -X PURGE -H "Host: en.mydomain.com" http://0.0.0.0'.$parse_url['path'],$output,$return);
}else{
exec('curl -X PURGE -H "Host: www.mydomain.com" http://0.0.0.0'.$parse_url['path'],$output,$return);
}
echo $return;
exit;
}else{
echo "error";
exit;
}
}
break;
}