GHSA-53g2-mvcc-q9x3

Suggest an improvement
Source
https://github.com/advisories/GHSA-53g2-mvcc-q9x3
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/07/GHSA-53g2-mvcc-q9x3/GHSA-53g2-mvcc-q9x3.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-53g2-mvcc-q9x3
Aliases
Published
2026-07-24T16:18:01Z
Modified
2026-08-12T21:00:06.791989108Z
Severity
  • 4.6 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N CVSS Calculator
Summary
Trix: Stored XSS via HTMLParser attribute injection on paste
Details

Impact

The Trix editor, in versions prior to 2.1.18, is vulnerable to XSS when crafted HTML is pasted into the editor. The HTMLParser processed a mock attachment, a <span> carrying an empty data-trix-attachment="{}". The empty attachment object caused the element to bypass attachment handling, so its data-trix-attributes were applied to a plain string piece. The pre-2.1.18 StringPiece.fromJSON accepted the href without validation, so an attacker-supplied javascript: URI was carried into the document model and emitted verbatim into the serialized HTML, executing when the content was rendered and clicked.

This is a stored XSS in any application that accepts untrusted rich text through Trix and renders the serialized output to other users. Applications that apply server-side HTML sanitization, such as the Rails built-in sanitizer, are additionally protected because the payload is neutralized on save.

This vulnerability shares its fix with GHSA-53p3-c7vp-4mcc. Both are resolved by the StringPiece.fromJSON sanitization added in 2.1.18. This advisory covers the paste and HTMLParser entry vector, while GHSA-53p3-c7vp-4mcc covers the drag-and-drop path through the fallback Level0InputController.

Patches

Users should upgrade to Trix editor version 2.1.18 or later.

References

The vulnerability was responsibly reported by HackerOne researcher newbiefromcoma.

Database specific
{
    "github_reviewed": true,
    "nvd_published_at": null,
    "cwe_ids": [
        "CWE-79"
    ],
    "github_reviewed_at": "2026-07-24T16:18:01Z",
    "severity": "MODERATE"
}
References

Affected packages

npm / trix

Package

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
2.1.18

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/07/GHSA-53g2-mvcc-q9x3/GHSA-53g2-mvcc-q9x3.json"

RubyGems / action_text-trix

Package

Name
action_text-trix
Purl
pkg:gem/action_text-trix

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
2.1.18

Affected versions

0.*
0.0.1
2.*
2.1.15
2.1.16
2.1.17

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/07/GHSA-53g2-mvcc-q9x3/GHSA-53g2-mvcc-q9x3.json"