Description
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.
Published: 2026-10-26
Score: 5.3 Medium
EPSS: n/a
KEV: No
Impact: Server‑Side Request Forgery
Action: Patch Now
AI Analysis

Impact

Frappe Builder versions before 1.36.1 contain a server‑side request forgery flaw in builder/api.py. The function assert_not_private_url() only checks the initial hostname of a supplied URL, but the code later follows HTTP redirects with requests.get(url) and does not pin the IP address or enforce a timeout. Consequently an attacker can supply a public URL that redirects to a private or link‑local address, and the endpoint convert_to_webp, which does not require special permissions, will be used to retrieve that resource. This allows the attacker to access cloud metadata services, perform internal port scans, or cause a denial‑of‑service condition by causing a request to hang.

Affected Systems

The vulnerability affects the Frappe Builder application, specifically all releases older than 1.36.1. Administrators should verify which version is installed and plan to upgrade using the release available at v1.36.1 or later.

Risk and Exploitability

The CVSS score for this issue is 5.3, indicating moderate severity. An EPSS score is not reported, and the vulnerability is not listed in CISA’s KEV catalog, so the public probability of exploitation is currently unknown. The attack requires the attacker to be authenticated against the system and to have access to the convert_to_webp API. Once authenticated, the attacker can supply a malicious URL to trigger the SSRF mechanism and exploit the internal network or trigger a hang‑based DoS. Given the lack of redirect validation, IP pinning, and timeouts, attackers can reliably reach internal hosts without additional input from the victim.

Generated by OpenCVE AI on October 26, 2026 at 13:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Frappe Builder to version 1.36.1 or newer, which removes the vulnerable endpoint and applies stricter redirect checks.
  • Restrict access to the convert_to_webp API by adding appropriate permission decorators so only authorized users can invoke it.
  • Enforce IP pinning or a whitelist of allowed internal addresses when performing external requests, and set a reasonable timeout for all HTTP calls to prevent hanging requests.

Generated by OpenCVE AI on October 26, 2026 at 13:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 26 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 26 Oct 2026 12:15:00 +0000

Type Values Removed Values Added
Description 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.
Title Frappe Builder before 1.36.1 SSRF Guard Bypass via HTTP Redirect
First Time appeared Frappe
Frappe builder
Weaknesses CWE-918
CPEs cpe:2.3:a:frappe:builder:*:*:*:*:*:*:*:*
Vendors & Products Frappe
Frappe builder
References
Metrics cvssV3_1

{'score': 5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N'}

cvssV4_0

{'score': 5.3, 'vector': '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'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-26T19:48:35.644Z

Reserved: 2026-10-23T11:14:36.357Z

Link: CVE-2026-115720

cve-icon Vulnrichment

Updated: 2026-10-26T19:46:34.354Z

cve-icon NVD

Status : Deferred

Published: 2026-10-26T12:17:05.787

Modified: 2026-10-26T20:17:51.163

Link: CVE-2026-115720

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-26T18:50:53Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)