6.8. Методы компьютерной стеганографии Стеганография – это метод организации связи (передачи сообщений), при котором скрывается само наличие связи. В отличие от криптографии, где противник точно может определить, является ли передаваемое сообщение зашифрованным текстом, методы стеганографии позволяют встраивать секретные сообщения в открытые послания таким образом, чтобы было невозможным заподозрить существование самого встроенного послания. Таким образом, если цель криптографии состоит в блокировании несанкционированного доступа к информации путём шифрования содержания секретных сообщений, то цель стеганографии – в скрытии самого факта существования секретного сообщения. При необходимости оба способа могут быть объединены и использованы для повышения эффективности защиты информации. Слово «стеганография» в переводе с греческого означает «тайнопись» («steganos» – секрет, тайна, «graphy» - запись). К ней относится большое число секретных средств связи, таких как невидимые чернила, микрофотоснимки, условное расположение знаков, средства радиосвязи на плавающих частотах и т.д. Развитие вычислительной техники и новых каналов передачи информации привело к появлению новых методов стеганографии, в основе которых лежат особенности представления информации в компьютерных файлах, вычислительных сетях и т.п. Этот вид стеганографии получил название компьютерной стеганографии. Компьютерная стеганография базируется на двух основных принципах. Первый принцип заключается в том, что файлы, содержащие оцифрованное изображение или звук, могут быть до некоторой степени видоизменены без потери их функциональности в отличие от других типов данных, требующих абсолютной точности. Второй принцип заключается в неспособности органов чувств человека различать незначительные изменения в цвете изображения или качестве звука. Этот принцип особенно легко применять к изображению или звуку, несущему избыточную информацию. Так как компьютерная стеганография является молодым направлением в области защиты информации и до недавнего времени не имела своей терминологии, то в 1996 году было предложено использовать единую терминологию. Стеганографическая система, или стегосистема – это совокупность средств и методов, которые используются для формирования скрытого канала передачи информации. При построении стегосистемы должны учитываться следующие положения:
Структурная схема стегосистемы представлена на рис.6.1. Сообщение – это любая информация, подлежащая скрытой передаче. В качестве сообщения может использоваться любой вид информации: текст, изображение, аудиосигнал. Рис. 6.1. Структурная схема стегосистемы. Встроенное (скрытое) сообщение – это сообщение, встроенное в контейнер. Контейнер – это любая информация, предназначенная для скрытия сообщения. Выбор вида контейнера оказывает существенное влияние на надёжность стегосистемы и возможность обнаружения факта передачи скрытого сообщения. По размеру (протяжённости) контейнеры можно разделить на два типа: непрерывные (потоковые) и ограниченной (фиксированной) длины. Особенностью потокового контейнера является то, что невозможно определить его начало и конец. В таком контейнере биты информации, используемые для скрытия сообщения, включаются в общий поток в реальном масштабе времени и выбираются с помощью специального генератора, задающего расстояния между ними. В непрерывном потоке данных самая большая трудность для получателя – определить, когда начинается скрытое сообщение. При наличии в потоковом контейнере сигналов синхронизации или границ пакета, скрытое сообщение начинается сразу после одного из них. В свою очередь для отправителя сообщения возможны проблемы, если он не уверен в том, что поток контейнера будет достаточно длинным для размещения всего сообщения. При использовании контейнера ограниченной длины отправитель заранее знает размер файла и может выбрать скрывающие биты в подходящей псевдослучайной последовательности. С другой стороны, такие контейнеры имеют ограниченный объём, и встраиваемое сообщение иногда может не поместиться в файл-контейнер. Другой недостаток заключается в том, что расстояния между скрывающими битами равномерно распределены между наиболее короткими и наиболее длинными заданными расстояниями, в то время как истинный случайный шум будет иметь экспоненциальное распределение длин интервала. При необходимости можно задать псевдослучайные экспоненциально распределённые числа, однако этот путь наиболее трудоёмкий. На практике чаще всего используются контейнеры ограниченной длины как наиболее распространённые и доступные. Возможны следующие варианты контейнеров:
В зависимости от вида информации, используемой для встраивания сообщений, контейнеры могут быть визуальные, звуковые и текстовые. Визуальный контейнер представляет собой картинку или фотографию, в которой для встраивания сообщений используются небольшие изменения яркости заранее определённых точек растра изображения. Звуковой контейнер представляет собой речевой или музыкальный сигнал, в котором для встраивания сообщений используются младшие биты аудиосигнала, что практически не отражается на качестве звука. Текстовый контейнер представляет собой текстовый файл, подготовленный к печати на принтере, в котором для встраивания сообщений используются небольшие изменения стандартов печати (расстояния между буквами, словами и строками, размеры букв, строк и др.). При выборе того или иного вида контейнера необходимо иметь в виду, что при увеличении объёма встраиваемого сообщения снижается надёжность стегосистемы (при неизменном размере контейнера). Таким образом, используемый в стегосистеме контейнер накладывает ограничения на размер встраиваемого сообщения. Пустой контейнер – это контейнер без встроенного сообщения. Заполненный контейнер, или стегоконтейнер – это контейнер, содержащий встроенную информацию. Стеганографический канал (стегоканал) – это канал передачи скрытого сообщения. Ключ (стегоключ) – это секретный ключ, необходимый для скрытия сообщения. В зависимости от количества уровней защиты в стегосистеме может быть один или несколько стегоключей. По аналогии с криптографией по типу стегоключа стегосистемы подразделяются на два вида: с секретным ключом и с открытым ключом. В стегосистеме с секретным ключом используется один ключ, который должен быть определён либо до начала обмена секретными сообщениями, либо передан по защищённому каналу. В стегосистеме с открытым ключом для встраивания и извлечения сообщения используются разные ключи, различие которых состоит в том, что с помощью вычислений невозможно определить один ключ из другого. Поэтому один ключ (открытый) может передаваться свободно по незащищённому каналу связи. Любая стегосистема должна отвечать следующим требованиям:
Классификация методов компьютерной стеганографии. Методы ком-пьютерной стеганографии можно разделить в целом на два вида: методы, основанные на избыточности визуальной и аудиоинформации; методы, основанные на использовании специальных свойств компьютерных форматов. Методы, основанные на избыточности визуальной и аудиоинформации, для скрытия информации используют младшие разряды цифровых отсчётов цифрового изображения и звука, которые содержат очень мало полезной информации. Их заполнение дополнительной информацией практически не влияет на качество восприятия, что и даёт возможность скрытия конфиденциальной информации. Преимуществом этих методов является возможность скрытой передачи большого объёма информации и возможность защиты авторского права путём создания скрытого изображения товарной марки, регистрационного номера и т.п. Недостаток метода состоит в том, что за счёт введения дополнительной информации искажаются статистические характеристики цифровых потоков. Для снижения компрометирующих признаков требуется коррекция статистических характеристик. Методы, основанные на использовании специальных свойств компьютерных форматов, делятся на: методы использования зарезервированных для расширения полей компьютерных форматов данных; методы специального форматирования текстовых файлов; методы скрытия в неиспользуемых местах гибких дисков; методы использования имитирующих функций; методы удаления идентифицирующего файл заголовка. Методы использования зарезервированных для расширения полей компьютерных форматов данных основаны на том, что многие мультимедийные форматы имеют поля расширения, которые заполняются нулевой информацией и не учитываются программой. В эти поля и записывается скрываемая информация. Методы специального форматирования текстовых файлов в свою очередь делятся на:методы использования известного смещения строк, слов, предложений, абзацев; методы выбора определённых позиций букв; методы использования специальных свойств, не отображаемых на экране полей форматов. Методы использования известного смещения строк, слов, предложений, абзацев основаны на изменении положения строк и расстановки слов в предложении, что обеспечивается вставкой дополнительных пробелов между словами. Методы выбора определённых позиций букв используют принцип нулевого шифра. Акростих является частным случаем этого метода, когда, например, начальные буквы каждой строки образуют сообщение. Методы использования специальных свойств, не отображаемых на экране полей форматов, основаны на использовании специальных скрытых полей для организации сносок и ссылок, например, использование чёрного шрифта на чёрном фоне. Методы скрытия в неиспользуемых местах гибких дисков основаны на том, что скрываемая информация записывается в обычно неиспользуемых местах дисков (например в нулевой дорожке). Методы использования имитирующих функций основаны на генерации осмысленного текста, скрывающего информацию. Методы удаления идентифицирующего файл заголовка основаны на том, что скрываемая информация шифруется и в нем удаляется идентифицирующий заголовок, который заранее известен пользователю. Преимуществом этих методов является простота их реализации, а недостатком – низкая степень скрытности и передача небольших объёмов информации. Методы замены младших бит. Одним из наиболее распространённых методов стеганографии, использующих психофизические особенности человека, является метод замены младших бит информации, или LSB-метод (Least Signifi-cant Bits). Распространённость этого метода обусловлена функциональной простотой, большой ёмкостью и высокой степенью защищённости от стегоанализа [3]. Суть метода состоит в замене нескольких младших бит в байтах данных. Он применяется в графических файлах, использующих для формирования цвета каждого элемента изображения (пиксела) значения некоторых составляющих (например, значения составляющих основных цветов – красного, зелёного и синего), или в звуковых файлах, использующих для формирования звука значения дискретизированных амплитуд сигнала. При оцифровке изображения или звука всегда существует погрешность дискретизации, которая обычно находится на уровне младшего значащего бита. Это значит, что фактически неизвестно, что будет стоять в младшем значащем разряде цифрового представления цвета или звука. Поэтому при замене только самого младшего значащего бита говорить о каком-либо искажении изображения или звука не имеет смысла. Однако при замене только одного младшего бита такой метод имеет достаточно малую ёмкость, порядка 10% от объёма файла-контейнера, поэтому на практике используют замену более одного бита. Метод замены цветовой палитры. Метод основан на использовании специфических особенностей формата файла-контейнера и предназначен для скрытия текстовой информации в графических файлах, использующих цветовые палитры. Такими файлами являются, например, файлы BMP, PCX и GIF [3]. Палитра представляет собой некоторое число триад байт (не более 256), которые описывают цвет точки по тому же принципу, что и в файлах True Color. За палитрой следует массив байт, каждый из которых описывает одну точку изображения и содержит в себе номер цвета в палитре. При использовании этого метода в качестве контейнера следует выбирать файлы, содержащие некоторый цвет в избытке. Например, это могут быть схемы, рисунки, текст чёрного цвета на белом фоне. Такое сочетание цветов является оптимальным для реализации данного метода, однако можно использовать и другие цвета. Метод сортировки цветовой палитры. Метод основан как на использовании особенностей формата контейнера, так и на использовании психофизических особенностей восприятия цвета человеком. При этом методе в качестве контейнера используются файлы с индексированными цветами, содержащи-ми монохромное (обычно градации серого) изображение. Суть метода заключается в специальной предварительной подготовке файла-контейнера. Палитра файла упорядочивается таким образом, чтобы цвета с соседними номерами минимально отличались друг от друга и равномерно изменялись от чёрного цвета для нулевого номера до белого цвета для 255-го номера. После этого скрываемая информация заносится в младшие разряды точек изображения. То есть искажаются не сами цвета, а номера цветов, но благодаря предварительно отсортированной палитре цвет точки заменяется на похожий, который практически невозможно отличить от исходного из-за их малого различия. Информация, скрытая данным методом, также легко выявляется средствами программного анализа. Описанные выше методы не увеличивают размер файла-контейнера, но их применение ограничено растровыми форматами, использующими сжатие информации без потери качества, например RLE- или LZW-сжатие. Методы компьютерной стеганографии в JPEG-файлах. Цветные изображения, представленные в цифровой форме, достаточно велики и занимают большой объём памяти (до нескольких мегабайт). Поэтому для их сжатия существует ряд методов. Так, форматы BMP и GIF используют алгоритмы сжатия без потерь, обеспечивающие точное восстановление исходного изображения. Существуют также алгоритмы сжатия с потерей (искажением) информации. Таким примером может служить формат JPEG (Joint Photographic Experts Group). В общем случае методы обработки (сжатия) изображений можно разделить на две группы: непосредственные и спектральные. При использовании непосредственных методов обработке подвергаются сами исходные изображения (пикселы). Спектральные методы основаны на применении дискретных унитарных преобразований Фурье, Адамара и др. При этом обрабатывается не исходное изображение, а соответствующие коэффициенты преобразования. Методы скрытия информации в JPEG-файлах обладают достаточно высокой степенью защищённости от стегоанализа, так как возможность варьирования качества сжатого изображения в широком диапазоне не позволяет легко установить, являются ли возникающие в результате сжатия погрешности следствием скрытия данных или следствием использования высоких коэффициентов квантования. Компьютерная стеганография в PRN-файлах. Файлы печати цветных графических изображений на принтерах, поддерживающих точечный вывод, содержат описание битовой карты отпечатка. Процедура печати предполагает получение битовых карт отпечатков, кодирование их на языке управления принтером (PRN-файлы) и пересылку на принтер для непосредственного получения отпечатка. В этом случае в качестве контейнера стегосистемы может быть использована битовая карта отпечатка. Структурная схема стегосистемы для скрытия информации в битовых картах приведена на рис.6.2. До получения отпечатка битовая карта модифицируется таким образом, чтобы не позволить выявить наличие встроенного сообщения визуальным контролем самой карты и соответствующего ей отпечатка. Для скрытия информации в этом случае применяется один из методов компьютерной стеганографии, основанный на избыточности данных. В битовых картах избыточность данных создаётся за счёт большой вариантности взаимного расположения цветных пятен внутри одного и того же единичного фрагмента отпечатка изображения.
Рис. 6.2. Структурная схема стегосистемы для скрытия информации в битовых картах. Количество битовых карт равно количеству первичных красителей принтера. Каждая битовая карта, соответствующая одному первичному красителю принтера, может быть представлена прямоугольной матрицей с нулевыми и единичными компонентами, у которой 1 соответствует наличию красителя в соответствующей позиции, а 0 – его отсутствию. Совокупность битовых матриц с соответствующими значениями 0 и 1 и соответствует конкретному отпечатку. Градации цвета на отпечатке воспроизводятся с помощью подмножеств (единичных фрагментов) битовой карты – растровых точек с различной плотностью красочных пятен. Для сохранения правильного градационного воспроизведения при печати и, следовательно, для скрытия факта встраивания конфиденциальной информации, модификация битовых карт отпечатков не должна приводить к изменению плотности красочных пятен (дотов) внутри растровых точек. Вариантность взаимного расположения дотов внутри растровых точек и является ресурсом, который используется для организации стегосистемы в PRN-файлах. Среди всех возможных узоров, отвечающих некоторой плотности заполнения растровой точки красочными пятнами, для целей стеганографии можно пользоваться регуляризованными, не создающими муара растрами, то есть такими, доты которых распределены достаточно равномерно по площади растровой точки. Следует отметить, что размеры растровой точки жёстко не определены и могут варьироваться в разумных пределах. Например, при разрешении 300 dpi (dot per inch) можно использовать квадратную матрицу размерами 6х6, 7х7, 8х8 и 9х9. Форма растровой точки (прямоугольная, круглая, овальная и т.д.) также может варьироваться при встраивании информации. Получить отпечатки со скрытой информацией можно только с помощью специального программного обеспечения, так как при печати драйвер принтера, используя фирменную технологию растрирования, «размоет» те символы скрытой информации, которые по своим размерам сравнимы с размерами растровой точки. Для извлечения скрытой информации необходимо использовать программу и алфавитные таблицы. В заключение можно отметить, что методы компьютерной стегано-графии, использующие особенности форматов файлов-контейнеров, невоз-можно выявить путём субъективного анализа (просмотром, прослушиванием), но достаточно легко обнаружить, используя различные программные средства стегоанализа. В то же время методы, основанные на использовании психо-физических особенностей человека, невозможно выявить простым программным анализом на предмет соответствия формату и достаточно сложно, а в некоторых случаях и невозможно, обнаружить путём субъективного анализа. |