phpBB: Remote command execution

Security Team  Contact Address

Updated November 24, 2004

1.  Gentoo Linux Security Advisory

Version Information

Advisory Reference GLSA 200411-32 / phpBB
Release Date November 24, 2004
Latest Revision May 22, 2006: 02
Impact high
Exploitable remote
Package Vulnerable versions Unaffected versions Architecture(s)
www-apps/phpbb < 2.0.10 >= 2.0.11 All supported architectures

Related bugreports: #71681

Synopsis

phpBB contains a vulnerability which allows a remote attacker to execute arbitrary commands with the rights of the web server user.

2.  Impact Information

Background

phpBB is an Open Source bulletin board package.

Description

phpBB contains a vulnerability in the highlighting code and several vulnerabilities in the username handling code.

Impact

An attacker can exploit the highlighting vulnerability to access the PHP exec() function without restriction, allowing them to run arbitrary commands with the rights of the web server user (for example the apache user). Furthermore, the username handling vulnerability might be abused to execute SQL statements on the phpBB database.

3.  Resolution Information

Workaround

There is a one-line patch which will remediate the remote execution vulnerability.

Locate the following block of code in viewtopic.php:

Code Listing 3.1: Workaround

//
// Was a highlight request part of the URI?
//
$highlight_match = $highlight = '';
if (isset($HTTP_GET_VARS['highlight']))
{
   // Split words and phrases
   $words = explode(' ', trim(htmlspecialchars(urldecode($HTTP_GET_VARS['highlight']))));

   for($i = 0; $i < sizeof($words); $i++)
   {

Replace with the following:

Code Listing 3.2: Workaround

//
// Was a highlight request part of the URI?
//
$highlight_match = $highlight = '';
if (isset($HTTP_GET_VARS['highlight']))
{
   // Split words and phrases
   $words = explode(' ', trim(htmlspecialchars($HTTP_GET_VARS['highlight'])));

   for($i = 0; $i < sizeof($words); $i++)
   {

Resolution

All phpBB users should upgrade to the latest version to fix all known vulnerabilities:

Code Listing 3.3: Resolution

# emerge --sync
# emerge --ask --oneshot --verbose ">=www-apps/phpbb-2.0.11"

4.  References