Разделы

ПО Бизнес Интернет Техника

В шифровальных протоколах RSA и SSL жива и пригодна к использованию «дыра», которой 25 лет

Эксперты Red Hat обнаружили, что метод атаки на алгоритм шифрования RSA, выявленный в 1998 г. и сегодня вполне употребим. Причём вариантов его столько, что нейтрализовать всех одним патчем технически невозможно.

А было то в 1998 году

Недостаток в шифровальном алгоритме SSL, впервые выявленный 25 лет назад, в 1998 г., до сих пор может быть использован в кибератаках, пусть и с небольшими изменениями. Об этом заявили эксперты компании Red Hat.

В ходе исследований они выявили сразу несколько вариантов такой атаки, дав им сборное определение Marvin Attack (атака Марвина). Все существующие методы защиты от исходного варианта атаки они позволяют обходить.

Злоумышленники в теории могут расшифровывать закодированную RSA информацию, подделывать цифровые подписи или даже расшифровывать целые сессии, записанные на уязвимом TSL-сервере.

Суть метода заключается в том, что атакующий на основании разной реакции сервера и разного времени выполнения операций может отделить корректные и некорректные блоки добавочного заполнения (padding oracle), добавленные в соответствии со стандартом PKCS #1 v1.5 для выравнивания зашифрованных данных по границе блока.

Манипулируя информацией о корректности блоков добавочного заполнения злоумышленник может воссоздать подходящий шифротекст или сформировать поддельное подписанное сообщение.

19_10_23_redhat_600.jpg
Фото: Red Hat

Для успешного проведения оригинальной атаки, известной как метод Блайхенбахера (Bleichenbacher) требуется отправка очень большого объёма пробных сообщений для расшифровки.

Метод Marvin позволяет усовершенствовать процедуры разделения корректных и некорректных добавочных данных, фильтрации ложных срабатываний, и позволяет добиться более точного определения задержек при вычислениях и задействованию дополнительных сторонних каналов при измерении.

Дело не в одном RSA

В Red Hat утверждают, что уязвимость, на самом деле, не ограничивается RSA: угроза затрагивает большинство алгоритмом асимметричного программирования, делая их уязвимыми перед атаками побочного канала. В числе уязвимых названы алгоритмы Диффи-Хеллмана (Diffie Hellman), ECDSA и другие.

В ходе экспериментов установлено, что перед атаками Marvin гарантированно уязвим протокол OpenSSL на уровне TLS и API. Для TLS уязвимости присвоен индекс CVE-2022-4304, для API такого индекса ещё нет.

Также уязвимости подвержен GnuTLS на уровне TSL, где время реагирования на искажённые шифротексты RSA в ClientKeyExchange отличаются от время реагирования на шифротексты с корректными блоками добавочного заполнения. «Багу» присвоен индекс CVE-2023-0361.

Уязвимость содержится также в NSS, на уровне TLS. Ей присвоен индекс CVE-2023-4421.

Дискуссия в метавселенной: ИИ, обмен данными и иммерсивные сценарии
ИТ в банках

В пакете pyca/cryptography для Python присутствуют технические меры против атаки по методу Блайхенбахера, но, как выясняется, неэффективные: необходимо исправление на уровне OpenSSL. Индекс уязвимости - CVE-2020-25659.

То же касается M2Crypto, набора инструментов для шифрования и работы с SSL. Присвоен индекс CVE-2020-25657.

В отчёте также упомянуты OpenSSL-ibmca, компонент языка Go и GNU MP. CVE-индексы для них не присвоены.

В совокупности Атака Марвина не получила единого CVE-индекса, несмотря на то, что во всех случаях речь идёт о фундаментальной ошибке в RSA.

Как с помощью ad-hoc инструмента снизить расходы на внедрение аналитики
Импортонезависимость

Однако варианты реализации и сложности в разных проектах отличаются настолько существенно, что выпустить какое-то единое исправление для всех разом абсолютно не представляется возможным.

- В зависимости от того, насколько легко или сложно будет эти уязвимости эксплуатировать чисто технически, зависит от того, насколько она критична в принципе, - считает Михаил Зайцев, эксперт по информационной безопасности компании SEQ. - Уже тот факт, что их очень непросто устранить, повышает угрозу. Ещё больше - то, что RSA в самых разных вариантах очень широко распространён. Принятие срочных мер просто необходимо.

Фундаментальная ошибка требует фундаментальных исправлений

Исследователи Red Hat рекомендуют прекратить использовать стандарт RSA PKCS#1 v1.5 и запросить у вендоров альтернативные средства обеспечения обратной совместимости.

Простое отключение RSA не поможет: если где-то ещё на сервере используется ключ RSA или подписанный таким образом сертификат (в протоколах SMTP, IMAP, POP или вторичных серверах HTTPS), угроза будет той же.

Также Red Hat предупреждает, что FIPS-сертификация ниже четвёртого уровня также не гарантирует защиту от атак Марвина. Четвёртый уровень обеспечивает высокую сопротивляемость атакам побочного канала.

Роман Георгиев