Посредник, о котором вы не знаете
MITM (Man-in-the-Middle) — ситуация, когда третья сторона оказывается на пути трафика между двумя участниками и может читать, а иногда и менять сообщения. Каждый из собеседников уверен, что общается напрямую. Аналогия — недобросовестный почтальон, который вскрывает письма, читает их и отправляет дальше, возможно, подмешав своё.
Сама по себе идея — не обязательно преступная: корпоративные системы проверки трафика тоже действуют как посредник, но с ведома владельца сети. Атакой это становится, когда посредничество скрытое и несанкционированное.
Как злоумышленник оказывается посередине
Способов несколько. В общей сети — подмена ARP-записей, из-за которой трафик идёт через устройство атакующего. Поддельные точки доступа с названием, знакомым по кафе или аэропорту, — вариант, описанный на странице про Evil Twin. Подмена DNS-ответов, направляющая на другой адрес. Вредоносные настройки прокси или установленный на устройстве чужой корневой сертификат. Скомпрометированный роутер, который меняет ответы.
Во всех случаях цель одна: получить возможность видеть и изменять запросы и ответы.
Проверка своей сети шаг за шагом
Есть небольшой порядок действий для домашней сети. Первое: откройте панель управления роутером и убедитесь, что пароль администратора изменён, обновления установлены, а настройки DNS не заменены незнакомыми адресами. Второе: посмотрите список подключённых устройств и удалите неизвестные. Третье: убедитесь, что на компьютерах в системном хранилище нет странных корневых сертификатов, которых вы не устанавливали. Четвёртое: откройте несколько знакомых сайтов и проверьте, что замок в адресной строке есть и сертификат выдан известным центром.
На телефоне обратите внимание на установленные профили и сертификаты пользователя: незнакомые записи там означают вмешательство. Если что-то настораживает, подключитесь через мобильную сеть и сравните поведение. Совпадающие результаты в двух сетях говорят, что проблема не в домашнем роутере.
Что даёт HTTPS и где он не спасает
Шифрование TLS не позволяет посреднику прочитать содержимое: он видит только адрес сервера, объём и время. Проверка сертификата не даёт подсунуть поддельный сервер: браузер убеждается, что сертификат выдан доверенным центром для нужного домена. Поэтому современные атаки на HTTPS-сайты сложнее, чем на открытый HTTP.
Уязвимость возникает, когда пользователь игнорирует предупреждения браузера, когда в системе установлен вредоносный корневой сертификат, когда соединение принудительно переводят на HTTP до установления защищённого канала (для этого существует HSTS) или когда приложение вообще не проверяет сертификаты.
Как распознать
Тревожные признаки: предупреждения о недействительном или незнакомом сертификате, внезапные окна с требованием установить сертификат, страницы входа без замка на обычно защищённых сайтах, непривычно медленная сеть, изменение адреса шлюза или MAC-адреса шлюза в таблице ARP.
Проверьте сведения о сертификате: кто выдал его и для какого домена. Если издатель незнаком, а вы в общественной сети, не продолжайте. Просмотреть таблицу соседей можно командой arp -a, а сравнить MAC шлюза с известным значением из настроек роутера.
Практические меры
Не игнорируйте предупреждения о сертификатах, не устанавливайте сертификаты по просьбе незнакомых страниц. В общественных сетях выполняйте только необходимое и пользуйтесь защищёнными соединениями; для чувствительных действий лучше мобильная сеть. Включите шифрование DNS, поддерживайте в актуальном состоянии браузер и систему, а на роутере смените пароль администратора и отключите ненужное.
Для организаций дополнительно применяют защиту ARP на коммутаторах, взаимную проверку сертификатов и закрепление сертификатов в приложениях.
Организации, которые сознательно перехватывают трафик для проверки безопасности, обязаны заранее уведомлять сотрудников и устанавливать собственный сертификат. Именно такое поведение вы можете увидеть в списке корневых сертификатов рабочего компьютера.
Стоит помнить и о безопасных привычках при работе с сертификатами. Если на работе устанавливают корпоративный корневой сертификат, узнайте, зачем он нужен и какие сайты видит организация. Личные данные лучше вводить на своём устройстве и в своей сети, потому что в корпоративной среде трафик может проверяться вполне законно, и это не то же самое, что атака.