<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-29T07:25:36.242544+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://db.gcve.eu/vuln/fkie_cve-2026-67445</id>
    <title>fkie_cve-2026-67445</title>
    <updated>2026-09-29T07:25:36.266145+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>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.</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/fkie_cve-2026-67445"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/ghsa-w878-pj84-3j5v</id>
    <title>GHSA-w878-pj84-3j5v — Mailpit: SMTP command parser buffers unbounded command lines before syntax rejection</title>
    <updated>2026-09-29T07:25:36.266270+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Go: github.com/axllent/mailpit</p>
<p>## Summary</p>
<p>Mailpit's SMTP server reads each command line with an unbounded `bufio.Reader.ReadString('\n')` before parsing the command or enforcing any protocol length limit. A remote SMTP client can send an oversized single command line and force Mailpit to allocate attacker-controlled memory before the server returns a syntax error or times out, even though RFC 5321 limits SMTP command lines to 512 octets including CRLF.</p>
<p>## Technical Details</p>
<p>Mailpit enables SMTP by default. `config/config.go` sets `SMTPListen = "[::]:1025"`, and `cmd/root.go` calls `smtpd.Listen()` during normal startup. The SMTP server configures recipient and message DATA size limits in `internal/smtpd/main.go`, including the default 50 MiB `MaxMessageSize`, but those limits do not apply to command lines.</p>
<p>The vulnerable path is in the SMTP command loop. `internal/smtpd/smtpd.go` calls `s.readLine()` for every command before parsing the verb or arguments:</p>
<p>```go
line, err := s.readLine()
if err != nil {
    if netErr, ok := err.(net.Error); ok &amp;&amp; netErr.Timeout() {
        s.writef("421 4.4.2 %s %s ESMTP Service closing transmission channel after timeout exceeded", s.srv.Hostname, s.srv.AppName)
    }
    break
}</p>
<p>verb, args := s.parseLine(line)
```</p>
<p>`readLine()` then buffers until newline without a maximum length:</p>
<p>```go
func (s *session) readLine() (string, error) {
    if s.srv.Timeout &gt; 0 {
        _ = s.conn.SetReadDeadline(time.Now().Add(s.srv.Timeout))
    }</p>
<p>line, err := s.br.ReadString('\n…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/ghsa-w878-pj84-3j5v"/>
  </entry>
</feed>
