CVE-2026-62315
HighCVSS 7.1Exploitation Probability (EPSS)
Low risk21th percentile - higher than 21% of all known CVEs
Summary
Frappe version 16.31.0 and earlier has a type confusion vulnerability in frappe.client.set_value, which checks a dictionary supplied via the fieldname parameter against forbidden fields before parsing it into individual field names. An authenticated caller can exploit this to mass-assign protected fields through the client endpoint. No released fixed version is available as of this review.
Risk Assessment
An authenticated user can modify protected fields, potentially leading to privilege escalation or data integrity compromise.
Recommendation
Monitor vendor announcements and apply the fix when available; temporarily restrict access to the client endpoint for unauthorized users.
Other vulnerabilities in Frappe
See all- CVE-2025-68953High
Frappe, a full-stack web application framework, is vulnerable to path traversal attacks in versions 14.99.5 and below, and 15.0.0 through 15.80.1. Lack of proper sanitization on some requests allows arbitrary files to be retrieved from the server. This issue is fixed in versions 14.99.6 and 15.88.1.
- CVE-2017-1000120High
In Frappe versions up to 7.1.27, there is an SQL injection vulnerability in the frappe.share.get_users function that allows remote authenticated users to execute arbitrary SQL commands via the fields parameter.
- CVE-2026-39351Critical
Frappe prior to versions 16.14.0 and 15.104.0 has a vulnerability allowing unrestricted Doctype access via API exploit.
- CVE-2025-68929Critical
Frappe is a full-stack web application framework. Prior to versions 14.99.6 and 15.88.1, an authenticated user with specific permissions could be tricked into accessing a specially crafted link. This could lead to a malicious template being executed on the server, resulting in remote code execution. Versions 14.99.6 and 15.88.1 fix the issue. No known workarounds are available.
- CVE-2026-81731Medium
Frappe 15.11.0 through 16.32.0 stores and renders workspace card descriptions without XSS filtering. The description field is marked with ignore_xss_filter, and _sanitize_content() skips such fields, so the value is stored as submitted. It is then interpolated into a Bootstrap popover with html: true, allowing a user with the Workspace Manager role to execute arbitrary markup in the sessions of other desk users.
- CVE-2026-66003High
Frappe is a full-stack web application framework. Prior to version 15.115.0, an access control bypass in the REST API allows a user to read data from Linked DocTypes they are not authorized to access. When a document references another via a Link field, the framework does not consistently enforce the linked DocType's permissions, so a low-privileged user can obtain fields from linked records outside their scope. Fixed in 15.115.0.
- CVE-2026-66002Medium
Frappe prior to 15.115.0 and 16.27.0 has a vulnerability in the public request-data web form and PersonalDataDownloadRequest class in frappe/website/doctype/personal_data_download_request/personal_data_download_request.py that return distinguishable response shapes for registered and unregistered email addresses, including the user_name field and persistence behavior. A remote attacker can compare the responses to enumerate registered users.
- CVE-2026-66001High
Frappe before versions 15.114.0 and 16.26.0 has a vulnerability in the OAuth2 consent flow that allows an attacker to cause an authenticated user to approve an OAuth grant or reuse authorization state for the wrong client. This is due to missing POST restriction, missing CSRF token, and lack of client scoping for active OAuth tokens.
- CVE-2026-63654Medium
Frappe version 16.31.0 and earlier has a vulnerability where the whitelisted frappe.model.workflow.bulk_workflow_approval endpoint in frappe/model/workflow.py accepts safe HTTP methods for state-changing workflow approvals because the endpoint is not restricted to POST. An attacker can induce an authenticated victim browser to submit an approval action with the victim privileges. No released fixed version is available as of this review.
- CVE-2026-53569Medium
Frappe version 16.31.0 and earlier has a vulnerability in the whitelisted toggle_like and mark_as_seen endpoints that do not enforce read permission before modifying _liked_by metadata or a Note seen state. An authenticated user can interact with documents or notes that the user cannot read, disclosing resource existence and modifying resource-associated metadata.
Original NVD description (English source)
Frappe is a full-stack web application framework. In version 16.31.0 and earlier, frappe.client.set_value in frappe/client.py checks a dictionary supplied through the fieldname parameter against forbidden standard and child-table fields before parsing the dictionary into individual field names. An authenticated caller can exploit this type confusion to mass-assign protected fields through the client endpoint. No released fixed version is available as of this review.

