{"id":"GHSA-g9jg-w8vm-g96v","aliases":[],"url":"https://o3.security/vulnerability/GHSA-g9jg-w8vm-g96v","summary":"Trix has a stored XSS vulnerability through its attachment attribute","details":"### Impact\nThe Trix editor, in versions prior to 2.1.16, is vulnerable to XSS attacks through attachment payloads.\n\nAn attacker could inject malicious code into a data-trix-attachment attribute that, when rendered as HTML and clicked on, could execute arbitrary JavaScript code within the context of the user's session, potentially leading to unauthorized actions being performed or sensitive information being disclosed.\n\n### Patches\nUpdate Recommendation: Users should upgrade to Trix editor version 2.1.16 or later.\n\n### Resources\nThe XSS vulnerability was reported by HackerOne researcher [michaelcheers](https://hackerone.com/michaelcheers?type=user).","published":"2025-12-31T22:07:25Z","modified":"2026-09-10T03:50:31.999539271Z","cvss":{"score":4.6,"severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N"},"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"trix","fixedVersion":"2.1.16"},{"ecosystem":"RubyGems","name":"action_text-trix","fixedVersion":"2.1.16"}],"fix":{"url":"https://github.com/basecamp/trix/commit/73c20cf03ab2b56c0ef9c9b1aaf63f2de44f4010","label":"basecamp/trix@73c20cf"},"references":[{"type":"WEB","url":"https://github.com/basecamp/trix/security/advisories/GHSA-g9jg-w8vm-g96v"},{"type":"WEB","url":"https://github.com/basecamp/trix/commit/73c20cf03ab2b56c0ef9c9b1aaf63f2de44f4010"},{"type":"PACKAGE","url":"https://github.com/basecamp/trix"},{"type":"WEB","url":"https://github.com/basecamp/trix/releases/tag/v2.1.16"},{"type":"WEB","url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/action_text-trix/GHSA-g9jg-w8vm-g96v.yml"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-09-10T03:50:31.999539271Z"}}