360°网站管家_运维学院_提供最新最全的服务器运维视频教程与网站维护视频教程

标题: phpcms某处逻辑问题导致getshell attachment.class.php的解决方法 [打印本页]

作者: 360网站管家    时间: 2016-9-29 14:10
标题: phpcms某处逻辑问题导致getshell attachment.class.php的解决方法
phpcms某处逻辑问题导致getshell attachment.class.php的解决方法

漏洞名称:phpcms某处逻辑问题导致getshell

补丁文件:/phpcms/libs/classes/attachment.class.php

补丁来源:云盾自研

漏洞描述:phpcms的/phpcms/libs/classes/attachment.class.php中,对输入参数$ext未进行类型限制,导致逻辑漏洞的产生。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了改漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】


解决方法:

首先找到这个文件/phpcms/modules/pay/respond.php

修复处有1处。

如下代码(143行):

  1. function download($field, $value,$watermark = '0',$ext = 'gif|jpg|jpeg|bmp|png', $absurl = '', $basehref = '')
复制代码


如下图:
将144行后添加如下代码:

  1. if($ext !== 'gif|jpg|jpeg|bmp|png'){
  2.    if(!in_array(strtoupper($ext),array('JPG','GIF','BMP','PNG','JPEG'))) exit('附加扩展名必须为gif、jpg、jpeg、bmp、png');
  3. }
复制代码

修改后如下图:
修改完后保存上传更新,然后在阿里云点击修复即可。
以上就是俞视天下为各位提供的,阿里云提示:“phpcms某处逻辑问题导致getshell”的解决方案!
如果您未进行二次开发可以下载懒人包,请您下载当前服务器中的文件下来,进行备份后在进行修改上传复制操作!
GBK attachment.class.zip.zip (4.25 KB, 下载次数: 0, 售价: 10 元)
UTF8 attachment.class.zip.zip (4.33 KB, 下载次数: 0, 售价: 10 元)







欢迎光临 360°网站管家_运维学院_提供最新最全的服务器运维视频教程与网站维护视频教程 (http://bbs.360wzgj.com/) Powered by Discuz! X3.2