Система прослушивания TLS/SSL от NSA. Часть 2

Credits: Theophilos Papadopoulos, flickr.com/photos/theo_reth/Продолжение рассказа о гипотетическом устройстве системы перехвата защищённого интернет-трафика. В первой части рассматривается расшифровка TLS-трафика. Но чтобы было что расшифровывать, трафик нужно сперва перехватить.

Итак, получение трафика реализуется с помощью его перенаправления или копирования в сети NSA. Перенаправление реализует транзитный узел, который нужно правильно подобрать. Пользовательский интерфейс наверняка устроен следующим образом: оператор вводит требуемый IP-адрес, обозначающий либо пользователя, либо сервер; система находит в базе данных, хранящей сведения о топологии сети, подходящие точки присутствия NSA, через которые может проходить трафик для заданного IP, проверяет, что этот трафик там есть, обнаружив трафик – ставит его на прослушивание, включает перенаправление. Нужно различать два режима работы с трафиком: активный и пассивный. В пассивном случае трафик лишь копируется в анализирующий сегмент. В активном – перенаправляется, то есть, между двумя точками, устанавливающими соединение, появляется дополнительный узел. Кстати, активный режим, работающий на уровне IP, сейчас штатно используется интернет-провайдерами для фильтрации доступа к интернет-ресурсам. Так что это вполне стандартный инструмент.

Тут есть ряд трудностей. Маршруты, по которым ходят пакеты в Интернете, могут меняться, соответственно, нужно найти действующий маршрут, а в дальнейшем – следить за его возможными изменениями. Кроме того, подключение пользователя с “внутренним” IP-адресом, из адресного пространства локальной сети, может находиться за неким транслятором адресов, внешний адрес которого соответствует и другим пользователям. Очевидно, задача упрощается, если в качестве исходных данных используется адрес не только пользователя, но и сервера, с которым он работает. Проще перехватывать трафик заданного сервера, но и поиск путей перехвата только “по пользователю” тоже реализуем, если у вас в распоряжении суперкомпьютер, анализирующий таблицу BGP, и вы видите определяющий маршруты технический трафик на портах крупнейших мировых транзитных узлов.

Перехват интернет-трафика обычно представляют на уровне IP или близких к этому протоколу уровнях. Однако в реальности существуют более “глубокие” уровни, позволяющие коммутировать каналы и пересылать пакеты данных в самые разные центры обработки. То есть, сведения из таблиц BGP требуется для поиска точек подключения клиентов и серверов, для построения списков транзитных узлов. Но сам перехват может быть реализован на уровне других протоколов, относительно которых реализация IP-транспорта является виртуальной надстройкой.

Итак, после того, как подходящие узлы перехвата определены, вычисляется, возможна ли работа в активном режиме. Активный режим необходим для осуществления атаки типа “человек посередине”. Действительно, транзитный узел (например, маршрутизатор), может сделать с проходящим через него трафиком всё что угодно. В том числе, направить трафик для определённых адресов по специальному маршруту, завернув его в сеть NSA в прозрачном режиме. При идеальной реализации, единственное, что может выдать систему анализа, это возросшая задержка при установлении соединения. Однако активный режим требует возможности управления, условно говоря, коммутацией: нужно добавлять дополнительный узел в цепочку. Пассивный – может быть реализован значительно проще, без доступа к начинке коммуникационного оборудования: достаточно установить на физический канал оптический сплиттер (ну или подключиться к проводам, если они вдруг используются).

Хорошие кандидаты на роль узла перехвата: пограничные маршрутизаторы провайдеров доступа; точки подключения дата-центров; узлы опорных сетей крупнейших операторов связи; усилители оптических сигналов и так далее, это далеко не полный список. При наличии бекодров в прошивках домашних роутеров, последние также становятся хорошим инструментом перехвата пользовательского трафика. Система “тотального” перехвата должна предоставлять единый “уровень абстракции”, позволяющий получить нужный трафик вне зависимости от того, на каком узле и каким способом он физически перехватывается. Это вполне реализуемо, если у вас есть коллектив разработчиков, достаточно вычислительных мощностей и пропускной способности собственных каналов связи. Понятно, что у NSA тут проблем нет.

Кстати, по этой же теме: “Вывод информации, снятой с подводных кабелей“.

()

Похожие записки:



Далее - мнения и дискуссии

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