Назад | Перейти на главную страницу

Как работает SSL Accelerator, особенно в отношении идентификаторов сеансов TLS?

Есть теория, что идентификатор сеанса TLS может уменьшить атака BEAST, и в одном из комментариев IETF упоминается, что ускорители SSL могут изменять этот идентификатор.

Может ли кто-нибудь объяснить мне (или сказать, куда идти), чтобы понять, что SSL Accelerator может сделать с сеансом TLS, который отличается от обычного сеанса?

Ускоритель SSL обычно работает так:

Клиент <-SSL-> Акселератор <-HTTP-> Сервер

Это означает, что серверу не нужно иметь дело с накладными расходами SSL. Но это также означает, что детали сеанса SSL невидимы для сервера. Теоретически ускоритель может добавить заголовок к HTTP-запросу, который содержит идентификатор, уникальный для сеанса HTTP, но я не знаю каких-либо ускорителей, которые действительно это делают.

Понятие «ускоритель SSL» также применимо к карты ускорения крипто которые поддерживают создание асимметричных пар ключей и / или симметричные операции шифрования / дешифрования. В этом случае ускорение состоит исключительно из алгоритмической помощи и не связано с особенностями протокола (особенно без идентификаторов сеансов TLS).

Что касается другой части вопроса, атака BEAST, безусловно, не предотвращается использованием идентификаторов сеанса вместо файлов cookie. Хотя кража файлов cookie невозможна, если файл cookie привязан к идентификатору сеанса, саму атаку можно использовать для прослушивания других данных соединения. В только способы противостоять атаке BEAST - либо отказаться от TLS 1.0 и использовать только более новые версии протокола, либо отключить все блочные шифры с помощью CBC (особый вид кодирования для блочных шифров) для TLS 1.0, что будет означать отключение всех блочных шифров и оставив RC4 (который является потоковым шифром и, следовательно, не требует использования предыдущего кодирования) в качестве единственного доступного шифра.