CVE-2026-45741
Full vulnerability record from the local CVENow database.
Description
Gotenberg is a Docker-powered stateless API for PDF files. In 8.32.0 and earlier, the IsPublicIP function in pkg/gotenberg/outbound.go does not reject the 2002::/16 6to4 prefix, the 64:ff9b::/96 and 64:ff9b:1::/48 NAT64 prefixes, the fec0::/10 deprecated site-local prefix, Teredo, and other transition prefixes that can embed or route to non-public IPv4 destinations. The addr.Unmap operation only handles IPv4-mapped IPv6 addresses, so a crafted DNS AAAA record can cause the outbound HTTP client to treat an address wrapping an internal destination such as 169.254.169.254 as public. An unauthenticated attacker can use a conversion route with WithDenyPrivateIPs enabled to reach cloud metadata services, and the Chromium URL conversion route can return the internal response as a PDF, potentially exposing cloud credentials. Exploitation requires a deployment whose host routes the relevant IPv6 prefix, such as a dual-stack or NAT64-enabled environment. This issue is fixed in version 8.33.0.
View original CVE JSON
{
"id": "CVE-2026-45741",
"sourceIdentifier": "[email protected]",
"published": "2026-08-19T15:17:05.023",
"lastModified": "2026-10-27T13:10:00.360",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Gotenberg is a Docker-powered stateless API for PDF files. In 8.32.0 and earlier, the IsPublicIP function in pkg/gotenberg/outbound.go does not reject the 2002::/16 6to4 prefix, the 64:ff9b::/96 and 64:ff9b:1::/48 NAT64 prefixes, the fec0::/10 deprecated site-local prefix, Teredo, and other transition prefixes that can embed or route to non-public IPv4 destinations. The addr.Unmap operation only handles IPv4-mapped IPv6 addresses, so a crafted DNS AAAA record can cause the outbound HTTP client to treat an address wrapping an internal destination such as 169.254.169.254 as public. An unauthenticated attacker can use a conversion route with WithDenyPrivateIPs enabled to reach cloud metadata services, and the Chromium URL conversion route can return the internal response as a PDF, potentially exposing cloud credentials. Exploitation requires a deployment whose host routes the relevant IPv6 prefix, such as a dual-stack or NAT64-enabled environment. This issue is fixed in version 8.33.0."
},
{
"lang": "es",
"value": "Gotenberg es una API sin estado impulsada por Docker para archivos PDF. En la versión 8.32.0 y anteriores, la función IsPublicIP en pkg/gotenberg/outbound.go no rechaza el prefijo 6to4 2002::/16, los prefijos NAT64 64:ff9b::/96 y 64:ff9b:1::/48, el prefijo site-local obsoleto fec0::/10, Teredo, y otros prefijos de transición que pueden incrustar o enrutar a destinos IPv4 no públicos. La operación addr.Unmap solo maneja direcciones IPv6 mapeadas a IPv4, por lo que un registro DNS AAAA manipulado puede hacer que el cliente HTTP saliente trate una dirección que envuelve un destino interno como 169.254.169.254 como pública. Un atacante no autenticado puede usar una ruta de conversión con WithDenyPrivateIPs habilitado para alcanzar servicios de metadatos en la nube, y la ruta de conversión de URL de Chromium puede devolver la respuesta interna como un PDF, exponiendo potencialmente credenciales de la nube. La explotación requiere una implementación cuyo host enrute el prefijo IPv6 relevante, como un entorno de doble pila o habilitado para NAT64. Este problema está solucionado en la versión 8.33.0."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "gotenberg",
"product": "gotenberg",
"versions": [
{
"version": "< 8.33.0",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:L/A:N",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "CHANGED",
"confidentialityImpact": "HIGH",
"integrityImpact": "LOW",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 2.2,
"impactScore": 4.7
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-08-19T18:41:11.311035Z",
"id": "CVE-2026-45741",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-184"
},
{
"lang": "en",
"value": "CWE-918"
}
]
}
],
"references": [
{
"url": "https://github.com/gotenberg/gotenberg/commit/f9a01c9fb308372170ab7fc97b17a118ee8a125c",
"source": "[email protected]"
},
{
"url": "https://github.com/gotenberg/gotenberg/releases/tag/v8.33.0",
"source": "[email protected]"
},
{
"url": "https://github.com/gotenberg/gotenberg/security/advisories/GHSA-86m8-88fq-xfxp",
"source": "[email protected]"
},
{
"url": "https://github.com/gotenberg/gotenberg/security/advisories/GHSA-86m8-88fq-xfxp",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
]
}