Передача информации с изолированного (air-gapped) компьютера — нетривиальная задача, поскольку он отключён от сети и обычно находится в отдельном помещении. Но это возможно по сторонним каналам. Например, съём электромагнитного излучения с видеокарты или с других компонентов на материнской плате, распознавание нажатий клавиш по звуку и др.

Существует ещё одна область исследований, в которой различные компоненты ПК используют в качестве «маячков», чтобы подавать сигнал дистанционному наблюдателю. Так можно передать одно или несколько слов или цифр. Например, секретный пароль или конфигурацию настройки оборудования с секретного компьютера.

В частности, можно подавать сигнал морганием светодиода HDD, маршуртизатора или клавиатуры, электромагнитным излучением с шины USB, звуками кулера GPU и магнитной головки HDD, через тепловое излучение и аудиоколонки (ультразвук), изменением энергопотребления ПК и яркости дисплея, вибрациями вентилятора и др.

Недавно к этому списку добавился новый способ: радиотрансляция с помощью кабеля SATA (стандартный красный кабель для подключения SSD, HDD и CD/DVD).

В коннекторе SATA семь контактов, в том числе три заземления (1, 4, 7), два для передачи (2, 3) и два для приёма (5, 6):



Интерфейс SATA в фоновом режиме постоянно транслирует электромагнитное излучение в диапазонах 1 ГГц, 2,5 ГГц, 3,9 ГГц и около 6 ГГц. По характеристикам сигнала можно различить операции чтения и записи:



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

Алгоритм генерации сигнала SATA 3.0 для заданной последовательности байт:



На стороне приёмника работает программное радио (Software Defined Radio), которое записывает сигнал в диапазоне от 5,9 до 6 ГГц. После преобразования Фурье распознаются заголовки начала пакетов и извлекается полезная нагрузка.

Алгоритм декодирования сигнала:



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



Неподалёку от заражённого компьютера следует расположить приёмник для записи радиопередачи.

Атака SATAn


Экспериментальную радиопередачу провели с трёх десктопов, оснащённых накопителем Transcend 256GB MLC SATA III 6Gb/s 2.5” Solid State Drive 370 под управлением Linux Ubuntu 20.04.1 64-бит.

В качестве приёмника использовали устройство ADALM PLUTO Software-defined Radio (SDR) AD9364 RF, подключённое по USB к компьютеру под Windows 10, а демодуляцию производил скрипт в программе MathWorks MATLAB.

Слово SECRET в радиоканале:



Спектрограмма передачи с различными таймингами:



Эксперимент показал возможность успешного приёма информации на расстоянии до 90 см от передатчика, в то время как на расстоянии процент ошибок увеличивается до 15%. Активность SATA во время чтения и записи сильно выделяется из общего сигнала. Научная статья Мордехая Гури (Mordechai Guri) из университета имени Бен-Гуриона в Негеве (Израиль) опубликована 15 июля 2022 года на сайте препринтов arXiv.org (doi: 10.48550/arXiv.1803.03422).


В качестве защитной меры специалисты рекомендуют экранировать корпус и запретить использовать радиоприёмные устройства вблизи компьютеров.



Комментарии (9)


  1. vesper-bot
    04.08.2022 14:59
    +3

    То есть мало того, что датчик, который протащили в airgap, должен ловить частоты в районе 6 ГГц с погрешностью 1е-6, так ещё и корпус должен быть пластиковым? А если в ОС окажется настройка как в линуксах, fsync не чаще раза в секунду, то физическая запись вообще не пойдет в половине случаев, к тому же собьются тайминги канала передачи данных на фоне. В сущности, эта атака немногим слабее обычного моргания лампочкой HDD-активности, но её сложность в разы выше. Правда, у airgap-устройства любые лампочки можно оторвать, а кабель SATA оторвать нельзя без потери функционала устройства, но ничто не мешает (теперь) вместо SATA поставить NVMe и долго смеяться.


    1. GennPen
      04.08.2022 17:37

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


      1. face86
        05.08.2022 12:05

        Излучают ВСЕ проводники, по которым течёт ток. Тем более, SATA кабель - плоский. а не коаксиальный. Весь вопрос в силе излучаемого сигнала. Узконаправленные антенны с большим усилением давно изобретены, например, параболические антенны или фазированные антенные решётки и т.д. На частоту 6 ГГц такая антенна будет иметь вполне транспортабельные размеры, чтобы, например, установить её под тентом в кузове небольшого грузовика.
        Злоумышленники давно научились считывать на расстоянии десятков метров радиометки для бесключевого доступа в автомобиль, например. Так что и SATA можно подслушать. Другой вопрос, что ещё спец ПО всё-таки пока нужно запустить на целевой машине.


        1. GennPen
          05.08.2022 12:56

          У SATA-кабеля используется дифпары. А у витой пары магнитное поле от одного проводника нивелируется другим, т.к. ток по ним течет всегда в противоположных направлениях. А тот микроскопический остаток что просачивается поглощается экранировкой дифпары.
          Да и описываемое SDR в статье вряд ли имело специализированную узконаправленную антенну.


  1. DSarovsky
    04.08.2022 15:21
    +6

    Так, надо определиться, кому ставить "+", а кому "-", так как полторы недели назад про то же самое (с теми же картинками) было в блоге Касперского.


  1. R7R
    04.08.2022 15:28
    +3

    Дежа-вю… я точно недавно видел на хабре первое фото в статье

    Ах, да — здесь.


  1. PKav
    04.08.2022 19:25

    Давайте, тогда уж, модулировать данные нагрузкой процессора, чтобы подсистема питания шумела в такт передаваемым битам



  1. Chelidonium
    05.08.2022 10:46

    два - три витка кабелем на кольцевом феррите возможно снимут проблему