---
id: "CVE-2026-115717"
kind: "vulnerability"
aliases: ["CVE-2026-115717"]
title: "Frappe Builder: convert_to_webp lets users make the server fetch internal URLs"
severity: "high"
cvss: 7.7
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["cloud", "frappe", "frappe-builder", "package", "self-hosted"]
not_affected_if: ["already-on-1.36.1-or-later", "builder-not-installed"]
published_at: "2026-10-26T12:17:04+00:00"
first_seen_at: "2026-10-26T12:29:53+00:00"
updated_at: "2026-10-26T12:31:40+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-115717", "first_seen_at": "2026-10-26T12:29:53+00:00"}]
---

# Frappe Builder: convert_to_webp lets users make the server fetch internal URLs

Frappe Builder versions before 1.36.1 have an API endpoint, convert_to_webp, that fetches a user-supplied image URL without the write-permission check used by similar handlers and without re-checking redirect targets. An authenticated low-privilege user can make the server request internal hosts or cloud metadata endpoints and read the saved response from a publicly readable /files/ URL.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed Frappe Builder version (`bench version` or the app's `pyproject.toml`) and confirm it is below `1.36.1`
- Look for the `convert_to_webp` function in the builder app and check whether it calls `has_page_write` before `requests.get`
- Review web server logs for outbound requests to internal addresses or `169.254.169.254` triggered by the convert_to_webp endpoint

## Fix

- Upgrade Frappe Builder to `1.36.1` or later
- Until upgraded, restrict who can reach the convert_to_webp endpoint and block outbound requests from the app server to internal ranges and cloud metadata addresses

## Timeline

- 2026-10-26T12:29:53+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-115717

## From the sources

Frappe Builder versions before 1.36.1 contain a server-side request forgery vulnerability in the convert_to_webp API endpoint, which lacks the has_page_write access control applied to similar asset-ingest handlers and performs an unprotected requests.get call that follows redirects without re-validating resolved IP addresses. A low-privilege authenticated user can supply an image_url pointing to an internal address or use DNS rebinding and open redirects to make the server fetch internal network resources or cloud metadata endpoints, with successful image responses saved to a world-readable /files/ URL enabling data exfiltration or blind probing of internal hosts.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
