CVE-2026-55558
aiosmtplib is an asynchronous SMTP client for use with asyncio.
Impact
aiosmtplib is an asynchronous SMTP client for use with asyncio. Prior to 5.1.2, SMTPProtocol.start_tls in src/aiosmtplib/protocol.py consumes the server's 220 response and starts the TLS handshake without clearing SMTPProtocol._buffer. An active network attacker can place attacker-chosen SMTP response lines after the plaintext 220 response in the same network segment. The method then calls loop.start_tls; those bytes survive the transport upgrade and are parsed as the first response from inside the TLS session, desynchronizing subsequent SMTP command and response pairs. Connections using start_tls=True or opportunistic STARTTLS are affected, while connections using use_tls=True are not. This issue is fixed in version 5.1.2.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | aiosmtplib | <= 5.1.1 | 5.1.2 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-vxj7-4xrp-5vr4
- https://github.com/cole/aiosmtplib/security/advisories/GHSA-vxj7-4xrp-5vr4
- https://nvd.nist.gov/vuln/detail/CVE-2026-55558
- https://github.com/cole/aiosmtplib/commit/9fab7ba1361dbf7622ede1315a24be805cff09c9
- https://github.com/cole/aiosmtplib/releases/tag/v5.1.2