CVE-2026-105694: Penpot stored XSS via unsanitized SVG upload

CVE-2026-105694 · Severity: medium · CVSS 5.4 · Published 2026-10-05

Penpot is an open-source design platform where teams collaborate on creating digital interfaces and prototypes. Users with file-edit permission can upload malicious SVG image files containing hidden JavaScript code. When another user views that uploaded asset, the attacker's JavaScript runs in their browser with full access to their Penpot session, allowing theft of designs, credentials, and session hijacking.

Technologies: Penpot. Vendors: Penpot.

Quick answers

Is CVE-2026-105694 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-105694 being exploited in the wild.
How severe is CVE-2026-105694?
Medium severity, with a CVSS score of 5.4, published 5 October 2026.
Which products and versions are affected?
Penpot prior to 2.18.0.
Is there a fix for CVE-2026-105694?
Yes: fixed in 2.18.0. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-105694 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-105694?
Check whether you run Penpot at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: 2.18.0

Technical details

This is a stored cross-site scripting (XSS) vulnerability in Penpot's SVG media upload handler. Authenticated users can upload SVG files containing script tags, event handler attributes (onload, onmouseover, etc.), and foreignObject elements that are stored without sanitization and served as image/svg+xml from the Penpot origin. Any user viewing the asset executes the attacker's JavaScript in the context of the Penpot origin with their session privileges.

Affected products

  • Penpot Penpot prior to 2.18.0

Timeline

  • 2026-10-05: disclosed
  • 2026-08-05: patched: SVG sanitization added in commit c4dd0435

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.