Представлено средство для борьбы с MITM-атаками в протоколах SSL/TLS

25/05/2012 15:54

На рассмотрение в комитет IETF (Internet Engineering Task Force) внесен черновой вариант стандарта, определяющего дополнение к протоколу TLS, предназначенное для защиты пользователей от атак MITM (Man-in-the-middle), основанных на использовании поддельных сертификатов, выданных корневыми удостоверяющими центрами, сообщает opennet.ru. Стандарт появился в ответ на случаи взлома серверов корневых удостоверяющих центров (CA) Comodo и DigiNotar в прошлом году. Стандарт определяет легковесное расширение TLS-протокола TACK (Trust Assertions for Certificate Keys), суть которого состоит в том, чтобы позволить браузеру "запомнить" информацию о сертификатах веб-сайта и использовать ее для блокирования соединения или информирования пользователя об угрозе в том случае если против него будет осуществлена MITM-атака с использованием поддельных сертификатов, выданных другими корневыми удостоверяющими центрами. Благодаря TACK веб-сайты смогут подписывать свои сертификаты с помощью приватного TACK-ключа, отправляя публичный ключ браузеру при установке TLS-сессии. После того, как пользователь несколько раз зайдет на сайт, браузер установит привязку (pin) открытого ключа к доменному имени на определенный промежуток времени (до 30 дней). Если в будущем против пользователя будет осуществлена MITM-атака с использованием поддельных сертификатов, браузер сможет легко проверить подлинность сертификата с помощью TACK-ключа. TACK позволяет организовать еще один слой защиты SSL, который гарантирует, что осуществление атаки против пользователя будет возможно только в том случае, если будут скомпрометированы и веб-сайт и центр сертификации. В целом такая схема напоминает подход, используемый в браузере Google Chrome, который имеет белый список центров сертификации, которые могут подписывать сертификаты для домена google.com, а также ряда других доменов, но обладает большей гибкостью, позволяя создавать привязки сертификатов к доменам динамически. Поддержка TACK должна быть реализована как на стороне клиента, так и сервера, однако она не является необходимой. Клиенты, без поддержки TACK будут продолжать работать с серверами полагаясь на полное доверие к CA.
Источник