Read the docs
TI-2026-35172 Aliases CVE-2026-47665

Penpot: Stored XSS via comment content, innerHTML renders unsanitized HTML

Priority HIGH 73CWE-79Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
Required
Attack complexity
Low
Impact type
Cross-site scripting
Confidentiality · integrity · availability
High · High · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-79.

Summary

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.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00445 38th percentileScored 2026-11-07
Fix Fixed penpot (penpot): 2.15.3

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
penpotpenpotbefore 2.15.32.15.3Patch availableCNA
  • penpot Vendorpenpot Affected before 2.15.3 Fixed in 2.15.3 Patch available CNA

Remediation

  • Fix · CNA penpot (penpot) Fixed in 2.15.3

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-47665

References

  • TI-2026-68335 OS command injection in Penpot SVG exporter via fill color CVSS 3.1CRITICAL 9.9
  • TI-2026-32845 Penpot: Pre-authenticated account takeover via team-invitation token + prepare-register-profile CVSS 3.1CRITICAL 9.9
  • TI-2026-33540 Penpot: MCP REPL server binds to 0.0.0.0 with unauthenticated /execute endpoint — RCE CVSS 3.1HIGH 8.8
  • TI-2026-14441 Missing authorization in Penpot CVSS 3.1HIGH 7.5
  • TI-2026-33541 Penpot: Authenticated SSRF in remote image import via create-file-media-object-from-url CVSS 3.1HIGH 7.7
  • TI-2026-68333 SSRF guard bypass in Penpot via IPv6 transition addresses CVSS 4.0MEDIUM 6.0
See all 18 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences