26

Кешируют ли веб-браузеры сертификаты SSL-сервера? Например, если я изменю SSL-сертификат на веб-сервере, все ли веб-браузеры подберут новый сертификат при подключении через SSL, или возможно, что они могут иметь устаревший сертификат?

Я имею в виду сценарий, когда срок действия сертификата SSL истекает и заменяется новым на веб-сервере.

4 ответа4

21

Нет. Смотрите IBM SSL обзор

  1. Клиент SSL отправляет сообщение "hello client", в котором перечислены криптографические данные, такие как версия SSL и, в порядке предпочтения клиента, CipherSuites, поддерживаемые клиентом. Сообщение также содержит случайную строку байтов, которая используется в последующих вычислениях. Протокол SSL позволяет "клиенту привет" включать методы сжатия данных, поддерживаемые клиентом, но текущие реализации SSL обычно не включают это положение.

  2. Сервер SSL отвечает сообщением "hello server", которое содержит CipherSuite, выбранный сервером из списка, предоставленного клиентом SSL, идентификатор сеанса и другую строку случайного байта. Сервер SSL также отправляет свой цифровой сертификат. Если серверу требуется цифровой сертификат для аутентификации клиента, сервер отправляет "запрос сертификата клиента", который включает в себя список поддерживаемых типов сертификатов и выделенные имена приемлемых центров сертификации (CA).

  3. Клиент SSL проверяет цифровую подпись на цифровом сертификате сервера SSL и проверяет, является ли выбранный сервером CipherSuite приемлемым.

...

Резюме Microsoft аналогично. Рукопожатие TLS также аналогично в этом отношении.

На шаге 2 клиент, похоже, не может сказать: «Не беспокойтесь об отправке сертификата сервера, я буду использовать свой кэш».

Обратите внимание, что существует несколько типов сертификатов, клиент, сервер и CA. Некоторые из них кэшируются.

7

Что ж, ответ RedGrittyBrick правильный, но на самом деле не отвечает на вопрос. Вопрос заключался в том, если браузеры делают это, а не в том, должны ли они или должны это делать.

Из того, что я слышал, и MSIE, и Chrome на самом деле делают сертификаты кеша и не заменяют их, когда получают новую версию, если старая действительна. Почему они это делают, я не понимаю, так как это снижает безопасность.

0

Я не уверен, поможет ли мой вклад каким-либо образом, но вот что я только что испытал: у меня есть веб-сайт в лазури с пользовательским доменом. Я попытался получить доступ к нему с помощью https в цветах перед настройкой привязки SSL для моего доменного имени. Chrome говорил мне, что сайт не защищен, что вполне логично (ERR_CERT_COMMON_NAME_INVALID) Но после того, как я загрузил свой сертификат и настроил привязку SSL в Azure, я все еще получал ту же ошибку. На этом этапе при открытии нового частного окна браузера (или с использованием другого браузера) https работал нормально.

Но я никогда не мог заставить его работать в моей открытой сессии Chrome. Я попытался очистить состояние SSL, тот же результат. Сработало после перезапуска хрома вообще.

Я, вероятно, был обманут чем-то, но это почти выглядело, как будто сертификат был кэширован ...

-1

Есть планы некоторых разработчиков браузеров внедрить такую систему захвата для обнаружения атак, таких как атака на Diginotar в 2011 году.

Но на данный момент AFAIK ни одна такая система не работает в современных браузерах. Поэтому вам не нужно думать об этой ситуации при обновлении сертификата сервера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .