Description
BentoPDF is a client-side PDF toolkit that is self hostable. In 2.8.6 and earlier, the certificate and timestamp CORS proxy in cloudflare/cors-proxy-worker.js uses isPrivateOrReservedHost() to validate a supplied hostname separately from the DNS resolution used by fetch(targetUrl), allowing an attacker-controlled hostname to resolve to an internal or reserved destination after validation. A certificate-like path can satisfy ALLOWED_PATH_PATTERNS, and direct clients can forge the browser-oriented Origin header. Deployments without PROXY_SECRET skip the optional signature check, while the signature is an anti-abuse measure rather than a destination-security boundary. The proxy has a 10 MB response limit and can relay response bodies from reachable destinations. The advisory identifies both the official Worker deployment and self-hosted instances as impacted where the Worker execution environment can reach internal or reserved destinations. This vulnerability is fixed in 2.8.7.
Published: 2026-09-24
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: Server‑Side Request Forgery allowing access to internal or reserved network resources
Action: Apply Patch
AI Analysis

Impact

BentoPDF’s cors‑proxy-worker.js contains a server‑side request forgery flaw. The proxy validates a supplied hostname with isPrivateOrReservedHost() before performing a fetch. The validation is independent of the DNS resolution used by fetch(targetUrl), enabling an attacker to supply a hostname that passes the allow‑list check yet resolves to an internal or reserved destination after fetch. Successful exploitation lets an attacker retrieve up to a 10 MB response from any reachable server, including internal infrastructure and services that should not be exposed to the public internet. The flaw also permits manipulation of the Origin header for browser‑directed clients, potentially leaking private information through responses that would normally be protected by the browser’s same‑origin policy.

Affected Systems

Any deployment of BentoPDF 2.8.6 or earlier, whether using the official Cloudflare‑based worker or a self‑hosted instance, is affected, provided the worker’s execution environment can reach internal or reserved networks. The problem arises in both client‑side and server‑side deployments, and replacement certificates or timestamp proxies that rely on the same cors‑proxy are included.

Risk and Exploitability

The vulnerability is classified with a CVSS score of 8.6, indicating high severity. EPSS is not available, and the defect is not listed in CISA’s KEV catalog, but the lack of an official restriction on target addresses means that the attack is feasible if the worker can resolve internal or reserved names. Exploitation requires an attacker to supply a malicious hostname and orchestrate a request via the cors‑proxy, possibly leveraging forged Origin headers when the client has a browser reference. Deployments that omit PROXY_SECRET lose an additional anti‑abuse check, increasing risk for unauthenticated request exploitation. Once exploited, an attacker can exfiltrate data or use the proxy to pivot within the internal network.

Generated by OpenCVE AI on September 25, 2026 at 10:52 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade BentoPDF to version 2.8.7 or later to remove the vulnerable proxy logic
  • Enable PROXY_SECRET in the configuration to enforce request signatures and reduce abuse, even if it is not a boundary for internal addresses
  • Restrict the allowed hostname list and DNS resolution for the cors‑proxy by configuring network firewall rules or applying domain whitelists to limit outbound connections to trusted external services

Generated by OpenCVE AI on September 25, 2026 at 10:52 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 25 Sep 2026 01:45:00 +0000

Type Values Removed Values Added
First Time appeared Alam00000
Alam00000 bentopdf
Vendors & Products Alam00000
Alam00000 bentopdf

Thu, 24 Sep 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 24 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Description BentoPDF is a client-side PDF toolkit that is self hostable. In 2.8.6 and earlier, the certificate and timestamp CORS proxy in cloudflare/cors-proxy-worker.js uses isPrivateOrReservedHost() to validate a supplied hostname separately from the DNS resolution used by fetch(targetUrl), allowing an attacker-controlled hostname to resolve to an internal or reserved destination after validation. A certificate-like path can satisfy ALLOWED_PATH_PATTERNS, and direct clients can forge the browser-oriented Origin header. Deployments without PROXY_SECRET skip the optional signature check, while the signature is an anti-abuse measure rather than a destination-security boundary. The proxy has a 10 MB response limit and can relay response bodies from reachable destinations. The advisory identifies both the official Worker deployment and self-hosted instances as impacted where the Worker execution environment can reach internal or reserved destinations. This vulnerability is fixed in 2.8.7.
Title BentoPDF: SSRF in cors-proxy-worker.js via DNS-based hostname allowlist bypass
Weaknesses CWE-918
References
Metrics cvssV3_1

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


Subscriptions

Alam00000 Bentopdf
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-24T15:37:29.237Z

Reserved: 2026-08-20T20:35:30.148Z

Link: CVE-2026-77581

cve-icon Vulnrichment

Updated: 2026-09-24T15:37:26.759Z

cve-icon NVD

Status : Deferred

Published: 2026-09-24T16:17:10.943

Modified: 2026-09-29T19:07:47.037

Link: CVE-2026-77581

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T11:00:12Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)