В настоящее время широкое применение средств вычислительной техники и многообразие способов обработки информации характерны для большинства учреждений, организаций и предприятий.
Существующие меры защиты информации используют большое количество средств обнаружения несанкционированных воздействий и реагирования на угрозы. В распоряжении персонала, обеспечивающего безопасную обработку информации, как правило, имеется широкий набор свободного программного обеспечения, которое даже при недостаточном функционале позволяет провести предварительный (предшествующий выбору профессиональных программ) мониторинг и анализ и принять решение о наличии угроз обрабатываемой информации. Однако применительно к области сравнительно нового направления – стеганографии – как правило, отсутствует информации о характере воздействий и происходящих процессах, что не дает возможности определения степени опасности и приводит к неадекватному реагированию системы защиты информации [3].
В распоряжение сетевых администраторов целесообразно включить алгоритмы и/или программы первичного анализа файлов, которые помогут в выборе мер по пресечению стеганографичеких каналов передачи данных силами самого администратора или с привлечением платных программ и услуг сторонних разработчиков.
В работе рассмотрена возможность принятия решения о наличии нелегальных стеговложений на основе статистического анализа при внедрении информации в метаданные файлов формата MP3 – в теги ID3v2.3. Выбор формата файлов осуществлялся из следующих соображений:
– применение стеганографичесих алгоритмов и атак на стего-системы в печатных и интернет-изданиях рассматривается, как правило, на примере графических файлов, и злоумышленник может ожидать, что именно эти файлы будут подвергаться первоочередному анализу при поиске стего;
– по сравнению с видео, аудио-файлы используются чаще и имеют простую структуру;
– MP3 получил наибольшее распространение среди форматов аудио (благодаря наилучшему соотношению «размер-качество») и в достаточном количестве имеется на любом компьютере, как в составе программного обеспечения, так и в личных и служебных библиотеках пользователей.
Структурно тег файла MP3 состоит из общего заголовка и вложенных кадров с собственными заголовками. В спецификации тегов [7] описаны несколько десятков типов кадров, в которые может быть записана текстовая, цифровая и графическая информация (изображения обложки, название произведений, имена исполнителей и композиторов, тексты произведений, комментарии к файлу и т.д.). Такую информацию можно считать легальной (или официальной). Как правило, она считывается стандартным программным обеспечением: отображается в свойствах файлов или в окне проигрывателя, доступна программам чтения-записи тегов.
Нелегальное скрытое вложение (стего) возможно благодаря алгоритму защиты от ошибок, который при чтении тегов игнорирует кадры с нечитаемым содержимым [7]. Алгоритм создания стего достаточно прост: необходимо сформировать нечитаемый кадр (используя заголовок, отсутствующий в спецификации) и, при необходимости, исправить байты общего заголовка, содержащие информацию о размере тега. Нечитаемость кадра достигается использованием шифрования, которое затрудняет (или исключает) чтение информации при обнаружении нелегального вложения. Кроме простоты реализации, такой алгоритм обладает еще одним существенным достоинством – независимостью от размера контейнера [1] и большой пропускной способностью скрытого канала. Теоретический верхний предел размера вложения – 28-значное двоичное число (размер тега записывается в общем заголовке в байтах № 6–9, старший бит в этих байтах не используется).
Показанный алгоритм создания стего изменяет общий размер файла, однако маловероятно получить для сравнительного анализа одновременно и файл со стего и файл-оригинал. Использование шифрования изменяет статистические свойства распределения наименьшего значащего бита [6], что позволяет реализовать атаку для обнаружения стего. В [2, 8] приведены результаты вычислений значений (по критерию х2) для распределения пустых и заполненных контейнеров.
Интерес представляет возможность проведения подобной атаки по кадрам ID3-тегов, и сравнение результатов для файлов, содержащих как обычную информацию (изображение и текст), так и стеговложения. Анализ будет проведен для младшего разряда каждого байта. В общем виде выражение для получения значений статистики имеет вид [5]:
где p0, p1 – вероятности появления соответственно «0» и «1» в младшем бите, определяемая как отношение количества «0» (или «1») к общему числу проверенных битов;
p – ожидаемая вероятность появления «0» или «1», в ходе вычислений принято равной p = 0,5, что соответствует проверке гипотезы о совпадении распределения элементов выборки с равномерным (равновероятным).
Для проведения статистического анализа были выбраны 15 файлов с пустыми заголовками – теги ID3v2.3 (объемом около 1000 байт, заполненных нулями). Продолжительность воспроизведения – минимальная, т.к. анализу подлежат только заголовки.
В качестве вложений подготовлены 15 файлов с расширением .jpg (размеры от 70 до 160 Кбайт) и 15 файлов с расширением .txt (размеры от 50 до 120 Кбайт, информация для записей в каждый файл выбиралась случайным образом из различных текстовых файлов фрагментами по 1–2 страницы с общим объемом 15–25 страниц в каждом текстовом файле-вложении).
Предварительные исследования показали, что для получения достоверных данных о порогах принятия решений необходимо провести анализ не менее 10–15 Кбайт вложений. Размер вложений выбран с избытком, с учётом сжатия информации, реализуемого стего-программами. Анализу подлежат 20 Кбайт файла с вложениями. Собственные заголовки файлов-вложений проверены и имеют только минимум служебной информации (необходимой для корректного чтения этих файлов официальными программами).
Программой Mp3TagTools v1.2 проведена запись информации в стандартные кадры тегов заголовков и сформированы две группы по 15 файлов mp3:
1) файлы с рисунком, который отображается при воспроизведении стандартным плеером, как обложка альбома (кадр APIC);
2) файлы с текстом, полностью скопированным из файлов .txt и внесенным в стандартный кадр COMM (кадр комментария, содержание которого отображается при просмотре свойств файла) [7].
С помощью программ реализации стеганографических алгоритмов FoxSecret v.1, также сформированы две группы по 15 файлов .mp3 с той же информацией, что и в предыдущих группах, только вложенной в кадр с неизвестным заголовком. Эти кадры игнорируются программами просмотра тегов и стандартными плеерами. Все четыре группы файлов .mp3 воспроизведены стандартным плеером без ошибок.
Следует отметить одну особенность программы FoxSecret v1.0: при внесении изменений в общий размер тега (байты 6–9) запись осуществляется с ошибкой – непосредственным переводом в двоичный формат размера тега (с учётом стего-вложения).
Однако согласно спецификации [7] в байтах №№ 6–9 старший бит всегда «0» и при чтении отбрасывается, при записи алгоритм должен быть обратным. Несоответствие алгоритму спецификации приводит к ошибке, заметной при достаточно больших стего-вложениях и при наличии файла-оригинала – воспроизведение файла начинается не с первой секунды, чем больше вложение, тем больше пропуск в начале воспроизведения (до 30–40 с при вложениях до 1–1,5 Мб). Содержание музыкальных кадров при этом остается неизменным, а исправление байтов №№ 6–9 в соответствии с алгоритмом спецификации (с помощью любого Hex-редактора) полностью устраняет ошибку. Выявленный недостаток является признаком первой версии FoxSecret и нехарактерен для других программ, реализующих стеганографические алгоритмы, поэтому не может быть использован в качестве признака наличия стего-контейнера (легко предположить, что подобная ошибка возможна в любом редакторе тегов).
При проведении расчетов 20 Кбайт информации, записанной в заголовках, разбивались на блоки по 250, 500 и 1000 байт и значение статистики рассчитывалось для каждого блока. Такой подход позволяет получить значения статистики на различных отрезках анализируемого файла. При анализе не учитывались различия в количестве блоков разной длины для одного и того же объема информации, что допустимо для проведения первичной обработки на основе общего характера распределения без расчета вероятностных значений.
Для блоков 1000 байт значительная часть значений статистики получена в диапазоне х2 = 0/1 (рис. 1, а), кроме того, проявляются особенности распределения официальных вложений: смещение к началу отсчета значений статистики для графических данных. При уменьшении длины блока различия текстовых и графических вложений становятся менее заметными, диапазон значений статистики расширяется (для блоков длиной 250 байт почти все результаты получены в диапазоне х2 = 0/0,15, рис. 1, б).
а) б)
Рис. 1. Статистика значений распределения х2 для официальных вложений
Особенности распределения стего показаны на рис. 2 в сравнении с суммарной статистикой официальных вложений. Для блоков длиной 1000 байт характерны значения х2 до 0,015 (рис. 2, а), более 95 % отсчетов не превышают значений х2 = 0,01. При сокращении размера блока до 250 байт аналогичным 95-процентным порогом можно считать значение 0,025 (рис. 2, б).
а) б)
Рис. 2. Сравнение статистики х2 для официальных вложений и стего
Подобный характер распределения обусловлен использованием криптографических алгоритмов, которые, как отмечено в [2], применяются совместно со стего для дополнительного шифрования и имеют близкое к равномерному распределение значений младшего бита.
Вполне логичным предположением следует считать, что использование стеганографических вложений не имеет массового характера, а наиболее вероятным будет наличие единичных файлов, передаваемых по сети или хранящихся на жестком диске компьютера. Исходя из этого предположения, был проведен анализ одного файла, в ID3 тегах которого одновременно присутствовали одно стеганографическое вложение и два официальных – текстовое и графическое. Расположение вложений в заголовке определялось программами записи автоматически. Результаты показаны на рис. 3. Правый всплеск значений получен для участка файла с записью непосредственно звуковой информации и не относящийся к рассматриваемой области тега. Предшествующий ему всплеск – область одинаковых (нулевых) байт, внесенных автоматически программой записи кадра тега. Реальные значения х2 для этих всплесков превышают значения 0,5 и на рисунке обрезаны по уровню 0,2 (для более наглядного представления остальных результатов). Такие всплески характеризуют, как правило, границы тега или его кадров. В ходе дальнейшего анализа они не учитывались, т.к. появление подобных выбросов значений не является стабильным, а алгоритм формирования этих участков файла требует отдельного рассмотрения.
а) б)
Рис. 3. Распределение значений х2 с комплексным вложением в теге
Анализ одного тега с достаточно объемными кадрами (общий размер около 205 Кбайт) блоками по 1000 байт позволяет выделить три интервала с распределением, характерным для стеганографического и официальных вложений (рис. 3, а). Для тегов с вложениями вложений по 5–8 Кбайт (размер тега 18 Кбайт) подобный анализ возможен, но в общем случае количество отсчетов может быть недостаточным для принятия решения о наличии и характере вложений (рис. 3, б).
Анализ коротких кадров целесообразно проводить блоками меньших размеров. При сокращении размеров блоков до 250 байт, общий характер распределения полученных результатов сохраняется. Для оценки статистики распределения младшего разряда необходимо проверять участок файла размером не менее 2–2,5 Кбайт.
Полученные характеристики распределения для разрешенных способов внедрения (вложения) информации могут быть использованы в качестве математической модели части пустого контейнера [4]. Примерно 10-кратные различия статистики распределений значений х2 для официальных и стеганографических вложений позволяют реализовать первичную сортировку файлов и выделение предполагаемого стего, использующего дополнительное криптографическое шифрование.
Ответственность за обеспечение безопасности информации лежит, как правило, на администраторе сети, который будет определять значения порога обнаружения (в зависимости от важности информации, уровней доступа пользователей и т.д.) и возможные меры по пресечению нарушений: удаление/перезапись подозрительных участков файлов или их сохранение для последующего детального анализа.