Skip to main content

Frappe Builder EUVDEUVD-2026-109785

| CVE-2026-115720 MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
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
    Authenticate as any Builder user
  2. Delivery
    Submit attacker-controlled public URL to convert_to_webp
  3. Exploit
    Server-side fetch follows redirect / rebound DNS to internal address
  4. Execution
    Reach cloud metadata or internal services the guard never checked
  5. Impact
    Exfiltrate metadata, port-scan, or hang request for DoS

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Requires an authenticated session: the convert_to_webp endpoint has no permission decorator and is reachable by ANY authenticated Builder user before 1.36.1, while the import_remote_assets and import_remote_fonts fetches additionally require Builder Page write permission. The attacker must supply a public URL that either HTTP-redirects to an internal/link-local target or whose DNS answer changes between the guard's check and the actual connection (DNS rebinding); default redirect-following and the absence of IP pinning on requests.get make this work against default configurations. Limiting factors: authentication is mandatory (no unauthenticated path), impact is confined to SSRF-style internal reachability, metadata disclosure (including 100.64.0.0/10 addresses), internal port scanning, and a request-hang DoS from the missing timeout - there is no direct code execution or write to the vulnerable system. Only complete fix per vendor is upgrading to 1.36.1 (which requires Frappe v16.36.1+); no workarounds exist.

Impact

This is a moderate, credibly-real but non-emergency issue. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) and the 5.3 base score are consistent with the description: network-reachable, low-complexity, but requiring authentication (PR:L) and yielding only subsequent-system confidentiality impact (SC:L) with no direct impact to the vulnerable system (VC:N/VI:N/VA:N). The vuln.today decision label is 'this_month', not act_now or emergency, which aligns with the limited impact. No EPSS score was provided, the CVE is not listed in CISA KEV, and no confirmed working exploit code is present in the input - the references are the vendor release, the GHSA advisory, the VulnCheck advisory, and fix PR #989, i.e. disclosure and remediation artifacts rather than weaponized exploits. The real differentiator from a 'high-CVSS-but-low-real-risk' paper finding is the specific, confirmed mechanism: a time-of-check/time-of-use guard that validates the hostname once and then follows redirects and re-resolves DNS without re-checking, reaching cloud metadata endpoints (including the 100.64.0.0/10 / 100.100.100.200 case). That makes exploitation mechanically straightforward for any authenticated user, but the authentication requirement and confidentiality-only impact keep it a prioritized-patch item rather than a drop-everything event. Note the GHSA also assigns CWE-367 (TOCTOU) alongside CWE-918, reflecting the DNS-rebinding variant in addition to the redirect bypass.

Exploit ScenarioDerived

An authenticated Frappe Builder user (no elevated role needed) calls the convert_to_webp endpoint, which lacks a permission decorator, supplying a public URL under their control. That URL HTTP-redirects - or re-resolves via DNS rebinding - to an internal or link-local address such as a cloud metadata service, which the one-time hostname guard never re-validates, letting the server fetch and return internal data or hang on a missing timeout. No public working exploit is identified at time of analysis, though the vendor GHSA and fix PR describe the mechanism in detail.

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

Frappe Builder before 1.36.1 lets any authenticated user bypass its SSRF guard by supplying a public URL that redirects, or DNS-rebinds, to internal or link-local addresses. The convert_to_webp endpoint lacks a permission decorator, so any authenticated Builder user can reach cloud metadata services, scan internal ports, or hang requests because no timeout is set; import_remote_assets and import_remote_fonts require Builder Page write permission. This is a moderate, non-emergency issue, and no public exploit was identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade Frappe Builder to 1.36.1, which checks the exact address for every connection and every redirect hop and refuses addresses that are not globally routable; v1.36.x requires Frappe v16.36.1 or later. The vendor states there are no workarounds, so upgrading is the only complete fix. Advisory: https://github.com/frappe/builder/security/advisories/GHSA-hvrf-fhv3-3v7p; release: https://github.com/frappe/builder/releases/tag/v1.36.1; upstream PR: https://github.com/frappe/builder/pull/989. Relevant commits include 7b32046c21f6048af6a33c2fbc7f2b27df38bbf2 (connect remote fetches only to public addresses and require page write to convert images) and 1c33a16d87bb2e527a04a125462e18a7592822b9 (keep convert_to_webp inside builder_assets and stop it overwriting files).

Affected VersionsENISA

builder 1.0.0 <1.36.1

Affected Packages

euvd builder fix: 1.36.1

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

The root cause is CWE-918 server-side request forgery combined with a check/use gap (CWE-367): builder/api.py assert_not_private_url() resolves and validates only the initial hostname, then requests.get(url) performs a second DNS resolution and follows redirects by default without pinning the validated IP. That lets an attacker-controlled public hostname redirect to 127.0.0.1, RFC1918, link-local, or 100.64.0.0/10 targets; the guard also accepted 100.64.0.0/10, including the 100.100.100.200 metadata address. The convert_to_webp endpoint has no permission decorator and is reachable by any authenticated Builder user before 1.36.1, while import_remote_assets and import_remote_fonts require Builder Page write permission. The missing request timeout enables a request-hang denial of service, and the SSRF can be used for internal port scanning and metadata disclosure. No CPE identifiers were provided; the advisory identifies package other/frappe/builder below 1.36.1 as vulnerable and fixed in 1.36.1. The trigger details available are the redirect-following and DNS-rebinding behavior described by the vendor advisory.

Know when the next one hits your stack

  • 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:N/SC:L/SI:N/SA:N
vuln.today AI 5.0 MEDIUM

Network-reachable and low-complexity but requires authentication (PR:L); SSRF crosses a trust boundary (S:C) exposing internal/metadata data at low confidentiality, with no integrity or availability impact to the vulnerable system.

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

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
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

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

DescriptionCVE.org

Frappe Builder before 1.36.1 contains a server-side request forgery vulnerability in builder/api.py where the assert_not_private_url() guard validates only the initial hostname before callers invoke requests.get(url) with default redirect-following and no IP pinning, allowing an attacker-supplied public URL to HTTP-redirect to internal or link-local addresses the guard never validated. An authenticated attacker can call the convert_to_webp endpoint, which lacks a permission decorator, with a URL that redirects to internal targets such as cloud metadata services to perform SSRF, internal port scanning, or trigger a request-hang denial of service due to the missing timeout.

Threat Intelligence Overview

EPSS Score
0.3%
Top 72% exploitable
Prevalence
Low
niche open-source low-code website builder within the Frappe ecosystem
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment 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

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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