CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality Impact
LOW
Integrity Impact
LOW
Availability Impact
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
AI Score
Confidence
Low
From version 7.0 onwards the ActionText gem includes a copy of the Trix rich text editor.
Prior to versions 7.0.8.3 and 7.1.3.3, ActionText included a version of Trix that
is vulnerable to arbitrary code execution when
copying and pasting content from the web or other documents with markup into the editor.
The vulnerability stems from improper sanitization of pasted content, allowing an attacker
to embed malicious scripts which are executed within the context of the application.
Bug 1: When copying content manipulated by a script, such as:
document.addEventListener('copy', function(e){
e.clipboardData.setData('text/html', '<div><noscript><div></div></noscript></div>');
e.preventDefault();
});
and pasting into the Trix editor, the script within the content is executed.
Bug 2: Similar execution occurs with content structured as:
document.write(`copy<div></div>me`);
An attacker could exploit these vulnerabilities to execute arbitrary JavaScript code
within the context of the user’s session, potentially leading to unauthorized actions
being performed or sensitive information being disclosed.
Update Recommendation: Users of ActionText 7.0 should upgrade to ActionText version 7.0.8.3 or later.
Users of ActionText 7.1 should upgrade to version 7.1.3.3 or later.
These updated versions incorporate proper sanitization of input from copied content.
CSP Enhancement: Additionally, enhancing the Content Security Policy (CSP) to disallow inline scripts
can significantly mitigate the risk of such vulnerabilities.
Set CSP policies such as script-src ‘self’ to ensure that only scripts hosted on the same origin
are executed, and explicitly prohibit inline scripts using script-src-elem.
Vendor | Product | Version | CPE |
---|---|---|---|
ruby | actiontext | * | cpe:2.3:a:ruby:actiontext:*:*:*:*:*:*:*:* |