what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

punbb125sql.txt

punbb125sql.txt
Posted Jul 8, 2005
Authored by Stefan Esser | Site hardened-php.net

An uninitialized variable within PunBB can allow for SQL injection attacks. Versions 1.2.5 and below are affected.

tags | advisory, sql injection
SHA-256 | eb81280e35ea34327585e1b7b5729bfc63d2a0f2e92532ceca5e39189c9408be

punbb125sql.txt

Change Mirror Download
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Hardened-PHP Project
www.hardened-php.net

-= Security Advisory =-



Advisory: PunBB SQL Injection Vulnerability
Release Date: 2005/08/05
Last Modified: 2005/08/05
Author: Stefan Esser [sesser@hardened-php.net]

Application: PunBB <= 1.2.5
Severity: An uninitialised variable within PunBB allows
SQL injection and can lead to forum privilege
escalation
Risk: Critical
Vendor Status: Vendor has released an updated version
References: http://www.hardened-php.net/advisory-082005.php


Overview:

Quote from http://www.punbb.org
"In short, PunBB is a fast and lightweight PHP powered discussion
board. It is released under the GNU Public License. Its primary goal
is to be a faster, smaller and less graphic alternative to otherwise
excellent discussion boards such as phpBB, Invision Power Board or
vBulletin. PunBB has fewer features than many other discussion
boards, but is generally faster and outputs smaller pages."

An audit of PunBB has revealed an SQL injection vulnerability in the
user profile edit module. As a result of this an attacker may inject
arbitrary field-updates into an UPDATE query, that is executed on the
user table. By simply updating the group id of a useracount it is
possible to become an admin.

Due to the fact, that this bug relies on a not initialised variable
it is only exploitable when register_globals is turned on, which is
the case on most PHP servers, that actually use forums.


Details:

During an audit of PunBB we stumbled on the following code-snippet
that can be found in the user profile edit module in profile.php.

// Singlequotes around non-empty values and NULL for ...
while (list($key, $input) = @each($form))
{
$value = ($input !== '') ?
'\''.$db->escape($input).'\'' : NULL;
$temp[] = $key.'='.$value;
}

$db->query('UPDATE '.$db->prefix.'users SET '.
implode(',', $temp)...

This piece of code converts an array of form variables into an
array of 'key=value' strings that are then used as parameters
of an update query. The values are user supplied and therefore
correctly escaped.

However this code fails to initialize the $temp variable and
so it is possible for an attacker to supply arbitrary 'key=value'
strings through the GET, POST or COOKIE variables, when
register_globals is on.

Injecting something like temp[0]=group_id=1 is enough to add
yourself to the Administrators group. As an admin it is possible
to execute arbitrary PHP code through the template system.
(see Advisory 09/2005 for details)


Proof of Concept:

The Hardened-PHP Project is not going to release an exploit
for this vulnerability to the public.


Disclosure Timeline:

27. June 2005 - Contacted security@punbb.org via email
28. July 2005 - Discussed solution possibilities with vendor
07. July 2005 - Vendor releases bugfixed version
08. July 2005 - Public disclosure


Recommendation:

We strongly recommend to upgrade to the vendor supplied
new version

PunBB 1.2.6
http://www.punbb.org/download/punbb-1.2.6.tar.gz


GPG-Key:

http://www.hardened-php.net/hardened-php-signature-key.asc

pub 1024D/0A864AA1 2004-04-17 Hardened-PHP Signature Key
Key fingerprint = 066F A6D0 E57E 9936 9082 7E52 4439 14CC 0A86 4AA1


Copyright 2005 Stefan Esser. All rights reserved.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQFCzbStRDkUzAqGSqERAr+0AJ9WHhwTBscP4sMxfMk/kGH2UPsI6ACgjyec
pnwtMpG5HFGQyBormf7Ej0o=
=rE61
-----END PGP SIGNATURE-----

Login or Register to add favorites

File Archive:

April 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Apr 1st
    10 Files
  • 2
    Apr 2nd
    26 Files
  • 3
    Apr 3rd
    40 Files
  • 4
    Apr 4th
    6 Files
  • 5
    Apr 5th
    26 Files
  • 6
    Apr 6th
    0 Files
  • 7
    Apr 7th
    0 Files
  • 8
    Apr 8th
    22 Files
  • 9
    Apr 9th
    14 Files
  • 10
    Apr 10th
    10 Files
  • 11
    Apr 11th
    13 Files
  • 12
    Apr 12th
    14 Files
  • 13
    Apr 13th
    0 Files
  • 14
    Apr 14th
    0 Files
  • 15
    Apr 15th
    30 Files
  • 16
    Apr 16th
    10 Files
  • 17
    Apr 17th
    22 Files
  • 18
    Apr 18th
    45 Files
  • 19
    Apr 19th
    8 Files
  • 20
    Apr 20th
    0 Files
  • 21
    Apr 21st
    0 Files
  • 22
    Apr 22nd
    11 Files
  • 23
    Apr 23rd
    68 Files
  • 24
    Apr 24th
    0 Files
  • 25
    Apr 25th
    0 Files
  • 26
    Apr 26th
    0 Files
  • 27
    Apr 27th
    0 Files
  • 28
    Apr 28th
    0 Files
  • 29
    Apr 29th
    0 Files
  • 30
    Apr 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close