Применение принципов стеганографии для решения реальных задач


Собственно, термин “стеганография” давно не вызывает вопросы, и в общем случае понятно, что речь идет о способах передачи скрытых данных внутри других, не скрытых. Правда, когда начинаются рассуждения про применимость этих способов, обычно предлагаются различные варианты сокрытия информации от неких злодеев, которые хотят ее (эту информацию) выявить и употребить. В этой статье предлагается посмотреть на стеганографию чуть шире, хотя, несомненно, задача «скрыть и не дать воспользоваться» — самая очевидная.

Кое-что о «водяных знаках»




Есть такой хороший и довольно известный вариант применения стеганографии – водяной знак на изображении. Используется, как правило, для защиты авторских прав, что очень актуально для дизайнеров, фотографов, иллюстраторов и прочих художников. Подобные механизмы часто уже встроены в графические редакторы, в том же самом Photoshop’е это делается с помощью плагинов. А идея в том, что при экспорте изображение почти незаметно модифицируется, и в дальнейшем содержит идентификатор автора, что и позволяет “отлавливать” факты нелицензионного использования цифровых изображений, почти не теряя при этом в качестве визуально. Правда, ключевое слово тут — “почти”, поскольку все-таки картинка немного модифицируется, а значит, отличается от оригинальной. Водяной знак может быть заметен в виде зерна на однородных поверхностях и часто увеличивает размер файла, а также может быть удален, например, размытием по гауссу (правда, и изображение немного потеряет в резкости). И поэтому некоторые фотографы отказываются от подобных программ в пользу обычного копирайта на фотографии.
Но если мы рассмотрим водяной знак не в качестве защиты, а для сохранения дополнительных данных на изображении, то вариантов использования данной технологии становится больше. Подобная картинка может заменить классические штрих-коды, а значит может использоваться для маркирования товаров в магазинах. Здесь открывается простор для деятельности дизайнера упаковок — ведь можно будет не оставлять место под какой-нибудь абстрактный EAN-13 (сейчас не берем вопрос требований регулирующих органов), а указывать необходимую информацию прямо в оформлении упаковки. Одна из компаний предоставляет технологии стеганографии на изображении под лозунгом “The barcode of everything”.

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

Аудио-файлы, кстати, тоже могут защищаться с помощью “водяного знака”, каким бы странным это ни казалось применительно к звуку. И еще видеоролики.

Дополненные файлы




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

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

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

Стоит отметить, что требуемая информация может быть скрыта в файле различными способами: в метаданных, в свойствах файла, а если речь идет об изображении — с использованием того же “водяного знака”. В последнем случае документ будет защищен и при печати (конечно, при условии достаточного качества печатного документа).

Как найти и обезвредить?


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

Один из представителей нашего клиента (а это крупная федеральная компания) в приватном разговоре как-то поведал о подобном инциденте: в сети появилась копия распечатанного и подписанного приказа об изменении внутреннего регламента. Это повлекло за собой проблемы, но суть рассказа была не в этом. Служба безопасности провела расследование, и самое большее, что смогла — определить регион утечки документа. Не помогли ни DLP, ни веб-камеры, ничего. Зато добавилась новая проблема: сотрудники компании поняли, что могут печатать и выносить документы безнаказанно.

Еще варианты


Какие варианты здесь может предложить стеганография? Ну, например, при отправке на печать выводить помимо текста еще и штрихкод с дополнительными данными. Но, во-первых, это уже не совсем стеганография: штрихкод же не скрывается, а, во-вторых, — и это следует из первого — избавиться от него очень просто.

Можно применить к сформированной странице печати алгоритмы “водяного знака”, но мы помним, что их использование ограничивается полноцветностью и насыщенностью изображения, чем среднестатистический документ похвастаться не может. Что же делать?

Один из вариантов предлагают производители оргтехники. Давно, в общем, уже не секрет, что большинство современных лазерных принтеров ставят на каждую страницу малозаметные микроточки, в основном — желтые. С помощью этих точек на распечатанном документе кодируется информация о серийном номере принтера, а еще о дате и времени печати. Этот вариант вполне себе используется в криминалистике, в СМИ приводятся примеры, когда такая информация позволила расследовать утечку секретных данных и определить виновных: (http://digg.com/2017/did-intercept-burn-reality-winner).

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

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



Аффинные преобразования


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

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

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

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

Уникализация «на лету»


Продолжая развивать идею уникализации документа, приходим к варианту стеганографического кодирования документа при его редактировании, просмотре, а также при копировании и отправке на печать. Готовые промышленные решения здесь отсутствуют, хотя в сети есть сервисы, которые предлагают спрятать необходимое сообщение в произвольном тексте (например, www.spammimic.com – маскирует заданное сообщение в сгенерированном бессмысленном «спаме»; однако сами создатели сайта предостерегают от использования его шпионами). Средств же уникализации документа на этапе его модификации, как уже говорилось, на текущий момент нет.

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

Однако исследовательские работы на эту тему активно ведутся, в том числе и нашей компанией.

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


  1. polearnik
    19.02.2019 16:47

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


    1. Ghool
      19.02.2019 19:25
      +1

      Своими словами лучше не надо — как раз это может навести на вас


  1. hubhito
    19.02.2019 17:19

    а склеенные слова в статье (например, «Причемимеются») — пример «водяных знаков»?


    1. sanitto Автор
      19.02.2019 17:23

      Конечно. :) Сумеете прочитать скрытую информацию?


  1. uaggster
    20.02.2019 09:32

    А вот каждый лист каждой библии Иоганна Гуттенберга — абсолютно уникален.
    И, помнится кто-то (из великих, не помню кто) искал скрытые сообщения в особенностях шрифта.


  1. Iwanowsky
    21.02.2019 16:43

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