SEC Consult Vulnerability Lab Security Advisory < 20220608-0 >
=======================================================================
title: Stored Cross-Site Scripting & Unsafe Java Deserializiation
product: Gentics CMS
vulnerable version: 5.36.29, see section below
fixed version: 5.40.27, 5.41.15, 5.42.7, 5.43.1 or higher
CVE number: CVE-2022-30981, CVE-2022-30982
impact: high
homepage: https://www.gentics.com/
found: 2021-04-02
by: Gerhard Hechenberger (Office Vienna)
Steffen Robertz (Office Vienna)
SEC Consult Vulnerability Lab
An integrated part of SEC Consult, an Atos company
Europe | Asia | North America
https://www.sec-consult.com
=======================================================================
Vendor description:
-------------------
"APA-IT Informations Technologie GmbH offers offers support with a focus on
media solutions and IT-outsourcing. As a subsidiary of APA – Austria Press
Agency, we are responsible for the IT of the Austrian news agency as well
as numerous other media enterprises.
This expertise and insight into the industry make APA-IT an expert for IT
solutions for publishers and media-related companies. Existing systems and
tools are constantly developed and tailored to individual customer needs.
As such, APA-IT is always available – from conception to operation."
Source: https://www.gentics.com/genticscms/company_gentics.en.html
Business recommendation:
------------------------
The vendor provides a patch which should be installed immediately.
SEC Consult recommends to perform a thorough security review of these products
conducted by security professionals to identify and resolve all security
issues.
Vulnerability overview/description:
-----------------------------------
1) Multiple Stored Cross-Site Scripting Vulnerabilities (CVE-2022-30982)
Multiple cross-site scripting vulnerabilities are present in the application.
An attacker can store malicious JavaScript code in the username and profile
description. The code will execute once an admin user hovers over the
attacker's username. Thus, the attacker can execute code in the context of an
admin.
2) Unsafe Java Deserialization (CVE-2022-30981)
The Gentics CMS has an import option which will accept ZIP files. The archive
includes a Java serialized object that gets deserialized on import. This can
lead to code execution on the server.
A low privileged user might be able to exploit this vulnerability by chaining
it together with vulnerability 1).
Proof of concept:
-----------------
1) Multiple Stored Cross-Site Scripting Vulnerabilities (CVE-2022-30982)
To trigger the first XSS, an attacker has to change the profile description to
include a payload, e.g. "Malicious User Name
created:
09/20/2002
( Gentics Support)
last edited:
15:56 (Malicious Username)', '' );
The execution of the code leads to following function:
function JSI3_comp_list_401__ass( obj, title, text, assTitle )
{
JSI3_comp_list_401__assReset();
clearTimeout( JSI3_comp_list_401___ass_timeout );
JSI3_comp_list_401__ass_show_row( obj, title, text, assTitle );
}
The malicious code, which is contained in the "text" parameter, gets passed
through to the next function. There it is added to an HTML element and thus
executed in the browser.
function JSI3_comp_list_401__ass_show_row( obj, title, text, assTitle ) {
if (!JSI3_comp_list_401__ass_show_row_tipsy[obj.id]) {
JSI3_comp_list_401__ass_show_row_tipsy[obj.id] = true;
$(obj).attr('title', '