Код в картинке, или Что такое стеганография?

Рассказываем об одном из самых креативных способов спрятать информацию.

Сейчас «читает между строк» говорят про человека, который умеет понимать намеки и скрытые смыслы. Между тем когда-то в буквальном смысле между строк действительно передавали тайные сообщения, написанные невидимыми чернилами.

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

Как работает цифровая стеганография?

Спрятать секретное послание можно практически в любой цифровой объект — текстовый документ, лицензионный ключ, расширение файла. Например, редакторы сайта Genius.com, посвященного разбору треков рэп-исполнителей, использовали два вида апострофов в текстах таким образом, чтобы вместе они составляли словосочетание red handed («с поличным») на азбуке Морзе. Таким образом они защищали от копирования уникальный контент ресурса.

Однако один из самых удобных «контейнеров» — медиафайлы (картинки, аудио, видео и так далее). Они обычно достаточно большие сами по себе, а значит, и «довесок» может быть не таким маленьким, как в случае, скажем, с документом Word.

Секретную информацию можно записать в метаданные файла или же прямиком в основное содержимое. Возьмем, например, картинку. С точки зрения компьютера она представляет собой набор из сотен тысяч точек-пикселей. У каждого пикселя есть «описание» — информация о его цвете.

Для формата RGB, который используется в большинстве цветных картинок, это описание занимает в памяти 24 бита. Если в описании некоторых или даже всех точек 1–3 бита будет занято секретной информацией, на картинке в целом изменения будут неразличимы. А за счет огромного числа пикселей всего в изображение вписать можно довольно много данных.

Оригинал картинки, использованной в качестве несущей для стеганографии Пример картинки, в которую с помощью стеганографии спрятан текст

Слева просто картинка без скрытого сообщения, а в изображении справа спрятаны первые 10 глав «Лолиты» Набокова

 

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

Как используют цифровую стеганографию?

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

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

Стеганография — находка для кибершпиона

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

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

Самые тонкие мемы

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

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

  • сделать скриншот рабочего стола;
  • собрать информацию о запущенных процессах;
  • скопировать данные из буфера обмена;
  • записать имена файлов из указанной папки.

Код в картинке

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

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

Баннер со скрытым кодом

Баннер со скрытым кодом. Источник: блог компании Confiant

В случае киберпреступников скрипт распознавал цвет пикселей на картинке и записывал его в виде набора букв и цифр. Казалось бы, довольно бессмысленная задача: помните, там был просто белый прямоугольник? Однако в глазах программы пиксели были почти белыми, и это «почти» она преобразовывала во вредоносный код, который тут же и исполняла.

Извлеченный из картинки код перенаправлял пользователя на сайт злоумышленников. Там жертву уже ждал троян, притворяющийся обновлением Adobe Flash Player, который затем скачивал другие гадости, в частности рекламное ПО.

Обнаружить стеганографию очень трудно

Как отметил на форуме RSA Conference 2018 эксперт Саймон Уайзмен (Simon Wiseman), качественную стеганографию распознать крайне сложно. Избавиться от нее тоже не так-то просто: есть методы, позволяющие вшить сообщение в картинку настолько глубоко, что оно сохранится даже после того, как ее напечатают и снова отсканируют, уменьшат, увеличат или еще как-то отредактируют.

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

  • Не торопитесь открывать ссылки и вложения из электронных писем. Прочтите сообщение внимательно: если адрес отправителя или содержание вызывают у вас сомнения, лучше проигнорируйте его.
  • Если вам нужно что-то скачать, пользуйтесь доверенными источниками — например, загружайте приложения из официальных магазинов или с сайтов разработчиков. То же самое верно для фильмов и музыки — не стоит загружать их с неизвестных ресурсов.
  • Используйте надежное защитное решение. Даже если оно не распознает код в картинке, то может поймать на подозрительных действиях другие модули вредоносной программы.
Советы

Как отключить слежку в iOS?

У вас есть iPhone, iPad или iPod? Потратьте несколько минут на настройку служб геолокации, чтобы сэкономить заряд батареи и сохранить конфиденциальность перемещений.