Расширенный
База уязвимостей

Обход проверки безопасности

4 апреля 2021
Уровень опасности
Оценка CVSS
(AV:N/AC:M/Au:N/C:P/I:P/A:N)
Производитель ПО
Наименование ПО
OpenSSL (1.1.1h, 1.1.1k)
Описание
Флаг X509_V_FLAG_X509_STRICT активирует дополнительные проверки безопасности сертификатов в цепочке сертификатов. Данный флаг не устанавливается по умолчанию. Начиная с OpenSSL версии 1.1.1h, была добавлена дополнительная проверка, запрещающая в цепочке сертификаты, которые имеют явно закодированные параметры эллиптической кривой. Ошибка в реализации данной проверки приводит к тому, что результат предыдущей проверки, подтверждающей действительность сертификатов в цепочке, перезаписывается. Это позволяет обойти проверку недопустимости выдачи других сертификатов сертификатами, выданными не центром сертификации. Если настроено purpose, то существует возможность того, что последующая проверка определит сертификат как действительный. Все именованные значения purpose, реализованные в libcrypto, выполняют данную проверку. Таким образом, при настроенном purpose, цепочка сертификатов будет отклонена, даже когда используется специальный флаг. Purpose устанавливается по умолчанию в клиенте libssl и правилах проверки сертификата сервера, но может быть отменено или удалено приложением. Условие существования уязвимости: приложение должно явно установить флаг проверки X509_V_FLAG_X509_STRICT и не задавать purpose для проверки сертификатов или (в случае TLS-клиентов или серверных приложений) аннулировать стандартное значение purpose.
Как исправить
Для устранения уязвимости необходимо установить последнюю версию продукта, соответствующую используемой платформе. Необходимую информацию можно получить по адресу:
https://www.openssl.org/
Ссылки