---
id: CVE-2026-109612
title: >-
  Frappe ERPNext before 15.120.0 and 16.x before 16.33.0 contains a stored
  cross-site scripting vulnerability in a report view that interpolates stored
  record names into markup without escaping
summary: >-
  Frappe ERPNext before 15.120.0 and 16.x before 16.33.0 contains a stored
  cross-site scripting vulnerability in a report view that interpolates stored
  record names into markup without escaping. Authenticated users able to create
  records c…
severity: high
cvss: 7.3
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N'
cwe:
  - CWE-79
published: '2026-10-12'
updated: '2026-10-12'
sourceUpdated: '2026-10-12T23:17:25.293'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-109612'
references:
  - url: 'https://github.com/frappe/erpnext/security/advisories/GHSA-f99r-gp2w-xghj'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/frappe-erpnext-before-15.120.0-stored-xss-via-report-view
    label: disclosure@vulncheck.com
tags:
  - nvd
  - cve.org
ingestedAt: '2026-10-13T00:09:02.618Z'
vendor: frappe
product: erpnext
affected:
  - erpnext < 15.120.0
  - erpnext >= 16.0.0-beta.1 < 16.33.0
epss: 0.00207
epssPercentile: 0.10694
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-18T11:57:08.266894Z'
---

## Overview

Frappe ERPNext before 15.120.0 and 16.x before 16.33.0 contains a stored cross-site scripting vulnerability in a report view that interpolates stored record names into markup without escaping. Authenticated users able to create records can store crafted record names that execute script in the session of any user who later opens the report.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
