← На главную

IETF депрекейтит cipher suites без forward secrecy в (D)TLS 1.2

01.08.2026 23:44 · hackernews

В (D)TLS 1.2 для обмена ключами используются RSA, Diffie-Hellman по конечному полю (DH) и ECDH. DH бывает эфемерным (DHE, ECDHE) и неэфемерным (DH, ECDH). Неэфемерные варианты не дают forward secrecy, поэтому их не рекомендуют. Атака Raccoon на конечные поля показала, что повторное использование публичных ключей — из-за неэфемерных cipher suites или переиспользования ключей в эфемерных — создаёт timing side channel, через который можно вытащить секреты соединения. Для ECDH аналогичная проблема: invalid curve attacks ломают безопасность при повторном использовании секретов. Обе проблемы можно закрыть на уровне реализации, но на практике сложно сделать все нужные контрмеры, поэтому риск серьёзный.

С FFDHE в (D)TLS 1.2 много проблем. Нет механизма согласования группы — поэтому страдает интероперабельность, часть реализаций умеет только маленькие группы. Малые подгруппы открывают дорогу нескольким атакам. Если сервер предлагает кастомную, нестандартную FFDHE-группу, клиент не может проверить, что в ней нет малых подгрупп, и не может откатиться на другие параметры. Такие группы распространены, потому что их советовали в старых рекомендациях WEAK-DH, так что просто отклонять их клиенты не могут. Операторы часто используют 1024-битные группы — это максимальный размер для широкой совместимости, но запас прочности маленький: текущий рекорд дискретного логарифма — 795 бит. Плюс несколько очень крупных вычислений позволяют атакующему дёшево расшифровать заметную долю FFDHE-трафика, который использует стандартные группы. И ещё Raccoon, если секреты не полностью эфемерные: неэфемерный FFDH уязвим по умолчанию, без constant-time контрмер.

RSA key exchange тоже плох. Конструктивно нет forward secrecy. Плюс Bleichenbacher-атака: варианты всплывают каждые несколько лет, потому что правильно реализовать защиту сложно. В (D)TLS 1.2 нет механизма domain separation для ключей, так что если один endpoint уязвим к Bleichenbacher, страдают все, кто использует тот же RSA-ключ.

Документ обновляет целый набор RFC — включая RFC5246, RFC6347, RFC4162, RFC9325 — и депрекейтит проблемные cipher suites, перечисленные в секциях 5.2–5.5. Также он точечно обновляет BCP 195 (RFC8996 и RFC9325) — актуальные рекомендации IETF по (D)TLS 1.2. Остальные рекомендации из BCP остаются в силе.

Читать оригинал →