CVE漏洞—PHPCMS2008 typephp代码注入高危漏洞预警

2018-12-21 13:31

CVE漏洞—PHPCMS2008 typephp代码注入高危漏洞预警



  摘要:11月4日,阿里云安全首次捕获PHPCMS 2008版本的/type.php远程GetShell 0day利用攻击,攻击者可以利用该漏洞远程植入webshell,导致文件篡改、数据泄漏、服务器被远程控制等一系列严重问题。建议受影响用户尽快升级到最新版本修复。

  PHPCMS网站内容管理系统是国内主流CMS系统之一,同时也是一个开源的PHP开发框架。

  PHPCMS最早于2008年推出,最新版已出到v9.6.3,但由于稳定、灵活、开源的特性,时至今日,PHPCMS2008版本仍被许多网站所使用。

  该漏洞源于PHPCMS 2008源码中的/type.php文件。该文件包含如下代码:

CVE漏洞—PHPCMS2008 typephp代码注入高危漏洞预警

  这里template变量是用户能够通过传入参数控制的,同时可以看到该变量之后会被传入template()方法。而template()方法在/include/global.func.php文件中定义,包含如下代码:

CVE漏洞—PHPCMS2008 typephp代码注入高危漏洞预警

  在这个方法中,template变量同时被用于compiledtplfile变量中文件路径的生成,和content变量中文件内容的生成。

  虽然距离PHPCMS2008版本的推出已经10年,但仍有不少网站正在使用PHPCMS2008,包括政府、企业的网站;根据Fofa网络空间安全搜索引擎的全网精确搜索结果显示,还有近200个使用PHPCMS2008版本的网站;而如果使用模糊匹配对网站进行识别,匹配结果更达上万个。

  通过利用该漏洞,攻击者在向路径可控的文件写入恶意脚本代码后,后续将能够向该文件发送webshell指令,在服务器上执行任意代码,因此该代码注入漏洞的影响较大。

  临时解决可以在/type.php文件中对template变量进行过滤,避免用户输入的含有(、{等符号的内容混入,并被当做路径和脚本内容处理。

  但由于PHPCMS2008版本过旧,用户应尽量升级到最新版本的PHPCMS,才能够更好地保障安全。

  •云防火墙已支持对该类漏洞的入侵防御,开启云防火墙IPS拦截模式和虚拟补丁功能,用户即使不自行进行修复,也依然能够进行防御和拦截。

  •购买安全管家服务,您将能够在阿里云安全专家指导下进行安全加固及优化,避免系统受到该漏洞及后续其他漏洞影响。