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

Блокировка и чтение — разные полномочия

Отказ дёшев и громок: сокет открывается и никто не отвечает, или сразу приходит сброс. Ничто из этого не означает инспекцию, потому что ни одна полезная нагрузка не пересекла провод.

Чтению нужна конечная точка, которая завершает защиту, подтверждает себя сертификатом и открывает новое соединение дальше. Эта точка должна стоять на пути и пользоваться доверием клиента. У файрвола, который только пересылает пакеты, нет ни позиции, ни мандата.

Что обёртка выдаёт бесплатно

У каждого пакета туннеля есть внешняя сторона, и внешняя сторона должна быть маршрутизируемой. Это значит два адреса, протокол, порт и длину, а также время и объём. Любой маршрутизатор уже обрабатывает эти поля, а NAT переписывает адрес и порт, чтобы его таблица отображения оставалась согласованной. Нагрузка остаётся запечатанной, поэтому наблюдение останавливается на факте существования туннеля между двумя хостами.

Имени хоста среди них нет. Сайты утекают через другие двери, и самая широкая — DNS: если ноутбук всё ещё спрашивает локальный резолвер, имена появляются открыто.

Время и объём заслуживают уважения без преувеличения. Байт в минуту могут показать, что большая передача началась в 14:20; они не могут показать, какой файл переместился. Это реальное раскрытие о поведении и другая категория, чем чтение содержимого.

Перехвату TLS нужен корень, которому вы уже доверяете

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

Поэтому такая схема оставляет улики. Издатель в предъявленной цепочке принадлежит организации, а не публичному CA, и клиент может увидеть это без специальных инструментов. Цепочка, заканчивающаяся внутренним корнем, — подпись перехвата, а не неисправность.

Почему канал VPN — не сеанс HTTPS

Канал данных VPN не даёт инспектору такой опоры. IKEv2 и WireGuard ведут собственные рукопожатия и расписания ключей, без TLS, который надо завершать, тогда как OpenVPN заимствует TLS для своего канала управления в изменённом виде, прежде чем защищать данные по-своему. Прокси, построенный для HTTPS, не распознаёт этот сеанс как нечто, что можно разобрать.

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

Проверьте со своей машины

Начните с цепочки, которую предъявляет сайт. Сведения о сайте в браузере показывают издателя, а командная строка сообщает то же самое без сводки:

openssl s_client -connect example.com:443 -servername example.com

Затем отделите отклонённое рукопожатие от отфильтрованного внутреннего трафика счётчиками. Запишите транспортный порт до любого правила отбрасывания и прочитайте их после попытки:

iptables -I OUTPUT 1 -p udp --dport 1194 -j LOG --log-prefix ovpn-out
iptables -vnL OUTPUT --line-numbers

Отсутствие строки журнала на внешнем сокете означает, что рукопожатие не выходило, значит путь отвергает туннель. Завершённое рукопожатие, при котором не проходят лишь некоторые назначения, означает, что туннель работает, а политика внутри него нет. Ни один из результатов не требовал прочитать байт нагрузки.

Чтение, которое действительно происходит, находится на краях: разделённый туннель передаёт внутренний HTTPS корпоративному прокси, а концентратор, принадлежащий работодателю, раскрывает всё на выходе. Что бы вы ни нашли, не отключайте проверку сертификатов, чтобы навязать соединение, потому что эта проверка — единственное, что отделяет инспекцию от злоумышленника.

Похожие статьи