smtp-server's command parser memory exhaustion denial-of-service
High severity
GitHub Reviewed
Published
May 15, 2026
to the GitHub Advisory Database
•
Updated Jun 29, 2026
Description
Published by the National Vulnerability Database
May 15, 2026
Published to the GitHub Advisory Database
May 15, 2026
Reviewed
Jun 29, 2026
Last updated
Jun 29, 2026
smtp-server prior to v3.18.3 are vulnerable to unauthenticated memory exhaustion denial-of-service. smtp-server's command parser allows any remote client to consume server memory by sending data without newline characters. The server's
_remainderbuffer inSMTPStream._writegrows without limit, leading to heap exhaustion, prolonged GC pauses that freeze the event loop, and in some cases, process crash.The
_writemethod inlib/smtp-stream.jsappends incoming TCP chunks tothis._remainderin command mode. The buffer is only emptied when a newline is found. If a client never sends a newline, the_remaindervalue will grow indefinitely, causing excess memory consumption.References