CVE-2026-47665 Penpot: Stored XSS via comment content, innerHTML renders unsanitized HTML
Stored XSS in Penpot allows attackers to execute scripts via comments, stealing session cookies and accessing victim files.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- None listed
What is CVE-2026-47665?
CVE-2026-47665 is a high-severity cross-site scripting vulnerability in penpot, published on 26 Aug 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
Penpot is an open-source design and prototyping platform. In versions up to and including 2.14.3, Penpot is vulnerable to stored cross-site scripting through file comments, whose content is stored as raw text and rendered into the page with innerHTML without any sanitization. Because the backend applies only a length check and the frontend writes comment content directly through innerHTML, any team member who can comment on a shared file can embed HTML such as an image error handler or script that executes in the browser of every other collaborator. The attack is passive: any user who opens the comments panel on the affected file triggers script execution on the Penpot origin, allowing theft of session cookies, actions performed as the victim, and access to their files and projects. This issue is fixed in version 2.15.3.
Weakness: CWE-79
Which versions are affected by CVE-2026-47665?
How do I fix CVE-2026-47665?
No fix has been published for CVE-2026-47665 yet. Limit exposure of the affected software until one is available.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2026-47665 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47665 exists.
Sources
Also known as GHSA-vc72-6r45-q988.