Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-vcgp-9326-pqcp

Опубликовано: 04 мая 2026
Источник: github
Github: Прошло ревью
CVSS4: 7.6

Описание

net-imap vulnerable to STARTTLS stripping via invalid response timing

Summary

A man-in-the-middle attacker can cause Net::IMAP#starttls to return "successfully", without starting TLS.

Details

When using Net::IMAP#starttls to upgrade a plaintext connection to use TLS, a man-in-the-middle attacker can inject a tagged OK response with an easily predictable tag. By sending the response before the client finishes sending the command, the command completes "successfully" before the response handler is registered. This allows #starttls to return without error, but the response handler is never invoked, the TLS connection is never established, and the socket remains unencrypted.

This allows man-in-the-middle attackers to perform a STARTTLS stripping attack, unless the client code explicitly checks Net::IMAP#tls_verified?.

Impact

TLS bypass, leading to cleartext transmission of sensitive information.

Mitigation

  • Upgrade to a patched version of net-imap that raises an exception whenever #starttls does not establish TLS.
  • Connect to an implicit TLS port, rather than use STARTTLS with a cleartext port. This is strongly recommended anyway:
    • RFC 8314: Cleartext Considered Obsolete: Use of Transport Layer Security (TLS) for Email Submission and Access
    • NO STARTTLS: Why TLS is better without STARTTLS, A Security Analysis of STARTTLS in the Email Context
  • Explicitly verify Net::IMAP#tls_verified? is true, before using the connection after #starttls.

Пакеты

Наименование

net-imap

rubygems
Затронутые версииВерсия исправления

>= 0.6.0, <= 0.6.3

0.6.4

Наименование

net-imap

rubygems
Затронутые версииВерсия исправления

>= 0.5.0, <= 0.5.13

0.5.14

Наименование

net-imap

rubygems
Затронутые версииВерсия исправления

>= 0.4.0, <= 0.4.23

0.4.24

Наименование

net-imap

rubygems
Затронутые версииВерсия исправления

<= 0.3.9

0.3.10

EPSS

Процентиль: 24%
0.00312
Низкий

7.6 High

CVSS4

Дефекты

CWE-392
CWE-393
CWE-636
CWE-754
CWE-841

Связанные уязвимости

CVSS3: 7.4
ubuntu
3 месяца назад

Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Prior to versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4, a man-in-the-middle attacker can cause Net::IMAP#starttls to return "successfully", without starting TLS. This issue has been patched in versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4.

CVSS3: 7.4
redhat
3 месяца назад

Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Prior to versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4, a man-in-the-middle attacker can cause Net::IMAP#starttls to return "successfully", without starting TLS. This issue has been patched in versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4.

CVSS3: 7.4
nvd
3 месяца назад

Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Prior to versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4, a man-in-the-middle attacker can cause Net::IMAP#starttls to return "successfully", without starting TLS. This issue has been patched in versions 0.3.10, 0.4.24, 0.5.14, and 0.6.4.

msrc
2 месяца назад

net-imap vulnerable to STARTTLS stripping via invalid response timing

CVSS3: 7.4
debian
3 месяца назад

Net::IMAP implements Internet Message Access Protocol (IMAP) client fu ...

EPSS

Процентиль: 24%
0.00312
Низкий

7.6 High

CVSS4

Дефекты

CWE-392
CWE-393
CWE-636
CWE-754
CWE-841