CMS BEdita 3.4.0 Cross Site Scripting

2015-01-09T00:00:00
ID PACKETSTORM:129865
Type packetstorm
Reporter Steffen Roesemann
Modified 2015-01-09T00:00:00

Description

                                        
                                            `Advisory: Multiple persistent XSS vulnerabilites in CMS BEdita v. 3.4.0  
Advisory ID: SROEADV-2014-10  
Author: Steffen Rösemann  
Affected Software: CMS BEdita v. 3.4.0 (Release-Date: 9th-May-2014)  
Vendor URL: http://www.bedita.com  
Vendor Status: working on a patch  
CVE-ID: -  
  
==========================  
Vulnerability Description:  
==========================  
  
The CMS BEdita v. 3.4.0 (Release: 9th-May-2014) suffers multiple persistent  
XSS vulnerabilities in its administrative backend.  
  
==================  
Technical Details:  
==================  
  
Registered users, who are allowed to use the administrative backend (as  
translator or editor for example) are able to use arbitrary HTML and/or  
JavaScript-code which gets stored in the database backend without being  
sanitized. This has an effect on other registered users on the  
administrative backend, as the code is executed when visiting the sites  
prepared by an attacker.  
  
The vulnerabilities are found in the following URLs on a normal BEdita  
installation:  
  
http://{TARGET}/index.php/home/profile (in form with id „editProfile“ via  
input field with id „lrealname")  
  
http://{TARGET}/index.php/ (inform with id „addQuickItem“ via input field  
with name "data[title]" and name "data[description]")  
  
http://{TARGET}/index.php/areas (in form with id „saveNote“ via input field  
with id „note text")  
  
http://{TARGET}/index.php/documents/view (in form with id „updateForm“ via  
input field with id „titleBEObject“ and input field with id „tagsArea“)  
  
If you, for example, write a simple <script>alert(document.cookie)</script>  
in the above mentioned input fields and save it, it will get executed, when  
visiting the prepared site. That can be a security issue, if for example a  
translator-user with not as much administrative rights as the administrator  
is abusing the vulnerabilities and tricks the administrator to visit the  
sites.  
  
I found out, that injecting code in the input field with id „tagsArea“ gets  
as well executed on the frontend, when guest users are visiting the page.  
  
=========  
Solution:  
=========  
  
Vendor opened issue on Github. Currently working on a patch. Technical  
information disclosed by vendor.  
  
====================  
Disclosure Timeline:  
====================  
31-Dec-2014 – found the vulnerability  
31-Dec-2014 - informed the developers  
31-Dec-2014 – release date of this security advisory [without technical  
details]  
08-Jan-2015 - response from vendor (confirmation as issue on Github)  
08-Jan-2015 - release date of this security advisory  
08-Jan-2015 - send to lists  
  
  
  
========  
Credits:  
========  
  
Vulnerability found and advisory written by Steffen Rösemann.  
  
===========  
References:  
===========  
  
[1] http://www.bedita.com  
[2] http://sroesemann.blogspot.de/2014/12/sroeadv-2014-10.html  
[3] https://github.com/bedita/bedita/issues/566  
  
  
`