Как быть, если без российского сертификата никак? Девять вариантов

Заходите в «Госуслуги» так, чтобы не было больно.

Мы уже рассказывали, что российские «сертификаты безопасности» совсем не безопасны. Если кратко: они позволяют перехватить ваши данные через атаку MITM (Man In The Middle). При этом, если вы не можете обойтись без «Сбера» или «Госуслуг», то и встречи с сертификатами не избежать. Вот девять вариантов работы с ними в зависимости от ваших возможностей и потребностей в порядке возрастания сложности.

1. Мобильное приложение банка вместо сайта

Приложению уже не нужен системный корень. Все нужные сертификаты у него уже внутри. Не забудьте при этом, что приложение может следить за вами, и не только чтобы определить наличие у вас VPN.

2. Отдельный браузер

Берем «Яндекс.Браузер» или «Атом», где все нужное для сертификатов уже есть. Но не стоит использовать этот браузер на устройстве, где у вас чувствительная информация.

3. Отдельный профиль Firefox с корнем внутри профиля

Компромиссное решение. В отличие от Chrome, Edge и Safari, у Firefox есть собственное хранилище доверенных корней. Корневой сертификат можно установить только в браузер, не трогая систему. В итоге этот сертификат будет работать только с конкретным Firefox.

4. Отдельная учетная запись в операционной системе

Корневой сертификат работает только в конкретной учетной записи. Оставляете все пароли и учетки на другом аккаунте — и работаете «в России» на отдельном.

5. Песочница и аналоги

Windows. Сервис Windows Sandbox в Windows Pro и Enterprise запускает одноразовую копию системы. При закрытии окна она полностью стирается вместе с установленным внутри нее корнем.

Linux. Аналоги Sandbox — bubblewrap и firejail. Еще можно запустить браузер в режиме Flatpak с урезанными правами.

macOS. отдельной песочницы нет. Можно только завести отдельную учетку (4) или виртуальную машину (6).

6. Виртуальная машина

VirtualBox, VMware, Hyper-V, на Apple Silicon — UTM или Parallels. Ключевое преимущество — снимки состояния: сделайте снимок чистой системы, работайте, откатывайтесь. Настраивая, не забудьте отключить для большей изоляции общий буфер обмена, общие папки и проброс USB.

7. Отдельное физическое устройство

Старый ноутбук или дешевый Android-телефон только для госсервисов и банков, как сейчас говорят — «максофон». Дешевый и практичный вариант. Главное — никаких общих аккаунтов с основными устройствами.

8. Quebes OS и аналоги

На десктопе. Qubes OS строит всю систему вокруг разделения на изолированные домены. Минус — высокий порог входа: настроить сходу не получится.

На мобильных. В Android есть рабочий профиль — отдельный контейнер с собственным хранилищем сертификатов; развернуть его без корпоративного MDM помогают приложения вроде Shelter. На iOS сопоставимого механизма нет: единственный вариант — купить отдельный старенький айфон.

9. Ограничить сертификат, а не изолировать (кросс-сертификация)

Все способы выше строятся на разделении: отдельный профиль, отдельный пользователь, отдельная машина. Есть принципиально другой подход — оставить один браузер, но заранее сказать системе, для каких сайтов корню Минцифры можно верить, а для каких нельзя.

Идея выглядит так. Вы создаёте на своём компьютере собственный удостоверяющий центр и через него переиздаёте корень Минцифры, вписывая в переизданную копию список разрешённых доменов. Дальше система принимает подписи Минцифры только для сайтов из этого списка, а на всех остальных отказывается устанавливать соединение. Сайт банка работает, а подмена сертификата для почты или мессенджера, для чего угодно — не проходит.

Это не какая-то самоделка. Механизм называется ограничение имён и входит в стандарт X.509; в корпоративных сетях он используется десятилетиями. Более того, к нему прибегала сама Mozilla: в 2014 году, после того как подчинённый центр французского агентства ANSSI был замечен в перехвате трафика, корень агентства не удалили, а ограничили французскими государственными доменами. Годом позже то же самое предлагали сделать с китайским CNNIC. Так что подход ровно тот, которым пользуются сами разработчики браузеров.

Подробный технический разбор с командами опубликован на Linux.org.ru. Мы этот способ проверили на стенде: ограничение действительно работает, разрешённый домен открывается, остальные отбиваются с ошибкой.

Почему мы не готовы рекомендовать его к широкому применению

Во-первых и главное: корень Минцифры при этом обязан быть удалён из хранилища. Если он остался там сам по себе, браузер построит цепочку напрямую к нему, а все ваши ограничения молча проигнорирует. Мы это проверили — Firefox в такой конфигурации открыл запрещённый сайт как ни в чём не бывало. Внешне при этом всё выглядит рабочим, и человек остаётся с уверенностью в защите, которой нет. Это самый опасный из возможных исходов.

Во-вторых, список разрешённых доменов придётся вести. Сайт банка подгружает содержимое с десятка других адресов, и если какого-то из них в списке не окажется, страница откроется наполовину, а причину придётся искать в консоли разработчика. Участники обсуждения предлагают разрешать сразу все зоны .ru и .рф — грубее, зато работоспособно, но и менее безопасно.

В-третьих, вы завели у себя собственный удостоверяющий центр, и его закрытый ключ теперь лежит на вашем компьютере. Если он попадёт в чужие руки, у нападающего появится ровно та возможность, от которой вы защищались.

В-четвёртых, поддержка ограничения имён в разных системах различается. У Mozilla были случаи, когда ограничение молча не срабатывало из-за ошибки в реализации. Мы проверяли только Firefox и OpenSSL на Linux; про Windows, macOS и Android утверждать ничего не будем.

Итог. Приём стоит знать, он элегантный и опирается на стандартные механизмы. Но применять его имеет смысл только если вы способны сами проверить, что ограничение сработало — зайти на заведомо запрещённый сайт и убедиться, что соединение отклонено. Без такой проверки вы получаете не защиту, а её ощущение, и это хуже, чем ничего. Всем остальным надёжнее и понятнее отдельный профиль браузера или отдельное устройство из предыдущего раздела.

Три оговорки, без которых все вышеперечисленное создает ложное чувство безопасности.

  • Изоляция защищает остальную вашу жизнь, но не защищает сессию внутри изолированной среды. Пароль от банка, введенный в виртуальной машине с установленным корневым сертификатом, потенциально виден тому, кто владеет корнем и каналом.
  • Не переносите туда свои основные учетные записи: не входите в личную почту, не синхронизируйте браузерный профиль, не открывайте менеджер паролей. Изолированная среда на то и изолированная.
  • Виртуализация и VPN решают разные задачи. Виртуальная машина ограничивает последствия установки корня. VPN-туннель, оканчивающийся за пределами контролируемого канала, закрывает сам канал. Одно не заменяет другое.

Подробно об опасности российских сертификатов читайте здесь