CVE-2026-67445
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Podatność może być wykorzystana do ataków typu denial of service, ponieważ jednoczesne wysyłanie wielu dużych linii może powodować presję na pamięć i obniżenie dostępności usługi.
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-67446Średnie
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.
- 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 reads SMTP commands through internal/smtpd/smtpd.go session.readLine() using bufio.Reader.ReadString before session.parseLine() parses the verb or the RFC 5321 512-octet command-line limit is enforced. An unauthenticated remote SMTP client can send an oversized single command line that is fully allocated before syntax rejection or timeout, and the normal MaxMessageSize and DATA limits do not apply to this pre-DATA path. The same command reader is used by handleAuthLogin(), handleAuthPlain(), and handleAuthCramMD5() continuation lines, so concurrent oversized inputs can create memory pressure and reduce service availability. This issue is fixed in version 1.30.4.

