ctl.template.php :
function saveContent(){
if(strtolower(substr($_POST['file'],-4,4))=='.php') $_POST['file']='index.html';//隻驗證最後4位數
$this->begin('index.php?ctl=system/template&act=edit&p[0]='.$_POST['theme']);
$o = $this->system->loadModel('system/template');
$template=array(
'tpl_name'=>$_POST['file_name'],
'tpl_file'=>$_POST['file'],
'tpl_theme'=>$_POST['theme'],
'tpl_type'=>$_POST['type']
);
利用方法:
構造一個上傳頁面, 送出檔案字尾為 .php5(linux) 或在 .php 後面加上一個空格(windows)就能繞過驗證
這裡附上4.8.4 及 4.8.5 兩個不同版本的上傳頁面:
成功上傳後生成一句話後門 - http://站點/home/cache/t00ls-1.php5
<a href="http://files.cnblogs.com/waw/484-485.zip">484-485.zip (1.2 KB)</a>
<a href="http://files.cnblogs.com/waw/484-485.zip">http://files.cnblogs.com/waw/484-485.zip</a>
Shopex商城獲得shell一法
輸入http://商城網站/install