Ethernet в эфире

Можно ли использовать проводную сеть для беспроводной передачи данных? Как показывает практика — да.

Новые методы добычи информации из компьютеров и сетей, находящихся за воздушным зазором, обнаруживают с завидной регулярностью. На прошедшей в конце прошлого года конференции  Chaos Communication Congress исследователь и радиолюбитель Яцек Липковски представил результаты своих экспериментов по эксфильтрации данных из изолированной сети при помощи фонового электромагнитного излучения, генерируемого сетевым оборудованием.

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

Тут нужно сразу оговориться, что в экспериментах исследователь использовал в основном Raspberry Pi 4 model B, но уверен, что и на других подключаемых к Ethernet устройствах (по крайней мере встраиваемых) его результаты можно будет воспроизвести. Данные он передавал при помощи азбуки Морзе. Это, наверное, не самый эффективный метод передачи информации, однако он прост в реализации (любой радиолюбитель может поймать сигнал радиоприемником и расшифровать послание на слух), так что вполне подходит для демонстрации уязвимости, которую автор назвал Etherify.

Эксперимент 1. Изменение частоты

В имплементации современных Ethernet-контроллеров используется стандартизированный, не зависящий от среды передачи интерфейс MII (Media Independent Interface). Он подразумевает передачу данных на разных частотах в зависимости от скорости соединения — 2,5 МГц для скорости 10 Мбит, 25 МГц на скорости 100 Мбит и 125 МГц на скорости 1 Гбит. При этом сетевые устройства допускают переключение скорости передачи данных – и, соответственно, смену частоты.

Разная частота передачи данных генерирует разное электромагнитное излучение от провода. Так что вот эти самые «переключения скоростей» и могут использоваться для модуляции сигнала. Достаточно принять помехи от скорости 10 Мбит за 0, а помехи от 100 Мбит за 1 — и несложный скрипт, отправляющий сетевому контроллеру приказы передавать данные с той или иной скоростью, по сути, начинает генерировать точки и тире азбуки Морзе, легко улавливаемые радиоприемником. Результат можно принять на расстоянии до 100 метров от источника.

Эксперимент 2. Передача данных

Переключение скорости передачи данных — не единственный возможный метод модуляции сигнала. Фоновое излучение от работающего сетевого оборудования меняется и в зависимости от того, передаются данные или нет. То есть потенциальное вредоносное ПО на изолированном компьютере может использовать, например, стандартную сетевую утилиту для проверки целостности соединения (Ping -f), чтобы нагружать канал данными. В радиоэфире включения и отключения передачи будут слышны, как те же самые точки и тире, на расстоянии до 30 метров.

Эксперимент 3. Провод не нужен?

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

Дальнейшие эксперименты

В целом такой метод передачи данных воспроизводится и на офисных устройствах (ноутбуках, маршрутизаторах), правда, с разной эффективностью. Например, сетевые контроллеры ноутбуков, на которых исследователь попробовал воспроизвести первый эксперимент, устанавливали соединение только через 2-3 секунды после каждого изменения скорости, что сильно замедляло передачу данных морзянкой. Но у него все равно получилось передать несложное послание. Расстояние до оборудования тоже сильно зависит от конкретных моделей. Пока Липковский продолжает эксперименты в этой сфере.

Практическое значение

Вопреки расхожему мнению, изолированные сети за воздушным зазором используются не только в сверхсекретных лабораториях и на объектах критической инфраструктуры. Нередко и обычные бизнесы используют изолированные устройства типа Hardware security module (аппаратное устройство, используемое для работы с цифровыми ключами, шифровки и дешифровки цифровых подписей и иных криптографических нужд) или выделенную изолированную рабочую станцию как локальный центр сертификации (CA). Если что-то подобное используется и в вашей компании, то о потенциальной возможности утечки информации из системы за воздушным зазором лучше не забывать.

Кроме того, нужно учитывать, что в качестве улавливающего устройства исследователь использовал достаточно недорогой бытовой приемник, подключаемый через USB. Обладающие значительными ресурсами злоумышленники, скорее всего, смогут позволить себе более чувствительное оборудование и увеличить дальность приема.

В качестве практических мер по предотвращению такого рода утечек остается только повторить несколько очевидных советов:

  • Зонирование помещений и контроль периметра. Чем ближе потенциальный злоумышленник может подойти к помещению, где работают изолированные сети или устройства, тем больше шансов, что он сможет перехватить сигнал.
  • Экранирование помещений. В особых случаях зону, в которой работает критическое оборудование, можно превратить в клетку Фарадея, обшив помещение металлом.
  • Использование экранированных сетевых кабелей. Да, это не панацея, но в теории это должно изрядно уменьшить зону, в которой реально принять изменения электромагнитных колебаний. В сочетании с зонированием это может дать необходимый уровень защиты.
  • Использование решений для мониторинга подозрительных процессов в изолированной системе. Все-таки, прежде чем передавать данные вовне, злоумышленникам надо заразить компьютер. А это можно отследить при помощи специального программного обеспечения.
Советы