HeyForm Vulnerable to Stored XSS via Unauthenticated SVG File Upload
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Code execution, Cross-site scripting
- Confidentiality · integrity · availability
- None · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-434 and CWE-79.
Summary
HeyForm is an open-source form builder. Prior to version 3.0.0-rc.7, the `/api/upload` endpoint allows unauthenticated file uploads including SVG files. Uploaded SVGs are stored in the static assets directory and served with `Content-Type: image/svg+xml` by Express's serve-static middleware, allowing an attacker to achieve stored cross-site scripting (XSS) on the heyform domain without any authentication. Version 3.0.0-rc.7 contains a patch for the issue.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA heyform (heyform) Fixed in 3.0.0-rc.7
Timeline
- 2026-10-02 Threatist record created from CVE-2026-45797
References
More heyform vulnerabilities
- TI-2026-45208 HeyForm has unauthenticated /api/upload endpoint that accepts arbitrary files with no auth/session/form context CVSS 3.1HIGH 8.6
- TI-2026-27351 HeyForm vulnerable to stored XSS via form field titles CVSS 3.1CRITICAL 9.0
- TI-2026-56756 HeyForm Reflects Any Origin in CORS Responses While Allowing Credentials CVSS 3.1HIGH 8.1
- TI-2026-45207 Improper input validation in heyform CVSS 3.1MEDIUM 5.8
- TI-2026-85482 Stored cross-site scripting in HeyForm via uploaded HTML files CVSS 3.1HIGH 7.6
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences