Serendipity Script Insertion and Cross-Site ScriptingWednesday, 27 February 2008Backend Cross Site Scripting (XSS) in Serendipity (S9Y) 1.2.1, CVE-2008-0124
References
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0124
http://blog.s9y.org/archives/191-Serendipity-1.3-beta1-released.html
http://hboeck.de/archives/591-Cross-Site-Scripting-XSS-in-the-backend-and-in-the-installer.html
Description
Serendipity (S9Y) is a popular blogging system.
If used in a multiuser environment, one user can inject javascript code into certain fields in the backend to steal the cookies and hijack the accounts of other users.
Serendipity has the trustxss plugin to prevent XSS between users on multiuser setups, but that doesn't catch these issues.
In the »Personal Settings«-Dialogue, the »Real name« field can be filled with javascript, which appears on newly written articles. The »Username« field can also contain javascript, but there's no attack vector, as this field is only shown to the user itself.
Beside, the media library accepts uploads from any file format, including htm, html and js, which obviously also leads to xss.
Workaround/Fix
If you have a multiuser-blog and don't trust all users, you need to install the trustxss plugin and should immediately upgrade to 1.3-beta1.
If you're using a single-user blog, you are not affected.
Disclosure Timeline
2008-02-01 Vendor contacted
2008-02-01 Vendor fixed svn
2007-02-25 Vendor released 1.3-beta1
CVE Information
The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2008-0124 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org/), which standardizes names for security problems.
Credits and copyright
This vulnerability was discovered by Hanno Boeck of schokokeks.org webhosting. It's licensed under the creative commons attribution license.
Hanno Boeck, 2008-02-26, http://www.hboeck.de
Share this content:
|