Stored XSS in Frappe ERPNext via tool view record names
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
Frappe ERPNext before 15.112.0 and from 16.0.0-beta.1 before 16.23.0 contains a stored cross-site scripting flaw (CWE-79) in a tool view that interpolates stored record names into markup without escaping. An authenticated user who can create such records can give them malicious names that run script in the session of any user who later opens that tool. The attack needs low privileges and user interaction, and it can affect confidentiality and integrity of the victim's session.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Frappe ERPNext before 15.112.0 and 16.x before 16.23.0 contains a stored cross-site scripting vulnerability because a tool view interpolates stored record names into markup without escaping. An authenticated user able to create such records can give them malicious names, executing script in the session of any user who later opens that tool.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- 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
Remediation
Upgrade ERPNext to version 15.112.0 or 16.23.0. The sources list no further details for other branches.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA erpnext (frappe) Fixed in 15.112.0, 16.23.0
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
frappe erpnext 15.112.0, 16.23.0
5 records Highest priority Priority LOW 5 LOW
Other records, highest priority first
- TI-2026-71419 Missing authorization in Frappe ERPNext production record endpointsPriority LOW 31
- TI-2026-71409 Missing authorization in Frappe ERPNext exposes personal dataPriority LOW 31
- TI-2026-71421 Frappe ERPNext Stored XSS via Public Portal FormPriority LOW 23
Timeline
- 2026-10-13 Threatist record created from CVE-2026-109604
- 2026-10-13 Alias added: GHSA-frw3-f8vj-wxg9
- 2026-10-13 Priority changed: MEDIUM → LOW
- 2026-10-18 CISA SSVC decision points changed
References
More frappe vulnerabilities
- TI-2026-28140 ERPNext v15.103.1 and before is vulnerable to Server-Side Template Injection (SSTI). CVSS 3.1CRITICAL 9.8
- TI-2025-40873 An issue was discovered in Frappe ERPNext through 15.89.0. CVSS 3.1CRITICAL 9.8
- TI-2025-40872 An issue was discovered in Frappe ERPNext through 15.89.0. CVSS 3.1CRITICAL 9.8
- TI-2025-40871 A Server-Side Template Injection (SSTI) vulnerability exists in the Frappe ERPNext… CVSS 3.1CRITICAL 9.8
- TI-2025-32462 In Frappe ERPNext 15.57.5, the function get_rfq_containing_supplier() at… CVSS 3.1HIGH 8.2
- TI-2025-32461 In Frappe ERPNext 15.57.5, the function get_stock_balance_for() at… CVSS 3.1HIGH 8.2
Sources
- CVE-2026-109604 · CVE Program
- CVE-2026-109604 · NVD
- FIRST EPSS
- GHSA-frw3-f8vj-wxg9 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences