VU#573195: Несоответствие огра... Заметка

VU#573195: Несоответствие ограничений имен в реализации RFC 5280 в Go, OpenSSL, Apple, LibreSSL, pyca, wolfSSL

Библиотеки TLS по-разному интерпретируют ограничения имен X.509, что приводит к несоответствиям в принятии или отклонении сертификатов. Эти различия возникают из-за дефектов реализации и областей, не полностью определенных RFC 5280. В частности, существуют расхождения в том, как сравнение DNS-имен обрабатывает чувствительность к регистру. Обработка IP-адресов также различается, особенно в отношении IPv6-адресов, отображающих IPv4. Разбор URI-авторитетов демонстрирует несоответствия при извлечении хоста, когда присутствуют определенные символы или компоненты. Семантика сопоставления с подстановочными знаками для альтернативных имен субъекта четко не определена, что вызывает дальнейшие расхождения. Некоторые проблемы являются явными дефектами реализации, в то время как другие вызваны отсутствием явных указаний в RFC. Влияние этих различий ограничено и требует сочетания скомпрометированной доверенной подписи, уязвимого пути проверки и приложения, использующего идентификатор для авторизации. Смешанные среды, такие как сервисные сетки или CDN, могут столкнуться с несогласованной проверкой сертификатов для одного и того же сертификата. CERT/CC сотрудничает с затронутыми проектами библиотек TLS для решения этих проблем. Операторы, требующие высокой степени уверенности, должны тестировать свои валидаторы, применять обновления и использовать явные альтернативные имена субъекта. Списки разрешенных адресов на уровне приложений и политики выдачи также могут помочь смягчить эти различия.