Skip to main content

Frappe Builder CVE-2026-115718

| EUVDEUVD-2026-109780 MEDIUM
Missing Authorization (CWE-862)
2026-10-26 disclosure@vulncheck.com
5.3
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain any non-Guest account on the site
  2. Delivery
    Call builder.ai.api.improve_prompt endpoint
  3. Exploit
    Missing authorization check is skipped
  4. Execution
    resolve_api_key injects owner's stored AI key
  5. Impact
    Run billed LLM completions, draining paid credits

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Three concrete prerequisites must all hold: (1) the site runs a vulnerable Frappe Builder version in the band 1.33.0 through 1.35.x; (2) an AI provider key (OpenRouter per the description) is configured in Builder's AI settings, since resolve_api_key must have a stored key to spend - if no key is configured there is nothing to abuse; and (3) the attacker possesses any authenticated non-Guest session (PR:L), which can be a Website User with no Builder access at all. Limiting factors that reduce realistic risk: authentication is required (not anonymous/remote-unauthenticated), the impact is confined to consuming the owner's LLM credits with no read/write access to site data, and sites without a configured AI key or already on 1.36.0 (where the endpoint is removed) are not exploitable.

Impact

This is a genuine but modest-severity issue best characterized as abuse of paid resources rather than a system compromise. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) and the confirming GHSA advisory agree: exploitation is network-based, low-complexity, requires no user interaction, and needs only a low-privilege authenticated session (PR:L) - specifically any logged-in non-Guest user, even a Website User with no Builder access. The impact is limited to availability of a financial resource (VA:L; VC:N/VI:N) - consumption of the site owner's AI/LLM credits - with no confidentiality or integrity impact, which is why the score lands at 5.3 (Medium). No EPSS score, SSVC exploitation/automatable/technical-impact decision, or CISA KEV status was supplied in the input, so widespread-exploitation probability cannot be quantified from the data; the only prioritization signal present is the vuln.today 'this_month' label, consistent with a Medium, non-emergency issue. No public exploit was identified at time of analysis. The key gating factor that holds real-world risk below the raw CVSS is deployment-dependent: exploitation only works where an AI provider key is actually configured in Builder's AI settings, and only against the narrow version band 1.33.0-1.35.x. Net: a real priority worth patching this month for affected deployments, but a financial/abuse problem, not a data-breach or RCE emergency.

Exploit ScenarioDerived

An attacker who holds or registers any non-Guest account on a Frappe Builder site (for example a low-privilege Website User with no Builder permissions) sends repeated requests to the builder.ai.api.improve_prompt API. Because the endpoint performs no permission check, resolve_api_key supplies the site owner's stored AI provider (OpenRouter) key, so each call runs an LLM completion billed to the owner and returns the output to the caller, effectively turning the site into a free LLM proxy. No public exploit was identified at time of analysis, but the call is a single authenticated API request with no special complexity.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 26, 2026

Missing authorization in Frappe Builder's builder.ai.api.improve_prompt endpoint lets any logged-in non-Guest session - including a Website User with no Builder access whatsoever - run LLM completions on the AI provider key the site owner configured for Builder, spending the owner's paid credits and returning the model output to the caller. Versions 1.33.0 through 1.35.x are affected; 1.36.0 removes the endpoint entirely. Exploitation still requires that an AI provider key (OpenRouter per the report) is actually stored in Builder's AI settings, and the impact is limited to resource consumption - no site data read or write, no system compromise. No public exploit code or CISA KEV entry was identified at time of analysis, and the vulnerability is scheduled for routine (this-month) handling rather than emergency response.

RemediationAI

Upgrade Frappe Builder to 1.36.0, which removes the vulnerable improve_prompt endpoint; the GHSA (https://github.com/frappe/builder/security/advisories/GHSA-58mj-c563-p78w) states that the 1.36.x line requires Frappe v16.36.1 or later, so plan the framework upgrade alongside it and verify both after the change. The upstream change landed via https://github.com/frappe/builder/pull/940 and is described in the v1.36.0 release notes. If upgrading cannot happen immediately, the vendor-specified workaround is to remove the AI provider key from Builder's AI settings until the site is upgraded - with no stored key, resolve_api_key has nothing to spend and the endpoint cannot burn credits; the trade-off is that Builder's AI-assist features stop working for legitimate users until the key is restored after patching. Sites that never configured an AI provider key are not exposed and can schedule the upgrade normally.

Affected VersionsENISA

builder 1.33.0 <1.36.0

Affected Packages

euvd builder fix: 1.36.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Frappe Builder is a site/page-building application built on the Frappe framework, which exposes Python functions as RPC-callable API endpoints and relies on per-method permission checks rather than framework-wide enforcement. The flaw is CWE-862 (Missing Authorization): builder.ai.api.improve_prompt carried no permission check at all, so any authenticated session - the framework distinguishes Guest (unauthenticated) from every logged-in user role - could invoke it. Behind the endpoint, resolve_api_key retrieves the provider credential stored in Builder's AI settings, so a successful call causes the server to perform an LLM completion billed to the site owner's account and to hand the generated text back to the attacker. That turns an otherwise ordinary AI-assist feature into an unauthenticated-by-design (for logged-in users) proxy to a paid third-party LLM service. The upstream fix in 1.36.0 removes the improve_prompt endpoint outright rather than adding a permission gate, and the 1.36.x line additionally requires Frappe v16.36.1 or later. The authenticated-but-low-privilege prerequisite is reflected in the assessed vector AV:N/AC:L/PR:L/UI:N with availability-only impact (A:L) and no confidentiality or integrity effect on site data. The trigger path is simply a call to the exposed endpoint; the sources do not describe any further preconditions beyond a stored AI key.

Know when Frappe gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Any low-privilege authenticated user can remotely call the unprotected endpoint (PR:L, AC:L, UI:N); impact is limited to consuming the owner's paid LLM credits, so A:L with no confidentiality or integrity impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Red Hat 4.3 MEDIUM

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 26, 2026 - 13:01 EUVD

DescriptionCVE.org

Frappe Builder versions 1.33.0 before1.36.0 contain a missing authorization vulnerability in the improve_prompt endpoint that allows any authenticated non-Guest session to invoke LLM completions without proper permission checks. Attackers can call the improve_prompt API to leverage the site owner's stored OpenRouter API key via resolve_api_key, consuming paid LLM credits and effectively turning the site into a free LLM proxy.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Low
niche low-code website builder within the broader Frappe ecosystem
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Frappe

View all
CVE-2025-67289 CRITICAL POC
9.6 Dec 22

Stored cross-site scripting leading to code execution in Frappe Framework 15.89.0 (and the ERPNext application built on

CVE-2018-3885 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3884 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3883 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3882 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2025-66440 HIGH POC
8.8 Dec 15

Authenticated SQL injection in Frappe ERPNext through 15.89.0 allows low-privilege users to extract arbitrary database c

CVE-2025-66439 HIGH POC
8.8 Dec 15

SQL injection in Frappe ERPNext through 15.89.0 lets an authenticated attacker with a valid session and access to the Pa

CVE-2025-66437 HIGH POC
8.8 Dec 15

Authenticated server-side template injection in Frappe ERPNext through 15.89.0 lets a user who can create or modify an A

CVE-2020-6145 HIGH POC
8.8 Aug 10

An SQL injection vulnerability exists in the frappe.desk.reportview.get functionality of ERPNext 11.1.38. Rated high sev

CVE-2026-39352 HIGH POC
8.7 May 20

Arbitrary file read in the Frappe full-stack web application framework allows remote unauthenticated attackers to retrie

CVE-2025-10655 HIGH POC
8.6 Dec 09

SQL injection in Frappe HelpDesk 1.14.0 dashboard functionality allows authenticated attackers to execute arbitrary SQL

CVE-2025-52042 HIGH POC
8.2 Oct 01

In Frappe ERPNext 15.57.5, the function get_rfq_containing_supplier() at erpnext/buying/doctype/request_for_quotation/re

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy