Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 121

Атака Bleichenbacher

ПроверилCybersecurity entrepreneur & security researcher

Что такое Атака Bleichenbacher?

Атака BleichenbacherАдаптивная атака с выбранным шифротекстом (Bleichenbacher, 1998), восстанавливающая открытый текст RSA, если сервер раскрывает валидность PKCS#1 v1.5.


Даниэль Bleichenbacher представил эту атаку на CRYPTO 1998 против SSL-рукопожатия с шифрованием RSA-PKCS#1 v1.5. Сервер невольно действует как оракул паддинга: любой различимый ответ (код alert TLS, сброс соединения или тайминг) сообщает атакующему, расшифровывается ли подделанный шифротекст в значение, начинающееся с байтов 0x00 0x02. Поскольку RSA мультипликативно гомоморфен, атакующий умножает захваченный шифротекст на выбранные значения s, отправляет результат и использует каждый ответ «паддинг валиден», чтобы сузить множество возможных открытых текстов. Примерно после миллиона запросов интервал схлопывается до единственного значения, и зашифрованный RSA premaster-секрет восстанавливается, при этом закрытый ключ ни разу не затрагивается, что позволяет атакующему расшифровать сессию или подделать подпись RSA.

Уязвимость трудно устранить, потому что снятие паддинга PKCS#1 v1.5 сопротивляется реализации с постоянным временем. Она вернулась в виде DROWN (CVE-2016-0800), использовавшей оракул SSLv2 для взлома современных TLS-сессий, и в виде ROBOT (Return Of Bleichenbacher's Oracle Threat, 2017): исследователи Böck, Somorovsky и Young обнаружили, что F5 (CVE-2017-6168), Citrix, Cisco и другие всё ещё уязвимы, и продемонстрировали это против Facebook и PayPal. Меры защиты: одинаковая обработка ошибок для корректного и некорректного паддинга, предпочтение RSA-OAEP, отключение наборов шифров с обменом ключами RSA и переход на TLS 1.3, который полностью убирает RSA-шифрование из рукопожатия.

flowchart TD
  A[Attacker captures RSA ciphertext c] --> B["Pick multiplier s, send c·s^e mod n"]
  B --> C{Server padding check}
  C -->|"Starts 0x00 0x02 → valid"| D[Narrow plaintext interval]
  C -->|"Invalid → distinct response"| E[Discard this s]
  D --> F{Interval = 1 value?}
  E --> B
  F -->|No| B
  F -->|Yes| G[Premaster secret recovered]

Примеры

  1. 01

    Восстановление SSL premaster на сервере 1990-х, выдававшем разные alerts при ошибке паддинга.

  2. 02

    DROWN и ROBOT повторно используют этот оракул против современных TLS-стеков.

Частые вопросы

Что такое Атака Bleichenbacher?

Адаптивная атака с выбранным шифротекстом (Bleichenbacher, 1998), восстанавливающая открытый текст RSA, если сервер раскрывает валидность PKCS#1 v1.5. Относится к категории Атаки и угрозы в кибербезопасности.

Что означает Атака Bleichenbacher?

Адаптивная атака с выбранным шифротекстом (Bleichenbacher, 1998), восстанавливающая открытый текст RSA, если сервер раскрывает валидность PKCS#1 v1.5.

Как защититься от Атака Bleichenbacher?

Защита от Атака Bleichenbacher обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия Атака Bleichenbacher?

Распространённые альтернативные названия: Million Message Attack.

Связанные термины