Skip to main content
← All vulnerabilities
CVE-2026-44829GO-2026-5443GHSA-HWC4-GMRW-5222

Gotenberg: Path traversal in zip entry name via Windows-style separators in upload filename

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 8.33.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

Gotenberg is a Docker-powered stateless API for PDF files. In 8.32.0 and earlier, filename handling in pkg/modules/api/context.go uses filepath.Base on Linux, which does not treat backslashes as path separators, so a multipart filename containing Windows-style parent directory components survives sanitization. The original filename flows through ctx.diskToOriginal and the multi-output PDF routes into archives.FilesFromDisk and archives.Zip.Archive as the generated zip entry name. A remote attacker can submit a name such as ........\Windows\System32\evil.pdf through an upload or an upstream downloadFrom Content-Disposition header, and a Windows archive extractor can write the resulting file outside the intended extraction directory. The affected paths include /forms/pdfengines/split and other multi-output PDF, LibreOffice, and conversion routes, and exploitation can cause arbitrary file writes on a downstream Windows system when a user or process extracts the returned archive. This issue is fixed in version 8.33.0.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • gotenberg gotenberg

    fixed in 8.33.0

  • github.com/gotenberg/gotenberg/v7Go

    All versions

  • github.com/gotenberg/gotenberg/v8Go

    fixed in 8.33.0

References 4

GitHub · gotenberg/gotenberg