Description
Gotenberg is a Docker-powered stateless API for PDF files. From 8.10.0 until 8.33.0, the newContext function in pkg/modules/api/context.go starts one errgroup.Go goroutine for each multipart downloadFrom entry and allows those goroutines to concurrently write to the shared ctx.files, ctx.diskToOriginal, and ctx.filesByField maps and slices. Go maps and slices are not safe for concurrent mutation, so a crafted multipart request containing many downloadFrom entries can trigger a data race and terminate the process with a fatal concurrent map writes runtime error. The default configuration enables downloadFrom and disables authentication, allowing an unauthenticated remote attacker to crash an exposed conversion service and cause a denial of service. This issue is fixed in version 8.33.0.
Published: 2026-08-19
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Gotenberg is a Docker‑powered stateless API for PDF files. From version 8.10.0 through 8.32.x, the newContext function in pkg/modules/api/context.go starts an errgroup.Go goroutine for each multipart downloadFrom entry and allows those goroutines to concurrently write to the shared ctx.files, ctx.diskToOriginal, and ctx.filesByField maps and slices. Because Go maps and slices are not safe for concurrent mutation, a crafted multipart request containing many downloadFrom entries can trigger a data race that ends the process with a fatal concurrent map writes runtime error. The default configuration, which enables downloadFrom and disables authentication, allows an unauthenticated remote attacker to crash an exposed service and cause a denial of service. This issue is fixed in version 8.33.0.

Affected Systems

The vulnerability affects Gotenberg versions 8.10.0 to 8.32.x. The default configuration allows the "downloadFrom" feature while authentication is disabled, meaning an unauthenticated attacker can submit a malicious multipart request to any exposed service. The issue was remedied in version 8.33.0 and later, which removes the concurrent write path.

Risk and Exploitability

The CVSS score of 7.5 defines a high‑severity denial‑of‑service vulnerability. The EPSS score is reported as less than 1%, indicating a low probability of exploitation according to current data, yet the impact is severe if exploited. Because the flaw permits unauthenticated users to send a crafted multipart request to any reachable Gotenberg endpoint, it can be triggered remotely without host privileges. The vulnerability is not yet listed in CISA’s KEV catalog. Because no public exploits have been disclosed, the primary risk arises from the inherent flaw rather than known attack tools.

Generated by OpenCVE AI on August 20, 2026 at 15:39 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Gotenberg to version 8.33.0 or newer to remove the race condition.
  • If upgrading is not possible, disable the "downloadFrom" feature or require authentication to limit exposure to trusted clients.
  • Deploy a health‑check and automated restart mechanism so the service recovers quickly after a crash.

Generated by OpenCVE AI on August 20, 2026 at 15:39 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-vp73-vjw8-8f32 Gotenberg has a Race Condition via Multipart `downloadFrom` Handling
History

Wed, 19 Aug 2026 16:15:00 +0000

Type Values Removed Values Added
First Time appeared Gotenberg
Gotenberg gotenberg
Vendors & Products Gotenberg
Gotenberg gotenberg

Wed, 19 Aug 2026 14:45:00 +0000

Type Values Removed Values Added
Description Gotenberg is a Docker-powered stateless API for PDF files. From 8.10.0 until 8.33.0, the newContext function in pkg/modules/api/context.go starts one errgroup.Go goroutine for each multipart downloadFrom entry and allows those goroutines to concurrently write to the shared ctx.files, ctx.diskToOriginal, and ctx.filesByField maps and slices. Go maps and slices are not safe for concurrent mutation, so a crafted multipart request containing many downloadFrom entries can trigger a data race and terminate the process with a fatal concurrent map writes runtime error. The default configuration enables downloadFrom and disables authentication, allowing an unauthenticated remote attacker to crash an exposed conversion service and cause a denial of service. This issue is fixed in version 8.33.0.
Title Gotenberg: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Weaknesses CWE-362
References
Metrics cvssV3_1

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


Subscriptions

Gotenberg Gotenberg
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-19T15:29:39.998Z

Reserved: 2026-05-13T06:54:34.220Z

Link: CVE-2026-45742

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-19T15:17:05.170

Modified: 2026-08-19T16:17:11.717

Link: CVE-2026-45742

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-20T15:45:03Z

Weaknesses
  • CWE-362

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')