dotCMS template permissions allow arbitrary code execution

Visit the front pageVisit your profilePublish a blog post

The dotCMS content management system version 1.9 and possibly earlier versions, contains a vulnerability that allows users with the appropriate permissions to create a malicious template with arbitrary code.

Description

An authenticated dotCMS user with the permissions required to author and upload templates may create a malicious XSLT or Velocity template that can execute arbitrary java code. The arbitrary java code will run with the permissions of the web service account.

Impact

An authenticated attacker with the permissions to create a template may upload a malicious XSLT or Velocity template that can run arbitrary java code. In some cases, the attacker may be able to exploit this vulnerability to obtain a shell on the web server.

Solution

Apply an Update

dotCMS version 1.9.5.1 or 2.0.1 and later address these vulnerabilities. If you are unable to upgrade please consider the following workarounds.
Workarounds

Unmap the XSLT Tool in the toolbox.xml file or apply this XSLT Tool which is backported from 2.0 to 1.9

Add to system.properties the property: runtime.introspector.uberspect = org.apache.velocity.util.introspection.SecureUberspector

Published by:

siavash's picture

Name
siavash

Country
NL