Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. @tiptap/core
  4. ›
  5. GHSA-cp6q-959q-f8rh

GHSA-cp6q-959q-f8rh: Tiptap: mergeAttributes() turns an own __proto__ key into inherited executable DOM attributes

September 2, 2026

@tiptap/core’s public mergeAttributes() helper uses ordinary bracket assignment on keys returned by Object.entries(). An own __proto__ key from JSON therefore invokes the legacy prototype setter on the fresh merged object. The function returns an object whose prototype is attacker-controlled, while Object.keys() and ordinary own-property checks show no attacker attributes.

When that result is used as a ProseMirror DOMOutputSpec attribute object, prosemirror-model’s DOMSerializer.renderSpec() enumerates it with for...in and applies inherited values with setAttribute(). In a browser proof, inherited src and onerror values were copied to an <img> and the error handler executed once. This is per-object prototype manipulation; the proof does not modify global Object.prototype.

References

  • github.com/advisories/GHSA-cp6q-959q-f8rh
  • github.com/ueberdosis/tiptap/commit/01d7af8c983ee5954c63734f4fa46cb23ae3246d
  • github.com/ueberdosis/tiptap/releases/tag/v3.30.4
  • github.com/ueberdosis/tiptap/security/advisories/GHSA-cp6q-959q-f8rh

Code Behaviors & Features

Detect and mitigate GHSA-cp6q-959q-f8rh with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 2.0.0-alpha.0 before 3.30.4

Fixed versions

  • 3.30.4

Solution

Upgrade to version 3.30.4 or above.

Impact 8.1 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
  • CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Source file

npm/@tiptap/core/GHSA-cp6q-959q-f8rh.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Thu, 03 Sep 2026 00:17:19 +0000.