phpcms网站漏洞修复之远程代码写入缓存漏洞利用

栏目: 编程工具 · 发布时间: 7年前

内容简介:SINE安全公司在对phpcms2008网站代码进行安全检测与审计的时候发现该phpcms存在远程代码写入缓存文件的一个SQL注入漏洞,该phpcms漏洞危害较大,可以导致网站被黑,以及服务器遭受黑客的攻击,关于这次发现的phpcms漏洞细节以及如何利用提权我们来详细剖析。phpcms2008是国内深受站长建站使用的一个内容CMS管理系统,phpcms的开源话,免费,动态,静态生成,API接口,模板免费下载,自定义内容设计,可提供程序的二次开发与设计,大大方便了整个互联网站长的建站使用与优化。整个phpc

SINE安全公司在对phpcms2008网站代码进行安全检测与审计的时候发现该phpcms存在远程代码写入缓存文件的一个 SQL 注入漏洞,该phpcms漏洞危害较大,可以导致网站被黑,以及服务器遭受黑客的攻击,关于这次发现的phpcms漏洞细节以及如何利用提权我们来详细剖析。

phpcms2008是国内深受站长建站使用的一个内容CMS管理系统,phpcms的开源话,免费,动态,静态生成,API接口,模板免费下载,自定义内容设计,可提供程序的二次开发与设计,大大方便了整个互联网站长的建站使用与优化。整个phpcms采用PHP+Mysql数据库作为架构,稳定,并发高,承载量大。

phpcms2008漏洞详情

在对代码的安全检测与审计当中,发现type.php文件代码存在漏洞,代码如下:

phpcms网站漏洞修复之远程代码写入缓存漏洞利用

以上代码if(empty($template)) 在进行变量定义的时候可以跟进来看下,通过extract进行变量的声明与注册,如果当前的注册已经有了,就不会覆盖当前已有的声明,导致可以变量伪造与注入。

我们再来跟踪该代码找到template函数,看到调用到了include目录下的global.func.php文件,该代码里的function template会对传递过来的定义值进行判断,默认TPL_REFRESH是为1的参数值,也就是说自动开启了模板缓存功能。当需要更新缓存的时候就会先判断有没有变量注册,如果有就会进行更新缓存。

该漏洞利用的就是缓存的更新,将网站木马代码插入到缓存文件当中去。可以看出$template没有进行过滤就可以直接写入到缓存模板中,我们可以指定TAG内容,post提交过去,如下代码:

phpcms网站漏洞修复之远程代码写入缓存漏洞利用

我们在自己的本地电脑搭建了一套phpcms2008系统的环境,进行漏洞测试,提交post参数过去,我们看下本地的漏洞结果,可以执行phpinfo代码。也可以插入一句话木马后门进行上传webshell。

phpcms网站漏洞修复之远程代码写入缓存漏洞利用

phpcms漏洞修复与安全建议

目前phpcms官方已经修复该漏洞,请各大网站运营者尽快升级phpcms2008到最新版本,有些二次开发的网站可以针对缓存目录进行安全限制,禁止 PHP 脚本文件的执行,data,cache_template目录进行安全加固部署,对网站上的漏洞进行修复,或者是对网站安全防护参数进行重新设置,使他符合当时的网站环境。如果不懂如何修复网站漏洞,也可以找专业的网站安全公司来处理,国内也就Sinesafe和绿盟、启明星辰等安全公司比较专业.


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

CSS 3实战

CSS 3实战

成林 / 机械工业出版社 / 2011-5 / 69.00元

全书一共分为9章,首先从宏观上介绍了CSS 3技术的最新发展现状、新特性,以及现有的主流浏览器对这些新特性的支持情况;然后详细讲解了CSS 3的选择器、文本特性、颜色特性、弹性布局、边框和背景特性、盒模型、UI设计、多列布局、圆角和阴影、渐变、变形、转换、动画、投影、开放字体、设备类型、语音样式等重要的理论知识,这部分内容是本书的基础和核心。不仅每个知识点都配有丰富的、精心设计的实战案例,而且详细......一起来看看 《CSS 3实战》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试