[32346] in bugtraq

home help back first fref pref prev next nref lref last post

Re: sql injection in phpbb

daemon@ATHENA.MIT.EDU (Marius Kaase)
Sat Nov 8 16:31:57 2003

Message-ID: <3FAD4685.2040907@kaase.net>
Date: Sat, 08 Nov 2003 20:39:49 +0100
From: Marius Kaase <marius@kaase.net>
Reply-To: marius@kaase.net
MIME-Version: 1.0
To: jocanor jocanor <jocanor2002@hotmail.com>
Cc: bugtraq@securityfocus.com
In-Reply-To: <20031108183025.19866.qmail@sf-www2-symnsj.securityfocus.com>
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

jocanor jocanor wrote:

> 
> I found a vulnerability en phpbb 2.0.5 and prior, is probably also affect 2.0.6
> 
> this bug don't affect to version 2.0.7 
> 
> phpbb have a list of registereds users, when you click on a memebr of this list, you are requesting data to the database 
> 
> for example:
> 
> http://www.example.com/forum/profile.php?mode=viewprofile&u=2
> 
> this url show the information to the user with the uid = 2, the uid is a number assigned to users in phpbb.
> 
> but it isn't secure, because if you use this url, you can inject sql comands...
> 
> exploit:
> 
> http://www.example.com/profile.php?mode=viewprofile&u='[sqlcode]
> 
> where [sql code] represents the code may be injected.
> 

Does not affect 2.0.6.

This code prevents it:

function get_userdata($user, $force_str = false)
{
global $db;

if (intval($user) == 0 || $force_str)
{
$user = trim(htmlspecialchars($user));
$user = substr(str_replace("\\'", "'", $user), 0, 25);
$user = str_replace("'", "\\'", $user);
}
else
{
$user = intval($user);
}

(Taken from: http://www.phpbb.com/phpBB/viewtopic.php?p=848495)

-- 

Kind Regards
Marius Kaase

"If the Phone Doesn't Ring, It's Me"

home help back first fref pref prev next nref lref last post