Поддержка DANE и разработка плагинов IE
На сайте Internet Society ведётся список ресурсов, поддерживающих новую технологию DANE. Сайтов там пока что не очень много. Это хорошо объясняется тем, что поддержка DANE пока отсутствует в браузерах. Есть только один плагин для Firefox, да и то – в альфа-версии. Большая проблема. Без браузерной поддержки DANE никому не нужен. Без DANE – DNSSEC теряет заметную часть технологической привлекательности, потому что только благодаря привязке к сайтам DNSSEC можно продвинуть на клиентскую сторону.
Согласно современной реальности Интернета, прорывом был бы качественный плагин для майкрософтовского браузера IE. У меня нет уверенности, что подобный плагин возможен для IE, так как я недостаточно знаком с архитектурой этого браузера. Если кто-то может рассказать подробности, то, пожалуйста, выскажитесь в комментариях. Ниже, я опишу логику работы плагина, вдруг, кто-то захочет его реализовать (что было бы замечательно).
Итак, DANE позволяет разместить в DNS отпечаток SSL-сертификата и проверить достоверность соответствия этого отпечатка домену при помощи DNSSEC. Для проведения проверки требуются: значение специальной записи из DNS и сертификат, предъявляемый веб-сервером. Сличение проводится, грубо говоря, по имени хоста. То есть, отпечаток из DNS для заданного хоста должен соответствовать отпечатку, вычисленному по полученному сертификату. Более подробное описание части, касающейся DNS, есть в записке про DANE.
Соответственно, плагин для браузера должен вмешиваться в процесс установления соединения по HTTPS с веб-сервером, получать отпечаток ключа сертификата, предъявляемого сервером и сверять этот отпечаток с данными, полученными из DNS, если их удалось получить и подтвердить DNSSEC-ом, конечно. Дальнейшее поведение плагина зависит от того, каковы результаты проверки:
- если валидный отпечаток из DNS совпадает с сертификатом, то браузер должен показать некий дополнительный флаг, означающий, что связка сертификат-сайт проверена DNSSEC. Если при этом сертификат самоподписанный или выдан неизвестным браузеру удостоверяющим центром (УЦ), то нужно подавить предупреждение браузерной системы безопасности (а можно ли это сделать в IE?);
- если отпечатки не совпали, то нужно, наоборот, выдать предупреждение системы безопасности, даже если сертификат валидный и подписан доверенным УЦ;
- если данные, полученные из DNS, не прошли проверку подлинности, а всё остальное – совпадает, то, опять же, нужно выдать предупреждение.
Плагину придётся самостоятельно проводить проверку подписей DNSSEC и извлекать их из DNS. В общем, задача не самая простая, но, вероятно, решаемая. Это я к тому, что, может, кто-то возмётся за реализацию.
Адрес записки: https://dxdt.ru/2012/10/05/5260/
Похожие записки:
- Контринтуитивное восприятие ИИ на примере из криптографии
- HTTPS-запись в DNS для dxdt.ru
- Появилась поддержка DMARC/SPF на сервисе audit.statdom.ru
- Интернет-протокол "дымовой завесы"
- Скорость из OBD и программы-навигаторы
- Исчезновение "фрагментации Интернета" с разных точек зрения
- Mozilla Firefox и внедрение рекламных сообщений
- Удостоверяющий центр TLS ТЦИ
- Статья: DNS в качестве инструмента публикации вспомогательной информации
- DNS-over-TLS как инструмент трансляции доверия в DNSSEC
- Обновление tls13.1d.pw (экспериментальный сервер TLS 1.3)
Комментарии читателей блога: 3
1. 24th October 2012, 09:43 // Читатель Андрей Копейко написал:
Для желаемого тобой “вмешиваться в процесс установления соединения по HTTPS с веб-сервером” не надо – вмешиваться надо в процесс _валидации_ полученного от сервера SSL-сертификата.
Эта штука – уже за пределами протокола TLS.
2. 24th October 2012, 10:32 // Александр Венедюхин ответил:
Да главное – подавить сообщения о недоверенном соединении. Можно ли это в IE сделать?
3. 24th October 2012, 12:11 // Читатель jno написал:
Если в ИЕ ещё “подавить сообщения о недоверенном соединении”, то можно дальше вообще ни о чём не беспокоиться :)