Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | [Full-disclosure] Security Advisory - phpBB 2.0.15 PHP-code injection bug |
|---|---|
| Date: | Tue, 28 Jun 2005 23:47:31 +0200 (CEST) |
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>
_______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [Full-disclosure] Mozilla Multiple Product JavaScript Issue, Kurczaba Associates Advisories |
|---|---|
| Next by Date: | [Full-disclosure] SEC-CONSULT SA-20050629-0, Bernhard Mueller |
| Previous by Thread: | [Full-disclosure] Mozilla Multiple Product JavaScript Issue, Kurczaba Associates Advisories |
| Next by Thread: | Re: [Full-disclosure] Security Advisory - phpBB 2.0.15 PHP-code injection bug, Andrew Farmer |
| Indexes: | [Date] [Thread] [Top] [All Lists] |