CVE-2026-100700
WysokieCVSS 7.5Streszczenie
nodemailer w wersjach przed 10.0.6 zawiera podatność typu denial of service w wyrażeniu regularnym fallbacku free-text parsera adresów, które wykazuje kwadratowe zachowanie backtrackingu. Atakujący mogą dostarczyć spreparowane wartości nagłówków e-mail z długimi ciągami bez spacji, aby zablokować pętlę zdarzeń Node.js na dziesiątki sekund, powodując niedostępność usługi.
Ocena ryzyka
Atakujący może spowodować niedostępność usługi poprzez zablokowanie pętli zdarzeń Node.js, co prowadzi do przerwania działania aplikacji. Organizacje używające nodemailer do wysyłania e-maili są narażone na ataki DoS.
Rekomendacja
Zaktualizuj nodemailer do wersji 10.0.6 lub nowszej. Rozważ monitorowanie i ograniczanie nietypowych nagłówków e-mail na poziomie aplikacji.
Inne podatności w nodemailer
Zobacz wszystkie- GHSA-wmmp-3585-3rmpŚrednie
Nodemailer rozwiązuje międzynarodowe (IDN / nie-ASCII) domeny odbiorcy na inny etykietę Punycode (xn--) niż standardowe parsery zgodne z UTS-46 (np. przeglądarki, URL Standard, Node's url.domainToASCII, Python's idna). Jego normalizator adresów _normalizeAddress może prowadzić do błędnego rozpoznania domeny, co może być wykorzystane do ataków typu phishing lub przejęcia wiadomości.
- GHSA-6vj9-mwq6-2f5vŚrednie
Globalna pamięć podręczna DNS w Nodemailer jest kluczowana tylko według `host`, ale każdy wpis przechowuje również specyficzny dla wywołującego `servername` TLS. Gdy dwa bezpośrednie transporty SMTPS używają tego samego hosta DNS z różnymi wartościami `tls.servername`, nazwa serwera z pierwszego transportu jest zwracana do drugiego.
- GHSA-2x7j-588g-ccc2Wysokie
Parser adresów e-mail w Nodemailer (lib/addressparser/index.js) przetwarza listę adresów oddzielonych przecinkami w czasie kwadratowym (O(n²)) w zależności od liczby adresów. Pojedynczy spreparowany ciąg adresów (np. w polach To, Cc, Bcc, From, Reply-To) może spowodować znaczne spowolnienie.
- GHSA-cc9r-2j5m-2m83Średnie
Parser adresów e-mail w Nodemailer traktuje komentarz RFC 5322 (w nawiasach) w domenie jako miejsce łączenia tekstu, zamiast jako białe znaki składane (CFWS), które kończą domenę. To może prowadzić do błędnego parsowania adresu, np. [email protected](x)evil.c..., umożliwiając atakującemu przekierowanie wiadomości lub obejście walidacji.
- GHSA-268h-hp4c-crq3Średnie
Podatność w bibliotece Nodemailer umożliwia wstrzyknięcie nagłówków poprzez pole `list.*.comment`, które nie jest oczyszczane ze znaków CR (`\r`) i LF (`\n`). Atakujący może dostarczyć złośliwą wartość w tym polu, co prowadzi do fałszowania nagłówków wiadomości e-mail.
- GHSA-8m3c-c648-2xjjŚrednie
Opcje disableFileAccess i disableUrlAccess w Nodemailer służą jako piaskownica uniemożliwiająca niezaufanej treści wiadomości czytanie lokalnych plików lub wykonywanie żądań HTTP(S). Poprawka dla wcześniejszej podatności (GHSA-wqvq-jvpq-h66f) może być niekompletna, umożliwiając obejście zabezpieczeń.
- GHSA-wqvq-jvpq-h66fŚrednie
Podatność w Nodemailer pozwala na obejście opcji `disableFileAccess` i `disableUrlAccess` w przypadku korzystania z `jsonTransport`. Mimo że normalny strumień MIME wymusza te ograniczenia, `jsonTransport` serializuje wiadomość w sposób, który je pomija, umożliwiając potencjalny dostęp do lokalnych plików lub zewnętrznych URL-i.
- GHSA-p6gq-j5cr-w38fWysokie
W nodemailer v9.0.0 opcja `raw` na poziomie wiadomości omija zabezpieczenia `disableFileAccess` i `disableUrlAccess`, umożliwiając odczyt dowolnych plików oraz pełny atak SSRF (Server-Side Request Forgery) w wysyłanej wiadomości.
- GHSA-r7g4-qg5f-qqm2Średnie
Nodemailer wyłącza weryfikację certyfikatów TLS w swoim wewnętrznym kliencie HTTPS, ustawiając rejectUnauthorized: false w pliku lib/fetch/index.js. Powoduje to, że żądania tokenów OAuth2 ufają nieprawidłowym lub samopodpisanym certyfikatom HTTPS.
- CVE-2026-82854Krytyczne
Nodemailer przed wersją 8.0.4 jest podatny na wstrzykiwanie komend SMTP przez niesanityzowany parametr envelope.size. Gdy aplikacja przekazuje niestandardowy obiekt envelope z właściwością size zawierającą znaki CRLF do sendMail(), wartość jest konkatenowana do komendy SMTP MAIL FROM (jako SIZE=...) bez sanityzacji, co pozwala na wstrzyknięcie dowolnych komend SMTP, takich jak RCPT TO, w celu cichego dodania adresatów kontrolowanych przez atakującego.
Oryginalny opis (angielski, źródło NVD)
nodemailer before 10.0.6 contains a denial of service vulnerability in the addressparser free-text fallback regex pattern that exhibits quadratic backtracking behavior. Attackers can supply crafted email header values with long whitespace-free runs to block the Node.js event loop for tens of seconds, causing service unavailability.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

