PHP群:95885625 Hbuilder+MUI群:81989597 站长QQ:634381967
    您现在的位置: 首页 > CMS教程 > phpcms教程 > 正文

    阿里云 phpcms v9某处逻辑问题导致getshell漏洞解决方法

    作者:admin来源:网络浏览:时间:2020-09-30 00:07:50我要评论
    导读:使用phpcms v9建站,放在阿里云服务器上,经常发送修复漏洞通知,今天B5教程网解决一下这个漏洞,分享给大家。这个漏洞文件地址是/phpcms/...
    使用phpcms v9建站,放在阿里云服务器上,经常发送修复漏洞通知,今天B5教程网解决一下这个漏洞,分享给大家。

    这个漏洞文件地址是/phpcms/libs/classes/attachment.class.php

    我们看一下阿里云的具体漏洞说明如下图:
    阿里云 phpcms v9某处逻辑问题导致getshell漏洞解决方法


    现这个问题主要是没有验证$ext进行类型验证,那就搜索一下参数$ext,大概在143行方法

    function download($field, $value,$watermark = '0',$ext = 'gif|jpg|jpeg|bmp|png', $absurl = '', $basehref = '')

    解决方法如下:


    在方法最上面添加如下代码

    1. $extArray=explode('|',$ext); 
    2. if(!empty($extArray) && is_array($extArray)){ 
    3.    foreach($extArray as $k => $v){ 
    4.    if(!in_array(strtolower($v), array('gif','jpg','jpeg','bmp','png'))); exit('0');//循环判断如果有一个不符合,直接返回 0 
    5.    } 


    注意:这里可以获取网站配置里的附件上传类型来判断,我这里是写死的,仅供参考。


    转载请注明(B5教程网)原文链接:https://b5.mxunkeji.com/content-101-5119-1.html
    相关热词搜索: phpcms漏洞 phpcms补丁