Tikiwiki tiki-editpage Arbitrary File Exposure Vulnerability iDEFENSE Security Advisory 11.10.05 www.idefense.com/application/poi/display?id=337&type=vulnerabilities November 10, 2005 I. BACKGROUND Tikiwiki Community Portal is a full featured, freely available, Wiki/CMS/Groupware system written in PHP. More information is available at: http://tikiwiki.org/ II. DESCRIPTION Remote exploitation of an input validation vulnerability in Tikiwiki allows attackers to gain access to arbitrary files on the vulnerable system under the privileges of the underlying web-server. The problem specifically exists in the following snippet of code from tiki-editpage.php: $sdta = @file_get_contents($suck_url); ... $htmlparser = new HtmlParser($sdta, $grammar, '', 0); $htmlparser->Parse(); No sanity checking is done on the 'suck_url' parameter prior to utilizing it as the path to a file to read and parse. By specifying a path with directory traversal modifiers an attacker can request an arbitrary file to load and render on the screen. III. ANALYSIS Successful exploitation allows unauthenticated remote attackers to access arbitrary files on the vulnerable system with the privileges of the underlying web-server. If external database access is allowed, then exploitation can result in a full database compromise as the database credentials are easily exposed through this vulnerability. IV. DETECTION iDEFENSE has confirmed the existence of this issue in Tikiwiki versions 1.8.4 and 1.8.5. It is suspected that earlier versions are vulnerable as well. V. WORKAROUND Restrict unnecessary access to Tikiwiki with firewall filters or HTTP based authentication. If remote database connectivity is not required, configure the underlying database server to bind to localhost only or firewall the listening port to accept trusted hosts only. VI. VENDOR RESPONSE This vulnerability has been addressed in Tikiwiki 1.9.1 which is available for download at: http://tikiwiki.org/tiki-index.php?page=Download VII. CVE INFORMATION The Common Vulnerabilities and Exposures (CVE) project has assigned the name CAN-2005-1925 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org), which standardizes names for security problems. VIII. DISCLOSURE TIMELINE 06/07/2005 Initial vendor notification 08/21/2005 Initial vendor response 11/10/2005 Public disclosure IX. CREDIT codeauditor@gmail.com is credited with this discovery. Get paid for vulnerability research http://www.idefense.com/poi/teams/vcp.jsp Free tools, research and upcoming events http://labs.idefense.com X. LEGAL NOTICES Copyright C 2005 iDEFENSE, Inc. Permission is granted for the redistribution of this alert electronically. It may not be edited in any way without the express written consent of iDEFENSE. If you wish to reprint the whole or any part of this alert in any other medium other than electronically, please email customerservice@idefense.com for permission. Disclaimer: The information in the advisory is believed to be accurate at the time of publishing based on currently available information. Use of the information constitutes acceptance for use in an AS IS condition. There are no warranties with regard to this information. Neither the author nor the publisher accepts any liability for any direct, indirect, or consequential loss or damage arising from use of, or reliance on, this information. _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/