CVE-2024-43368 json
Trix has a Cross-Site Scripting (XSS) vulnerability on copy & paste
published 2024-08-14 2 y ago modified 2026-06-17 4 mo ago also GHSA-qm2q-9f3q-2vcv , EUVD-2024-2638
- cvss
- 6.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 44%
- public exploits
- 0
- none known
Summary
The Trix editor, versions prior to 2.1.4, is vulnerable to XSS when pasting malicious code. This vulnerability is a bypass of the fix put in place for GHSA-qjqp-xr96-cj99. In pull request 1149, sanitation was added for Trix attachments with a `text/html` content type. However, Trix only checks the content type on the paste event's `dataTransfer` object. As long as the `dataTransfer` has a content type of `text/html`, Trix parses its contents and creates an `Attachment` with them, even if the attachment itself doesn't have a `text/html` content type. Trix then uses the attachment content to set the attachment element's `innerHTML`. An attacker could trick a user to copy and paste malicious code that would execute arbitrary JavaScript code within the context of the user's session, potentially leading to unauthorized actions being performed or sensitive information being disclosed. This vulnerability was fixed in version 2.1.4.
Patch / fix
- npm trix 2.1.4
- basecamp trix 2.1.4
- github.com/basecamp/trix@7656f57 commit
- github.com/basecamp/trix#1149 pull request
- github.com/basecamp/trix#1156 pull request
- github.com/basecamp/trix/releases/tag/v2.1.4 release
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 2 y ago
Exploit prediction
0.52% chance of exploitation in the next 30 days, higher than 44% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | trix | <2.1.4 |
2.1.4 |
Affected products
- basecamp trix
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/basecamp/trix/pull/1149
web
-
github.com
/basecamp/trix/pull/1156
web
-
github.com
/basecamp/trix/commit/7656f578af0d03141a72a9d27cb3692e6947dae6
web
-
github.com
/basecamp/trix/security/advisories/GHSA-qm2q-9f3q-2vcv
web
-
github.com
/basecamp/trix/security/advisories/GHSA-qjqp-xr96-cj99
web
-
github.com
/basecamp/trix/releases/tag/v2.1.4
web
-
nvd.nist.gov
/vuln/detail/CVE-2024-43368
advisory
-
developer.mozilla.org
/en-US/docs/Web/API/DataTransfer
web
-
github.com
/basecamp/trix
package
Sources
- CVE List CVE-2024-43368
- GitHub Advisory GHSA-qm2q-9f3q-2vcv
- NVD CVE-2024-43368
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.