Skip to content
OpenAdvisories
High · 8.1 CVE-2023-34245 EUVD-2023-1682GHSA-4882-hxpr-hrvm

Cross site scripting (XSS) in @udecode/plate-link

Published Jun 9, 2023 · Updated Jan 6, 2025 · Assigned by GitHub_M

Description

@udecode/plate-link is the link handler for the udecode/plate rich-text editor plugin system for Slate & React. Affected versions of the link plugin and link UI component do not sanitize URLs to prevent use of the `javascript:` scheme. As a result, links with JavaScript URLs can be inserted into the Plate editor through various means, including opening or pasting malicious content. `@udecode/plate-link` 20.0.0 resolves this issue by introducing an `allowedSchemes` option to the link plugin, defaulting to `['http', 'https', 'mailto', 'tel']`. URLs using a scheme that isn't in this list will not be rendered to the DOM. Users are advised to upgrade. Users unable to upgrade are advised to override the `LinkElement` and `PlateFloatingLink` components with implementations that explicitly check the URL scheme before rendering any anchor elements.

Affected products

VendorProductAffectedFixed
udecode plate < 20.0.0 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm @udecode/plate-link < 20.0.0 20.0.0 GHSA-4882-hxpr-hrvm

References