phpBB Group phpBB2 任意文件删除漏洞

漏洞信息详情

phpBB Group phpBB2 任意文件删除漏洞

漏洞简介

phpBB Group phpBB2是一款开放源代码PHP论坛程序。

phpBB2对用户提交的URL输入缺少充分过滤,远程攻击者可以利用这个漏洞以WEB进程权限删除系统任意文件。

由于多个缺陷的组合允许攻击者控制传递给unlink()调用的参数,导致删除系统文件。第一个缺陷存在于avatar gallery中,用户允许指定所需avatar的目录名部分,不过由于对\”/../\”字符缺少充分过滤,可允许用户脱离avatar目录限制。问题代码如下:

if (

file_exists(@phpbb_realpath($board_config[\’\’avatar_gallery_path\’\’]

. \’\’/\’\’ . $avatar_filename)) & & ($mode == \’\’editprofile\’\’) )

{

$return = \”, user_avatar = \’\’\” . str_replace(\”/\’\’\”, \”\’\’\’\’\”,

$avatar_filename) . \”\’\’, user_avatar_type = \” .

USER_AVATAR_GALLERY;

}

Avatar然后由如下代码调用:

$avatar_img = ( $board_config[\’\’allow_avatar_local\’\’] ) ? \’\’<img src=\”\’\’

. $board_config[\’\’avatar_gallery_path\’\’] . \’\’/\’\’ .

$profiledata[\’\’user_avatar\’\’] . \’\’\” alt=\”\” border=\”0\” />\’\’ : \’\’\’\’;

当一个avatar值被删除时会调用unlink()函数,但由于这个函数也存在一个目录遍历问题,因此通过提交大量\”/../\”,攻击者借此可以删除 系统任意文件,usercp_register.php脚本中存在如下受影响代码:

if ( @file_exists(@phpbb_realpath(\’\’./\’\’ .

$board_config[\’\’avatar_path\’\’]

. \’\’/\’\’ . $userdata[\’\’user_avatar\’\’])) )

{

@unlink(@phpbb_realpath(\’\’./\’\’ . $board_config[\’\’avatar_path\’\’] .

\’\’/\’\’

. $userdata[\’\’user_avatar\’\’]));

}

攻击者可以修改来自gallery的\”avatarselect\”返回值指向要删除的文件,可导致以WEB进程权限删除任意文件。

漏洞公告

目前厂商还没有提供补丁或者升级程序,建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.phpbb.com/downloads.php

参考网址

来源: IDEFENSE

名称: 20050222 phpBB Group phpBB2 Arbitrary File Unlink Vulnerability

链接:http://www.idefense.com/application/poi/display?id=205&type=vulnerabilities

来源: www.phpbb.com

链接:http://www.phpbb.com/support/documents.php?mode=changelog

来源: GENTOO

名称: GLSA-200503-02

链接:http://www.gentoo.org/security/en/glsa/glsa-200503-02.xml

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享