PostNuke 0.750-0.760rc4 本地文件包含漏洞
2005-08-18
系统编号:
WAVDB-00540
影响版本:
PostNuke 0.750-0.760 rc4
程序介绍:
PostNuke是用PHP编写的Web内容管理系统,使用mysql作为数据库后端.
漏洞分析:
PostNuke对处理用户提交的参数时存在漏洞,远程攻击者可能利用此漏洞在主机上执行任意命令。
PostNuke可能允许任何用户在pnModFunc函数中浏览/包含本地文件。漏洞起因是用户在通过index.php脚本的func变量向pnModFunc函数提交参数值时缺少错误检查。func变量使用pnVarCleanFromInput函数过滤,在传送给index.php的pnModFunc之前会删除所有的斜线,这就可能导致空字节破坏。攻击者可以通过Blocks模块中的pnlang目录轻易的利用这个漏洞。攻击者还可能利用允许上传图形的第三方模块或可访问的Apache日志文件远程执行代码。
--pnMod.php--
} else {
if(file_exists( modules/$modname/pn$type/$func.php ))
{
require_once( modules/$modname/pn$type/$func.php );<-- THE PROBLEM
return $modfunc($args);
}
-------------
漏洞利用:
http://server.com/index.php?module=Blocks&type=lang&func=../../../../../../etc/passwd%00
解决方案:
厂商补丁:
PostNuke
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://cvs.postnuke.com/viewcvs. ... iff?r1=1.47&r2=1.48
http://cvs.postnuke.com/viewcvs. ... iff?r1=1.39&r2=1.40
信息来源:
<*来源:pokley (saleh@scan-associates.net)
Andreas Krapoh
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=111627124301526&w=2
*>