CVE-2026-67446
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 30 - wyżej niż 30% wszystkich znanych CVE
Streszczenie
W Mailpit przed wersją 1.30.4, endpoint GET /api/v1/message/{id}/part/{partID}/thumb dekoduje załączniki obrazów do pełnej rastry przed sprawdzeniem wymiarów, liczby pikseli lub użycia pamięci. Kompaktowy obraz z bardzo dużymi wymiarami może zużywać nieproporcjonalnie dużo pamięci i CPU, co może prowadzić do degradacji dostępności usługi.
Ocena ryzyka
Podatność może być wykorzystana do ataków typu denial of service, ponieważ nieuwierzytelniony klient może przechowywać spreparowany załącznik i wywołać endpoint, powodując nadmierne zużycie zasobów.
Rekomendacja
Zaleca się aktualizację Mailpit do wersji 1.30.4 lub nowszej, która zawiera poprawkę.
Inne podatności w Mailpit
Zobacz wszystkie- CVE-2026-67448Średnie
Mailpit to narzędzie do testowania poczty i API dla programistów. Od wersji 1.29.0 do 1.30.6, oprogramowanie pośredniczące origin w server/server.go sprawdza surowy RequestURI pod kątem prefiksu /api/, podczas gdy Go ServeMux routuje używając ścieżki URL zdekodowanej procentowo, a server/websockets/client.go konfiguruje websocket.Upgrader.CheckOrigin na zwracanie true. Złośliwa strona może zażądać /%61pi/events, pominąć corsOriginAccessControl(), dotrzeć do handlera WebSocket /api/events i otrzymać identyfikatory wiadomości na żywo, wartości Message-Id, pola nadawcy i odbiorcy, tematy, tagi i fragmenty treści z nieuwierzytelnionej domyślnej instancji Mailpit po odwiedzeniu strony przez użytkownika. Jest to regresja wcześniejszej ochrony pochodzenia WebSocket i nie dotyczy wdrożeń chronionych przez --ui-auth-file. Problem został naprawiony w wersji 1.30.6.
- CVE-2026-67447Średnie
Mailpit to narzędzie do testowania poczty i API dla programistów. Od wersji 1.30.0 do 1.30.5, funkcja readData() w internal/smtpd/smtpd.go wywołuje bufio.Reader.ReadBytes przed zastosowaniem kontroli rozmiaru len(data)+len(line) dla ukończonej linii SMTP DATA względem Server.MaxSize. Nieuwierzytelniony klient SMTP może wysłać pojedynczą linię większą niż skonfigurowany MaxMessageSize, co powoduje alokację całej linii zanim Mailpit zwróci odrzucenie 552 5.3.4. Ta luka po poprawce pozostaje po ograniczeniu normalnego wieloliniowego gromadzenia danych, a równoczesne zbyt duże linie mogą stworzyć znaczną presję na pamięć przekraczającą skonfigurowany limit rozmiaru wiadomości. Problem został naprawiony w wersji 1.30.5.
- CVE-2026-67445Średnie
W Mailpit przed wersją 1.30.4, czytnik poleceń SMTP alokuje pełną linię poleceń przed sprawdzeniem limitu 512 oktetów. Nieuwierzytelniony zdalny klient SMTP może wysłać bardzo długą pojedynczą linię, co może prowadzić do nadmiernego zużycia pamięci i zmniejszenia dostępności usługi.
- CVE-2026-48824Średnie
Mailpit przed wersją 1.30.1 zawiera podatność DoS w czterech endpointach API JSON, gdzie nie ma ograniczenia rozmiaru ciała żądania, co pozwala nieuwierzytelnionemu atakującemu na zdalne spowodowanie znacznego wzrostu zużycia pamięci.
- CVE-2026-45713Wysokie
Mailpit przed wersją 1.30.0 nie ogranicza rozmiaru danych przesyłanych przez SMTP ani HTTP, co pozwala atakującemu na wysłanie bardzo dużych wiadomości. Powoduje to gwałtowny wzrost zużycia pamięci RAM (nawet 7-10 razy większy niż rozmiar danych), co może doprowadzić do zabicia procesu przez OOM.
- CVE-2026-45712Średnie
Mailpit przed wersją 1.30.0 zawiera podatność w proxy zrzutów ekranu/drukowania (/proxy?data=…), gdzie odczyt mapy assets bez blokady mutexu podczas współbieżnego zapisu prowadzi do błędu krytycznego Go (concurrent map read and map write), powodującego awarię całego procesu Mailpit.
- CVE-2026-45711Średnie
Podatność na zapis poza katalogiem docelowym w narzędziu Mailpit przed wersją 1.30.0. Pole ID wiadomości jest pobierane dosłownie z odpowiedzi JSON zdalnego serwera i łączone ze ścieżką wyjściową za pomocą path.Join, które normalizuje segmenty '..'. Złośliwy serwer HTTP podszywający się pod Mailpit może zapisać dane w dowolnej ścieżce, do której użytkownik ma dostęp zapisu.
- CVE-2026-45709Średnie
Mailpit zawiera podatność SSRF w komponencie sprawdzania HTML, która pozwala na dostęp do wewnętrznych zasobów sieciowych. Mimo wcześniejszych poprawek, mechanizm pobierania CSS nie filtruje adresów IP, umożliwiając atakującemu przekierowanie żądania do prywatnych adresów IP. Podatność jest dostępna bez uwierzytelnienia w domyślnej konfiguracji.
- CVE-2026-55187Średnie
Mailpit przed wersją 1.30.2 zawiera niekompletną poprawkę podatności CVE-2026-27808, która nie blokuje wszystkich mechanizmów przejścia IPv6 (NAT64, 6to4, ISATAP itp.). Atakujący może wykorzystać API Link Check do skanowania wewnętrznych usług, w tym punktów końcowych metadanych chmury.
Oryginalny opis (angielski, źródło NVD)
Mailpit is an email testing tool and API for developers. Prior to 1.30.4, Mailpit decodes attacker-supplied image attachments into a full raster before checking decoded dimensions, pixel count, or memory use in the GET /api/v1/message/{id}/part/{partID}/thumb endpoint. The Thumbnail handler in server/apiv1/thumbnails.go obtains attachment bytes through storage.GetAttachmentPart(), accepts image/* content, and calls imaging.Decode() with AutoOrientation before imaging.Fill() scales the image to 180 by 120 pixels. A compact image declaring very large dimensions can therefore consume disproportionately large memory and CPU, and opening the message UI can trigger the same endpoint through server/ui-src/components/message/MessageAttachments.vue. This can degrade availability when an unauthenticated client can store the crafted attachment and reach the web API. This issue is fixed in version 1.30.4.

