PHP Nuke v.8.0 (referer) SQL Injection Author: Gerendi Sandor Attila Original advisory: http://gsasec.blogspot.com/2009/05/php-nuke-v80-referer-sql-injection.html Date: May 14, 2009 Package: PHP-Nuke Product homepage: http://phpnuke.org/ 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. Description: - 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 result 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. Status: 1. Contacted the author at: May 14, 2009 via: http://phpnuke.org/modules.php?name=Feedback 2. No response received (May 27, 2009)