Благодаря ученым из Республиканского университета Уругвая мы теперь гораздо лучше понимаем, как можно восстанавливать изображение из паразитного радиошума, испускаемого мониторами. Если быть более точным, то из наводок от передачи данных через разъемы и кабели цифрового интерфейса HDMI. Используя современные алгоритмы машинного обучения, уругвайские исследователи показали, как из такого радиошума можно реконструировать текст, выводимый на внешний монитор.
А что, раньше было нельзя?
Разумеется, это не первая попытка атаки по сторонним каналам, цель которой восстановить изображение по паразитному излучению. Перехват радиошума от дисплея в соседнем помещении, также известный как подвид TEMPEST-атаки, был описан в исследовании, которое вышло в 1985 году. Уже тогда нидерландский исследователь Вим ван Эйк продемонстрировал, что можно перехватить сигнал с монитора, установленного неподалеку. В статье про родственную атаку EM Eye мы подробно рассказывали об этих исторических работах, поэтому не будем повторяться.
Проблема в том, что ван Эйк проделал это с монитором сорокалетней давности, с электронно-лучевой трубкой и аналоговым методом передачи данных. Да и перехватываемое изображение тогда было простым для анализа, с белыми буквами на черном фоне без графики. В современных условиях, с цифровым интерфейсом HDMI, перехватить, а главное, восстановить данные значительно сложнее. Но именно это и проделали уругвайские ученые.
Как осуществляется современный ван-эйковский перехват?
Данные на монитор по интерфейсу HDMI передаются в цифровом виде. Общий объем этих данных огромен. Каждую секунду компьютер передает на монитор 60 или больше кадров, каждый кадр содержит миллионы точек разных цветов. Мы можем взять модифицированный компьютерный радиоприемник и перехватить наводки, возникающие при передаче этого потока данных. Но получится ли извлечь из этого крайне слабого шума полезную информацию?
Авторы назвали эту атаку Deep-TEMPEST, намекая на применение технологий машинного обучения deep learning. На схеме наглядно показано, насколько шумные данные перехватываются с помощью описанного метода до обработки: это обесцвеченная тень исходного изображения, в которой угадывается разве что расположение основных элементов. В данном эксперименте это было окно браузера с открытой страницей «Википедии». Можно различить навигационное меню сверху и изображение по центру экрана. Прочитать текст или разглядеть картинку — решительно невозможно.
А вот результат обработки. С картинкой лучше не стало, разобрать ее детали все так же затруднительно. А вот текст распознался надежно, целиком, и даже если алгоритм машинного обучения ошибся в паре букв, это не сильно влияет на понимание конечного результата. Посмотрим на еще один пример:
Сверху — перехваченное изображение. Какие-то буквы различимы, но читать такой текст практически невозможно. Снизу — оригинальное изображение, фрагмент скриншота экрана. Посередине — результат обработки перехваченного изображения алгоритмом машинного обучения. В паре мест наблюдаются сложности с распознаванием соседних букв, но в целом текст читается достаточно легко.
Как исследователи добились такого результата?
Основная заслуга уругвайских ученых в том, что они разработали собственный метод анализа данных. Отчасти это было сделано за счет более эффективного процесса обучения нейросети, которая распознает текст из грубой картинки. Если подходить к этой цели в лоб, то для обучения понадобятся пары из оригинального скриншота экрана и перехвата изображения с помощью радиоприемника. Сделать достаточное для обучения количество таких пар (а их нужны сотни и тысячи) — непростая задача, на которую может уйти много времени. Авторы работы пошли по несколько другому пути: выводя картинку на экран и перехватывая сигнал, они добыли примерно половину данных для обучения, а вторую половину — просто сгенерировали. Написали алгоритм, который на основе скриншота дает достоверную картину «перехваченной» информации. Этого оказалось достаточно для эффективной тренировки алгоритма машинного обучения.
Второе важное достижение исследователей из Уругвайского университета — использование нейросети, которая позволяет добиться качественного результата без особых затрат. Тестовый стенд был создан из относительно доступных инструментов для перехвата радиоданных и открытого программного обеспечения. Мы уже упоминали о том, что на современный монитор по интерфейсу HDMI каждую секунду передается огромный объем данных. При анализе паразитного радиоизлучения от такой передачи, по идее, возникает необходимость захватывать большую полосу радиочастот — чем больше, тем качественнее результат. В идеале нужен высококлассный радиоприемник, способный захватывать полосу частот до 3200 мегагерц: такой стоит весьма дорого, около 25 тысяч долларов. Однако ученые проводили исследования с приемником USRP 200-mini ($1500), способным анализировать куда более узкую полосу частот в 56 мегагерц. Но эффективность нейросети, натренированной на распознавание такой частичной информации, позволила компенсировать нехватку исходных данных.
Для обработки данных использовались программное обеспечение и библиотеки с открытым исходным кодом. Результаты работы также опубликованы в открытом доступе, так что при желании можно воспроизвести результаты работы ученых.
Ограниченная сфера применения
Один из героев романа «Криптономикон» Нила Стивенсона в какой-то момент понимает, что за его компьютером следят при помощи метода ван Эйка, и начинает усложнять жизнь шпионам: меняет цвет букв, вместо одноцветного фона для текста включает видеоролик. В целом описанные четверть века назад контрмеры против атак типа TEMPEST все так же действенны. Достаточно добавить в изображение шум, который пользователь даже не заметит, и перехват станет полностью невозможным.
Естественно, возникает вопрос, а стоит ли овчинка выделки — так уж ли необходимо защищаться от настолько узкоспециализированных атак? Разумеется, в абсолютном большинстве случаев практического применения этой атаки бояться не стоит — лучше сфокусироваться на защите от реальных угроз в виде вредоносного ПО. Но если вы работаете со сверхценными данными, за которыми могут охотиться суперпрофессионалы, то, может быть, в рамках модели угроз стоит рассматривать и такие атаки.
Кроме того, не стоит списывать эту работу со счетов только потому, что она описывает перехват с внешнего монитора. Да, можно пользоваться ноутбуком, но изображение на встроенный дисплей передается с использованием примерно тех же принципов — разве что интерфейс передачи может немного отличаться да уровень излучения будет чуть ниже. Но это решается доработкой алгоритмов и апгрейдом оборудования. Так что отдадим должное уругвайским исследователям — они снова показывают нам, насколько сложен реальный мир за пределами «программного обеспечения» и «операционных систем».