CVE-2026-45741
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 53 - wyżej niż 53% wszystkich znanych CVE
Streszczenie
Gotenberg w wersji 8.32.0 i wcześniejszych ma podatność w funkcji IsPublicIP, która nie odrzuca prefiksów IPv6 takich jak 2002::/16, 64:ff9b::/96, fec0::/10 i innych, które mogą zawierać lub kierować do niepublicznych adresów IPv4. Spreparowany rekord DNS AAAA może spowodować, że klient HTTP będzie traktował adres opakowujący wewnętrzny cel (np. 169.254.169.254) jako publiczny, co umożliwia dostęp do metadanych chmury. Problem naprawiono w wersji 8.33.0.
Ocena ryzyka
Atak może umożliwić dostęp do usług metadanych chmury i potencjalnie ujawnić poświadczenia chmurowe, co stanowi poważne zagrożenie dla bezpieczeństwa infrastruktury.
Rekomendacja
Zaleca się aktualizację Gotenberg do wersji 8.33.0 lub nowszej.
Inne podatności w Gotenberg
Zobacz wszystkie- CVE-2026-42595Wysokie
Gotenberg to API do plików PDF, które przed wersją 8.32.0 nie miało domyślnej ochrony przed atakami SSRF opartymi na HTTP/HTTPS. Atakujący mógł skierować Chromium na dowolny wewnętrzny adres IP i otrzymać odpowiedź w formacie PDF.
- CVE-2026-42590Wysokie
Gotenberg to API do plików PDF, które przed wersją 8.30.0 miało lukę umożliwiającą obejście blokady zapisu metadanych ExifTool. Dzięki składni prefiksu grupy ExifTool, atakujący mógł dowolnie zmieniać nazwy plików, przenosić je oraz tworzyć twarde i miękkie linki na serwerze.
- CVE-2026-40893Wysokie
Gotenberg to API bezstanowe dla plików PDF, które przed wersją 8.31.0 nie sprawdzało poprawnie tagów, co umożliwiało atakującym zdalnym przesuwanie, zmienianie nazw i uprawnień do dowolnych plików.
- CVE-2026-45742Wysokie
Gotenberg od wersji 8.10.0 do 8.33.0 ma podatność na wyścig w funkcji newContext w pkg/modules/api/context.go, gdzie wiele gorutyn współbieżnie zapisuje do współdzielonych map i slice'ów. Spreparowane żądanie multipart z wieloma wpisami downloadFrom może wywołać błąd krytyczny 'concurrent map writes' i zatrzymać proces. Domyślna konfiguracja umożliwia atak bez uwierzytelnienia, prowadząc do odmowy usługi. Problem naprawiono w wersji 8.33.0.
- CVE-2026-44829Wysokie
Gotenberg w wersji 8.32.0 i wcześniejszych ma podatność w obsłudze nazw plików, gdzie filepath.Base na Linuxie nie traktuje backslashy jako separatorów ścieżek, więc nazwa pliku zawierająca składniki ścieżek w stylu Windows (np. ........\Windows\System32\evil.pdf) przechodzi sanityzację. Zdalny atakujący może dostarczyć taką nazwę, a po rozpakowaniu archiwum na systemie Windows plik może zostać zapisany poza zamierzonym katalogiem. Problem naprawiono w wersji 8.33.0.
- CVE-2026-55229Wysokie
Podatność w Gotenberg przed wersją 8.34.0 umożliwia wstrzyknięcie żądań po stronie serwera (SSRF) oraz ograniczony odczyt plików lokalnych poprzez specjalnie spreparowany dokument przekazany do endpointu /forms/libreoffice/convert. LibreOffice automatycznie pobiera zewnętrzne zasoby HTTP(S) oraz lokalne pliki podczas konwersji dokumentu.
- CVE-2026-39383Wysokie
Gotenberg w wersji 8.29.1 zawiera podatność na ślepe SSRF. Nieuwierzytelniony atakujący z dostępem sieciowym może wymusić na serwerze wykonanie wychodzących żądań HTTP POST do dowolnych wewnętrznych lub zewnętrznych miejsc docelowych, podając spreparowany URL w nagłówku Gotenberg-Webhook-Url.
- CVE-2026-40280Wysokie
Gotenberg w wersjach 8.30.1 i wcześniejszych używa wyrażenia regularnego ^https?:// do sprawdzania URL-i w listach blokad prywatnych adresów IP. Ponieważ Go normalizuje schemat URL do małych liter przed nawiązaniem połączenia, atakujący może ominąć blokadę, używając wielkich liter w schemacie (np. HTTP://). Umożliwia to wysyłanie nieuwierzytelnionych żądań do wewnętrznych usług sieciowych, w tym metadanych chmurowych.
- CVE-2024-21527Wysokie
Podatność SSRF w Gotenberg przed wersją 8.1.0 umożliwia wczytanie plików lokalnych przez endpoint /convert/html. Atakujący może wykorzystać iframe wskazujący na localhost, np. <iframe src="\\localhost/etc/passwd">, co prowadzi do odczytu wrażliwych plików systemowych.
Oryginalny opis (angielski, źródło NVD)
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

