#VU20849 Code Injection in Totaljs CMS


Published: 2020-03-18

Vulnerability identifier: #VU20849

Vulnerability risk: Medium

CVSSv3.1: 6.6 [CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N/E:F/RL:U/RC:C]

CVE-ID: CVE-2019-15954

CWE-ID: CWE-94

Exploitation vector: Network

Exploit availability: Yes

Vulnerable software:
Totaljs CMS
Web applications / CMS

Vendor: Total.js

Description

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to improper input validation in widget creation. A remote authenticated user with “widgets” privilege can send a malicious widget with a special tag containing JavaScript code that will be evaluated server side and execute arbitrary code on the target system. In the process of evaluating the tag by back-end is possible to escape the sandbox object by using the following payload:

<script

total>global.process.mainModule.require(‘child_process’).exec(‘RCE here’); </script>

Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.

Mitigation
Cybersecurity Help is currently unaware of any official solution to address this vulnerability.

Vulnerable software versions

Totaljs CMS: 12.0


External links
http://github.com/beerpwn/CVE/blob/master/Totaljs_disclosure_report/report_final.pdf
http://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/multi/http/totaljs_cms_w...


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote authenticated user via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability. However, a fully functional exploit for this vulnerability is available.


Latest bulletins with this vulnerability