@Gil-Galad

Возможна ли подделка SSL сертификата для сайта?

В последнее время очень легко выпустить бесплатный ssl-сертификат. Достаточно всего лишь подтвердить владение доменом с помощью размещения файла со специальным кодом.

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

Фактически получается, что дубликат сертификата рабочий и действующий. Корневой сертификат корректный и изначально установлен у всех, как доверенный, вроде Let's Encrypt.

1. Возможно ли подобное на практике?
2. Защищают ли от подобной атаки браузеры? Предупредят ли они о подобной подмене? А, если это не повторное, когда браузер закешировал сертификат сервера, а первое соединение?
3. Возможно ли проверить какой в итоге сертификат сервера получил клиент?
3.1. На стороне клиента? API JS не даёт доступа к сертификату насколько я понимаю. Есть возможность как-то еще оповестить сервер об атаке и чтобы отсутствовала возможность перехватить эту информацию.
3.2. На стороне сервера? Хотя тут мало что можно сделать по моему без обратной связи от клиента.

P.S. Есть конечно запись DNS CAA, которая запрещает выдавать сертификаты, но эта защита больше для корректно настроенных коммерческих сертификатов, а не массово распространённых бесплатных от Let's Encrypt.
  • Вопрос задан
  • 233 просмотра
Решения вопроса 1
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Почитайте спецификацию на ACME, там подробно описано, какие меры предпринимаются против возможных атак.

Если у атакующего есть доступ к DNS-записям домена или к настройкам веб-сервера/файлам сайта - разумеется, он может выпустить свой валидный сертификат. Но это примерно такой же провал безопасности, как и, по аналогии, физический доступ к машине - в таком случае ничего не поделаешь.

Чтобы подстраховаться от нелегитимных сертификатов - можно добавить HPKP.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
CityCat4
@CityCat4 Куратор тега Цифровые сертификаты
Если я чешу в затылке - не беда!
Обсуждение атаки обычно начинают с ее целесообразности. Целесообразность атаки на периметр конторы скажем известна довольно хорошо - хищение/уничтожение данных, перехват управления.

Какова целесообразность подобной атаки для хостинга? Да никакой. Хостер и так имеет доступ ко всем файлам клиента и может совершенно спокойно подсунуть ему любой сертификат куда угодно.
Какова целесообразность подобной атаки для VPS-хостера/провайдера? Да никакой - он и так все пишет - накуа ему еще головняки?

Насчет того, что LE иже с ним - это разводилово.

Я в этом совершенно уверен :) Бесплатный сыр бывает только известно где - а тут тебе бесплатно, да с поддержкой инфраструктуры и прочими плюшками. Обычно говорят "LE играет на стороне корпораций и против государства (здесь под государством имеется в виду государство вообще, а не какое-то конкретное)". Я в это, простите, не верю. У Гугла и кто там еще содержит LE явно есть какой-то интерес держать его помимо этого.

Вот почему я никогда не генерю сертификаты онлайн :) Только свой CSR, только хардкор.

Насчет размещения сервера в юрисдикции РФ - можно подумать в других странах по-другому? Следует наверное сформулировать так "не держите сервер в юрисдикции той страны, законы которой собираетесь нарушать". Или Вы думаете, что если Вы живете в США, хоститесь в США и нарушаете законы США - к Вам не придут? Ну, блажен, кто верует... до тех пор, пока не начинает выплевывать собственные зубы.

Вся система PKI держится на одном утверждении - In root CA we trust :) Ну то есть мы безоговорочно доверяем сертификатам, выпущенным СA, сертификаты которых мы считаем корневыми. Отсюда и все возомжности MitM. Да, есть HPKP, но его использование может принести Вам немало головняков с невозможностью открыть сайт, который "еще вчера" открывался.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы