lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: Tue, 28 Jun 2005 23:03:22 +0200 (CEST)
From: ronvdaal <ronvdaal@...athustra.linux666.com>
To: bugtraq@...urityfocus.com
Subject: Security Advisory - phpBB 2.0.15 PHP-code injection bug



Security Advisory -//- phpBB 2.0.15 PHP-code injection bug

Program: phpBB 2.0.15 and older versions
Homepage: http://www.phpbb.com
Risk: Very High
Date: June 28 2005
Title: PHP-code injection bug
Type: partial disclosure
Author: Ron van Daal :.
Vendor notified: June 23 2005

Background:

phpBB is a high powered, fully scalable, and highly customizable
Open Source bulletin board package. Based on the PHP server language
and supporting a variety of backend database servers.


Description:

Due to a bug in the phpBB highlighting code it's possible to inject
PHP-code into the running script. E.g. It's possible to run system
commands if the PHP interpreter allows system() and simular functions.
This is actually based on an old bug which was improperly fixed in
phpBB 2.0.11.


Technical:

The highlighting code uses the preg_replace() function on line 1110
in viewtopic.php. It uses the special modifier "e" which causes PHP
to evaluate the replacement string as PHP code. Below is a PHP code
example of what actually happens:

<?
$string1="phpinfo()";
$string2=preg_replace('//e',$string1,'');
?>

This causes PHP to execute the phpinfo() function. Usage of the
preg_replace special modifier "e" should be avoided if possible.


Proof of concept:

Sorry, partial disclosure advisory.


Solution:

Upgrade to phpBB version 2.0.16 or edit viewtopic.php on line #1110:

Change this: str_replace('\\', '\\\\', $highlight_match)

Into this:   str_replace('\\', '\\\\', addslashes($highlight_match))


Credits:

Synto(nix) && Doqnach @Umbranet #unixtalk

<EOF>


--
Theo de Raadt: "BSD guys are a lot like Linux guys, except they have kissed girls"
Methinks: "FreeBSD guys are a lot like OpenBSD guys, except they have fscked girls"


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ