Opticon Stockholm is on Tuesday September 10th, hope to see you there!

Magnus Rahl
Aug 16, 2023
  2117
(3 votes)

XSS vulnerability in CMS 11 and 12

Introduction

A potential security vulnerability was detected for Optimizely CMS that could affect CMS 11 installations before v11.37.1 and CMS 12 installations before v12.16.0.  

  • In a CMS 11 installation where request validation has been disabled, the vulnerability allows execution of JavaScript included in a manipulated URL. This allows the possibility to run arbitrary JavaScript code in the context of the logged in user.
  • In a CMS 12 installation, the vulnerability allows execution of JavaScript included in a manipulated URL.

Example attack

In CMS 11, when the request validation has been either completely or partially disabled by configuring requestValidationMode in the applications web.config file, harmful requests are allowed to reach the application.

An attacker provides a manipulated URL that includes harmful JavaScript code that a user can interact with. After successful authentication and authorization, the supplied JavaScript is executed in the context of the browser, the web application, and the permissions of the user. The attack is only possible for authenticated users and in installations where request validation is completely or partially disabled.

Risk

Overall, the risk of the vulnerability is low-medium. The attack is possible for only authenticated users and requires user interaction to execute. The issue was fixed in CMS v11.37.1 (CMS-28190) and CMS v12.16.0 (CMS-26236). Mitigation is in place for all DXP service customers.

Remediation

  • If using CMS 11, please update Optimizely CMS to the latest version.
  • If using CMS 12, please update to the latest version.
  • As a general best practice, it is recommended to restrict the number of users with admin privileges.

Questions

Please contact the security engineering team at securityeng@optimizely.com.

Risk definitions

Low – little to no potential impact on Optimizely or customer environments/data. Vulnerability has low exploitability, for example: requirement for local or physical system access, zero reachability to/executability within Optimizely products/code.

Medium – some potential impact on Optimizely or customer environments/data. Vulnerability has medium exploitability, for example: requirement to be located on the same local network as the target, requirement for an individual to be manipulated via social engineering, requirement for user privileges, vulnerability achieves limited access to Optimizely products/code.

High – high potential impact on Optimizely or customer environments/data.  Vulnerability has high exploitability, for example:  achieves high level access to Optimizely products/code, could elevate privileges, could result in a significant data loss or downtime.

Critical – very significant potential impact on Optimizely or customer environments/data.  Vulnerability has very high exploitability, for example: achieves admin/root-level access to Optimizely products/code.  Vulnerability does not require any special authentication credentials/knowledge of Optimizely products/environments. 

Aug 16, 2023

Comments

Please login to comment.
Latest blogs
Handling Nynorsk and Bokmål in Optimizely CMS

Warning: Blog post about Norwegian language handling (but might be applicable to other languages and/or use cases). Optimizely have flexible and...

Haakon Peder Haugsten | Sep 5, 2024

Remove Unwanted properties for Headless Implementation using Content Delivery API

While working with Headless, whenever we want to send data to the front end, many properties are also shown in JSON that we don't wish to, which...

PuneetGarg | Sep 4, 2024

Optimizely Headless Form Setup

1. Create empty CMS applications First, let’s setup an empty CMS application. Install the NuGet packages in your solution using the NuGet Package...

Linh Hoang | Sep 4, 2024

Default caching on search request on Search & Navigation

For the better performance, Search & Navigation .Net client has provided StaticallyCacheFor method for caching your search result in a specific of...

Manh Nguyen | Sep 4, 2024

Non-blocking Search with Optimizely Search & Navigation

We are thrilled to announce the integration of asynchronous functions into Optimizely’s Search & Navigation features, which have been supported sin...

Manh Nguyen | Sep 4, 2024

Working with Translations in Optimizely

Ensuring that content is accessible and comprehensible in multiple languages is essential for any global business. Optimizely, combined with Langua...

Luc Gosso (MVP) | Sep 1, 2024 | Syndicated blog