CVE-2026-47665: Penpot stored cross-site scripting in file comments

CVE-2026-47665 · Severity: high · CVSS 8.7 · Published 2026-08-26

Penpot is an open-source design and prototyping platform used by teams to collaborate on files and projects. A vulnerability in versions up to 2.14.3 allows any team member with comment access to inject malicious HTML or JavaScript into file comments, which then executes in the browsers of all other collaborators when they view the comments panel. An attacker can steal session cookies, perform actions as victims, or access their files and projects without needing admin privileges.

Technologies: Penpot. Vendors: Penpot.

Quick answers

Is CVE-2026-47665 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-47665 being exploited in the wild.
How severe is CVE-2026-47665?
High severity, with a CVSS score of 8.7, published 26 August 2026.
Which products and versions are affected?
Penpot up to and including 2.14.3.
Is there a fix for CVE-2026-47665?
A patch was published on 2026: Fixed in version 2.15.3 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-47665 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-47665?
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.

Technical details

Penpot is vulnerable to stored cross-site scripting (XSS) through file comments. The backend stores comment content with only a length check and no sanitization, while the frontend renders comments directly via innerHTML without encoding or purifying the HTML. Any authenticated team member with comment access can inject arbitrary HTML payloads (e.g., <img onerror=> or <script> tags) that execute in the browser context of other collaborators. Attack preconditions are minimal: only network access, a valid user account (any team member), and user interaction (opening the comments panel). The default Docker installation has no Content-Security-Policy header, removing any additional mitigation. The fix was implemented in version 2.15.3 by adding HTML escaping for comment content at rendering time.

Affected products

  • Penpot Penpot up to and including 2.14.3

Timeline

  • 2026-08-26: disclosed
  • 2026: patched: Fixed in version 2.15.3

References

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