WWW.DISUS.RU

БЕСПЛАТНАЯ НАУЧНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 

Pages:     || 2 | 3 | 4 |
-- [ Страница 1 ] --

СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ И ИНФОРМАТИКИ

На правах рукописи

Нечта Иван Васильевич

РАЗРАБОТКА МЕТОДОВ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ ИСПОЛЬЗОВАНИЯ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ, БАЗИРУЮЩИХСЯ НА ИДЕЯХ СТЕГАНОГРАФИИ

Специальность 05.13.17 – Теоретические основы информатики

Диссертация

на соискание ученой степени
кандидат технических наук

Научный руководитель:

доктор технических наук

Фионов Андрей Николаевич

Новосибирск 2012

ОГЛАВЛЕНИЕ

Введение…………………………………………………………………………. 5

Глава 1. Метод стегоанализа текстовых данных, базирующийся
на сжатии ……………………………………………………….………….... 15

1.1. Введение …………………………………………………….………… 15

1.2. Обзор существующих методов внедрения данных
в текстовый файл.…………………………………………………………….. 17

1.3. Обзор известных методов стегоанализа текстовых данных.………. 22

1.4. Описание предлагаемого подхода и построение схемы
эксперимента …………………………………………………………………… 26

1.4.1 Описание предлагаемого подхода ………………………………. 26

1.4.2 Построение схемы стегоанализа …………………………………. 27

1.4.3 Определение параметров алгоритма стегоанализа ……………… 30

1.4.4 Поиск оптимальных параметров работы алгоритма …………… 36

1.5. Экспериментальная проверка эффективности разработанной
схемы стегоанализа ……………………………………………………………. 42

Выводы ……………………………………………………………………… 45

Глава 2. Метод стегоанализа текстовых данных, базирующийся на статистическом тесте ………………………………..……………………… 46

2.1 Обзор существующих методов стегоанализа текстовых файлов.….. 46

2.2 Построение схемы стегоанализа …….………………………………... 51

2.2.1 Описание предлагаемого подхода.. …………………………….... 51

2.2.2 Выбор статистического теста……………...……………………… 52

2.2.3 Поиск оптимальных параметров работы метода …………….….. 54

2.2.4 Подбор оптимальной схемы стегоанализа …………………..…... 57

2.3 Экспериментальная проверка эффективности
работы метода стегоанализа …..…………………………………………...….. 59

Выводы…………………………………………………………………….... 62

Глава 3. Метод стегоанализа исполняемых файлов, базирующийся
на коде Хаффмана…......…………………………………………………….… 64

3.1 Введение ……………………………………………………………….… 64

3.2 Описание и построение предлагаемого метода стегоанализа ……….. 67

3.2.1 Описание предлагаемого метода ………………………………… 67

3.2.2 Выбор архиватора ………………………………………………… 69

3.2.3 Выбор оптимального размера окна ……………………………… 72

3.2.4 Описание схемы проведения эксперимента ……………………... 74

3.3 Описание подхода повышения устойчивости
метода внедрения информации в исполняемый файл……………………..... 76

3.3.1 Описание схемы передачи секретного сообщения ……………... 76

3.3.2 Описание способа получения распределения вероятностей байт ……….…………………………………………………. 79

3.3.3 Заключение ………………………………………………………… 85

Выводы ………………………………………………………………….….. 87

Глава 4. Система внедрения цифровых водяных знаков в исходные
коды программ……………………………………………………………….. 88

4.1 Введение…………………………………………………………………. 88

4.2 Обзор существующих систем цифровых водяных знаков …………… 90

4.3 Описание предложенной схемы внедрения водяных знаков
и разработанных программ …….……………………………………………… 94

4.3.1 Описание предлагаемой схемы ………………………………….. 94

4.3.2 Описание разработанных программ …………………………….. 98

4.4 Описание результатов проведения эксперимента …………………… 103

Выводы ……………………………………….…………………………….. 106

Основные заключения и выводы ………………………………………… 107

Список литературы……………………………………………………….… 108

Публикации автора по теме диссертации ……………………………… 112

ПРИЛОЖЕНИЕ………………………………………………………………. 115

А. Программная реализация основных алгоритмов ……………………. 115

А.1. Содержимое специальных контейнеров ……………………….. 115

А.2. Распределение вероятностей байт ………………………………. 118

А.3. Исходные коды файлов программ стегоанализа………….……. 120


Введение

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

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

Цифровая стеганография получила широкое применение в сфере защиты авторских прав. В объект авторского права может быть внедрена специальная метка – отпечаток пальца (fingerprint), которая идентифицирует законного получателя. Например, в каждую продаваемую копию программы может быть внедрена метка, идентифицирующая лицензионного покупателя.
В случае обнаружения пиратской копии программы при помощи встроенной метки без труда может быть отслежен пользователь, нарушивший лицензионное соглашение. Еще одной встраиваемой меткой может быть цифровой водяной знак (watermark), идентифицирующий автора. Предположим, в фотографию внедряется специальная метка, содержащая паспортные данные автора. Затем обнаруживается постороннее лицо выдающее эту фотографию как свою собственную. В ходе судебного разбирательства с помощью извлеченного водяного знака может быть установлен истинный автор фотографии.

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

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

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

В настоящее время проводится множество конференций, по проблемам информационной безопасности. С каждым годом растет число публикаций, посвященных методам стеганографии и стегоанализа. В этом направлении науки работают многие российские и зарубежные ученые: В.Г. Грибунин, И.Н. Оков, Б.Я. Рябко, И.В. Туринцев, А.Н. Фионов, Р. Бергмар (R. Bergmar), К. Кашен (C. Cachin), М. Чапман (M. Chapman), Ц. Чень (J. Chen),
Дж. Фридрич (J. Fridrich), и др. Однако вопросам текстовой стеганографии посвящено сравнительно мало работ. Автором диссертации был проведен анализ основных отечественных и зарубежных источников за более
чем 10 последних лет. Список этих источников отражен в тексте диссертации. Основные работы, с которыми производилось сопоставление результатов диссертации, принадлежат таким специалистам как Ц. Чень
(J. Chen), Л. Хуан (L. Huang), Дж. Ю (Z. Yu).

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

Объектом исследований в предлагаемой работе являются методы
и алгоритмы стеганографии текстовых данных и программ (как особого вида текста).

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

Второй подход заключается в генерации искусственного текста.
Для получения стеготекста используются контекстно-свободные грамматики. Нетерминальные символы могут быть раскрыты по заданным правилам несколькими возможными способами. В зависимости от входного сообщения выбирается правило раскрытия. Получившийся стеготекст не содержит грамматических и орфографических ошибок. На сегодняшний день самыми популярными программами, генерирующими искусственный текст, являются Nicetext, Texto и Markov-Chain-Based. Эти программы имеют высокое соотношение размера входного сообщения к размеру генерируемого текста,
и получающийся текст максимально похож на естественный. Стоит отметить, что получившийся искусственный текст, как правило, является бессмысленным, что может быть с легкостью выявлено человеком.

Методы внедрения, основанные на семантических особенностях текста, являются трудно обнаружимыми. Замена одного слова на соответствующий ему синоним не нарушает синтаксическую структуру предложения
и не искажает смысловое содержание. Несмотря на указанную особенность, такой метод внедрения также не лишен недостатков. При замене некоторых слов возможно нарушение стиля языка. Например, во фразе “what time is it?” слово time может быть заменено на синоним duration, но это будет некорректно для английского языка. Также использование некоторых слов
в качестве синонимов может нарушать авторский стиль написания текста.
На этих фактах базируются многое методы анализа.

Устойчивость методов, генерирующих стеготекст, подобный естественному, обеспечивается заданными правилами грамматики. Отсутствие грамматических и орфографических ошибок в предложениях делает затруднительным поиск отличий искусственного текста
от естественного. Анализ осмысленности текста можно производить только
с участием человека, что не всегда возможно из-за огромного объема анализируемой информации. Наиболее эффективный метод анализа использует прогнозирование для выявления искусственной природы текста, порожденного программой Nicetext. Сначала производится анализ слов первой половины текста, и составляется прогноз каждого последующего слова из второй части текста. Если в подавляющем большинстве случаев прогноз оказывается успешным, то это означает, что мы имеем дело
с естественным текстом. Частые ошибки при прогнозировании могут свидетельствовать о наличии искусственного текста. Для программ Texto
и Markov-Chain-Based используются методы, учитывающие корреляцию слов между предложениями. Так, считается, что предложения, содержащие слова, встречающиеся только в технических текстах, не могут стоять рядом
с предложениями, содержащими слова, встречающиеся только в текстах художественной литературы.

Подобно текстовым контейнерам, современные методы стеганографии позволяют встраивать информацию в исполняемые файлы. Основным требованием, предъявляемым к таким методам, является сохранение алгоритма работы программы. Один из подходов задействует некоторую незначительную избыточность в программных файлах, которая позволяет внедрять водяной знак. Подобный подход используется в программах Stilo
и Diablo, чтобы скрыть данные непосредственно в исполняемых файлах. Общая особенность этих методов состоит в нахождении некоторого набора эквивалентных способов генерации исполняемого файла и сокрытие данных через выбор одного из них. Методы генерации кода зависят от компилятора и, в частности, от его методов выбора типа команды, планирования инструкций, размещения текста программы, выделения регистров
и расстановки адресов функций в таблицах импорта. Следует обратить внимание на то, что некоторые модификации кода могут быть применены
к уже готовому исполняемому файлу, в то время как другие – только
во время компиляции и, поэтому, требуется специально разработанный компилятор.

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

Для проведения эффективного стегоанализа вышеописанных подходов, существующие методы предполагают работу с исходными кодами программ[1]. Это требует дизассемблирования исполняемого файла,
что является достаточно трудоемкой задачей, проходящей
в полуавтоматическом режиме (с участием человека). В настоящей работе предлагается эффективный метод стегоанализа, лишенный указанного недостатка.

Задачи исследования Для достижения указанных целей с учетом изложенного состояния проблемы в рамках диссертационной работы решаются следующие задачи:

  1. Построение стегоанализа текстовых данных, порожденных
    с использованием контекстно-свободных грамматик.
  2. Построение стегоанализа текстовых данных, полученных
    с использованием метода замены синонимов.
  3. Построение стегоанализа исполняемых файлов.
  4. Разработка схемы внедрения стеганографических меток в тексты программ.

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

Результаты, выносимые на защиту

  1. Построен стегоанализ текстовых данных, порожденных
    с использованием контекстно-свободных грамматик.
  2. Построен стегоанализ текстовых данных, полученных
    с использованием метода замены синонимов.
  3. Построен стегоанализ исполняемых файлов.
  4. Разработана схема внедрения стеганографических меток в тексты программ на С\С++.

Научная новизна результатов работы:

  1. Разработан метод стегоанализа искусственного текста, порожденного для передачи секретных сообщений. Предложенный метод имеет высокую точность (не менее 99.9%) при малых размерах анализируемого контейнера (400 байт).
  2. Разработан эффективный метод обнаружения стеготекста, порожденного с помощью метода замены синонимов для внедрения скрытых сообщений.
  3. Разработан метод стегоанализа исполняемых файлов для выявления скрытых сообщений, внедренных в неиспользуемые места программы. Преимущество метода перед известными заключается в высокой эффективности при малых объемах внедрения (80 байт) и в отсутствии необходимости производить дизассемблирование кода программы.
  4. Предложена схема встраивания стеганографических меток в исходные коды программ на С\С++.

Практическая ценность полученных результатов:

  1. Для распространенной стегосистемы Texto построен эффективный метод выявления факта внедрения скрытой информации, превосходящий по эффективности ранее известные схемы.
  2. Для широко используемой стегосистемы Tyrannosaurus Lex построен эффективный метод анализа.
  3. Разработана эффективная схема стегоанализа исполняемых файлов.
  4. Предложен метод встраивания информации в исполняемые файлы, использующий предварительное кодирование встраиваемого сообщения.
  5. Построена система встраивания водяных знаков для текстов программ на C \ C++.

Реализация и внедрение результатов работы Основные результаты использованы при выполнении следующих проектов и государственных программ:

  • Проект Федеральной целевой программы «Разработка эффективных методов кодирования, передачи, защиты и хранения информации, основанных на теоретико-информационном подходе». Государственный контракт № 02.740.11.0396.
  • Проект РФФИ 09-07-00005-а «Разработка эффективных методов стеганографии и стегоанализа» (руководитель – Рябко Б. Я.).
  • Гранты для выполнения научных исследований аспирантами, магистрантами и молодыми преподавателями ФГОБУ ВПО «СибГУТИ», 2009 и 2010 гг.

Результаты работы внедрены:

  • в учебный процесс на кафедре ПМиК в программах курсов «Защита информации» (бакалавриат) и «Современные проблемы информатики» (магистратура) по направлению подготовки 230100 «Информатика
    и вычислительная техника»;
  • в ПО системы безопасности и обнаружения вторжений в сети СО РАН на базе Института вычислительных технологий СО РАН.

Апробация работы

Основные результаты данной работы докладывались и обсуждались
на следующих российских и международных конференциях:

  • Российская научно-техническая конференция «Информатика
    и проблемы телекоммуникаций» (ФГОБУ ВПО «СибГУТИ», Новосибирск, 26-28 апреля, 2009).
  • XLVII Международная научно студенческая конференция «Студент
    и научно-технический прогресс» (Новосибирск, НГУ, 11-15 апреля, 2009).
  • XII International Symposium on Problems of Redundancy (St.-Petersburg, 26-30 May, 2009).
  • XLVIII Международная научно студенческая конференция «Студент
    и научно-технический прогресс» (Новосибирск, НГУ, 10-14 апреля, 2010).
  • Международная научно-практическая конференция «Информационная безопасность 2010» (Таганрог, 22-25 июня, 2010).
  • XLIX Международная научно студенческая конференция «Студент
    и научно-технический прогресс» (Новосибирск, НГУ, 16-21 апреля, 2011).
  • Российская научно-техническая конференция «Информатика
    и проблемы телекоммуникаций» (ФГОБУ ВПО «СибГУТИ», Новосибирск, 21-22 апреля, 2011).
  • Applied Methods of Statistical Analysis. Simulations and Statistical Inference (NSTU, September 20 - 22, 2011).

Публикации По теме диссертации опубликовано 16 работ, в числе которых 7 статей в журналах и сборниках, из которых 6 входят в список ВАК.

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

Структура и объем работы Диссертация содержит 130 страниц текста и состоит из введения, четырех глав, заключения, списка литературы
и приложения. Работа содержит 23 таблицы и 49 рисунков. Список литературы включает в себя 64 источника.


Глава 1. МЕТОД СТЕГОАНАЛИЗА ТЕКСТОВЫХ ДАННЫХ, БАЗИРУЮЩИЙСЯ НА СЖАТИИ

1.1. Введение

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

Стеганография – наука о сокрытии факта передачи секретного сообщения. На рис. 1.1 представлена классическая задача стеганографии, известная в научной литературе как “проблема заключенных” [1]. Алиса
и Боб – заключенные в разных камерах, которые могут обмениваться “невинными” сообщениями. Охранник – Ева, может перехватывать любые подозрительные сообщения и читать их. Задача заключенных состоит в том, чтобы договориться о плане побега из тюрьмы, то есть создать потаенный канал связи для обмена секретными сообщениями. Если Ева заподозрит подготовку к побегу, то заключенных могут перевести в более охраняемую тюрьму. Таким образом, Алисе и Бобу не удастся сбежать.

Будем называть контейнером последовательность данных, в которую необходимо внедрить секретное сообщение. Соответственно говорят,
что контейнер пустой, если в нем нет секретного сообщения. Контейнер
с секретным сообщением называют заполненным или стегоконтейнером. Поскольку мы говорим о цифровой стеганографии, то в качестве контейнеров могут выступать компьютерные файлы различных форматов: jpg,wav, avi, exe, txt и другие.

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

 1. Схема передачи секретного сообщения Для -0

Рис. 1.1. Схема передачи секретного сообщения

Для повышения безопасности внедряемое сообщение может быть предварительно зашифровано известными криптографическими алгоритмами, например AES, Blowfish, RC6. Предполагается, что участники обмена секретными сообщениями будут заранее договариваться
об используемом алгоритме встраивания и ключе шифрования.

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

Стегоанализ – противоположное стеганографии направление науки, изучающее методы выявления факта передачи секретного сообщения.
В частности, Ева подвергает стегоанализу любые контейнеры с целью прочитать, изменить или хотя бы выявить факт передачи секретных сообщений между заключенными. Согласно принципу Керкхоффса,
Ева может заранее знать алгоритм внедрения сообщений, которым могут воспользоваться Алиса и Боб. Таким образом, устойчивость к стегоанализу обеспечивается некоторыми секретными параметрами алгоритма
(так называемый ключ). Ключ должен быть известен только Алисе и Бобу. Подробнее методы стегоанализа будут рассмотрены в разделе 1.3.

1.2. Обзор существующих методов внедрения данных в текстовый файл

Самый ранний этап развития стеганографии текстовых файлов, связывают с появлением класса методов, использующих ошибки
в предложениях для встраивания информации. К таким методам можно отнести, например, предложенный в работе [2], использующий дополнительные пробелы между словами. Один пробел соответствует передаваемому биту равному нулю, два пробела – единице. В следующем предложении “O_never__say_that__I_was__false_of_heart”[2] внедрено сообщение: “01010100”. Данный метод может широко применяться в файлах формата HTML (интернет страниц), поскольку наличие пробелов никак
не влияет на отображение страницы. В работе [2] автор утверждает,
что кроме того, существует возможность использования специальных символов вместо пробелов, не отображающихся в часто используемых текстовых редакторах.

Еще один способ внедрения информации предполагает использовать пробелы в конце строки. Например, сонет 109 У. Шекспира:

“O! never say that I was false of heart,_
Though absence seem’d my flame to qualify,_
As easy might I from myself depart_ _
As from my soul which in thy breast doth lie:_
That is my home of love: if I have ranged,_ _
Like him that travels, I return again;_ _”

содержит скрытое сообщение “001011”. Здесь однократный пробел соответствует биту “0”, двукратный– “1”.

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

Еще один метод, предложенный в работе [2], использует синтаксические ошибки при написании слов, например:

“This is the end”

“This iz the end”

Во втором предложении допущена опечатка. Наличие опечатки
в определенных словах (в частности “iz”) означает, что бит передаваемой информации равен нулю, а отсутствие – единице. Таким образом происходит передача информации в тексте. На сегодняшний день существует достаточное количество программных средств, производящих поиск грамматических ошибок в тексте. Как следствие, уязвимость класса методов, добавляющих ошибки в предложения, становится очевидной и подобные подходы встраивания скрытой информации могут быть без труда выявлены
c высокой точностью. Однако указанный класс методов внедрения рекомендуют применять для передачи коротких сообщений, например,
в чатах или интернет мессенджерах (ICQ, QIP и др.). Считается, что в таких сообщениях, как правило, могут встречаться ошибки, и это будет хорошо маскировать наличие факта внедрения.

Следующим этапом развития цифровой стеганографии было создание класса методов, использующих семантические особенности языка. К этой группе можно отнести стегосистему Tyrannosaurus Lex, описанную в работе [3], и использующую замену слов в предложении на их синонимы, например:

Tobolsk is a (0)decent little (0)city
(1)fine (1)town

Рис. 1.2. Принцип внедрения информации с использованием замены синонимов.

В зависимости от выбранного синонима кодируется передаваемое сообщение. Предложение “Tobolsk is a decent little town” содержит скрытое сообщение “01”. Данный метод требует наличия большого словаря синонимов. К недостатку подобных методов внедрения относят возможное нарушение авторского стиля написания текста. Например:

«“... and make it still better, and say nothing of the bad – belongs to you alone.”

“... and make it still better, and say nada of the bad – belongs to you alone.”

Слово “nada” является не типичным для использования некоторыми авторами, в частности, Jane Austen» [18].

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

  • Преобразование в пассивный залог

“Mary helps John.”

“John helped by Mary.”

  • Перемещение дополнения

«“The caller identified the bomber as Yussef Attala, 20, from the Balata refugee camp near Nablus.”

“The caller named the bomber as 20-year old Yussef Attala from the Balata refugee camp near Nablus.”»[4]

  • Разделение предложений

“The dog ate the bone.”

“It was the dog that ate the bone.”

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

Похожий подход рассмотрен в работе [6]. Основная идея предложенного метода внедрения заключается в следующем. Имеется специальный стеганографический переводчик текстов с некоторого языка
на английский. На рис. 1.3 указан пример работы переводчика.

 Рис. 1.3. Принцип внедрения информации с -1

Рис. 1.3. Принцип внедрения информации с использованием стегопереводчика.

Каждое предложение переводится отдельно несколькими возможными способами. В зависимости от скрываемого сообщения производится добавление одного из вариантов перевода предложения в получаемый текст. В результате, переведенный текст содержит скрытое сообщение. В работе
[6] приводится пример:

Исходный текст:

«“Der marokkanische Film “Windhorse” erzhlt die Geschichte zweier, unterschiedlichen Generationen angehrender Mnner, die durch Marokko reisen. Auf dem Weg suchen sie nach Einzigen, was ihnen wichtig ist: dem Sinn
des Lebens.”

Полученный стеготекст:

“The Moroccan film “Windhorse” tells the story of two, different generations
of belonging men, who travel by Marocco. They are looking for the only one which is important to them on the way: sense of a life.”»[6]

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

Еще одним этапом развития стеганографии было создание класса методов, генерирующих стеготекст, подобный естественному. Рассмотрим подход, предложенный в работе [7], использующий контекстно-свободные грамматики для генерации естественно-подобного текста. Допустим, заданы следующие правила грамматики:

S ABC

A She (0) | He (1)

B likes (0) | hates (1)

C milk (0) | apples (1)

В зависимости от бита внедряемого сообщения выбирается правило раскрытия нетерминального символа. Соответственно, при передаче секретного сообщения “101” получится стеготекст: “He likes apples”.
На сегодняшний день наиболее популярными стегосистемами из указанного класса являются Nicetext [8], Texto [9] и Markov-Chain-Based [10], т.к. имеют высокое соотношение размера входного сообщения к размеру генерируемого стеготекста. Считается, что чем выше это соотношение, тем эффективней метод внедрения. Рассмотрим пример стеготекста, полученного при помощи программы Texto:

“The raindrop blackly washs to the weak hall. I destroy silly floors near the usable official highway. Sometimes, caps destroy behind cosmetic lakes, unless they're untouched. Never eat familiarly while you're pointing through a plastic pen.
We weakly hug around messy sharp barns. While shoes easily dream, the cards often darken on the green dryers. Other opaque cosmetic boats will relay de.
The raindrop admiringly enjoys to the loud window. I question odd smogs near the soft huge star.”

Такие сгенерированные тексты выглядят как естественные, но являются бессмысленными (бессодержательными), что может быть с легкостью выявлено человеком.

1.3 Обзор известных методов стегоанализа текстовых файлов

В данном разделе главы мы рассмотрим обратную стеганографии задачу – стегоанализ. Целью которого является выявление факта наличия встроенного секретного сообщения в контейнере. Здесь будут рассматриваться только методы, обнаруживающие сгенерированный искусственный текст.

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

Ошибка I рода – случай, когда метод принимает пустой контейнер
(без секретного сообщения) за заполненный (с секретным сообщением).

Ошибка II рода – случай, когда заполненный контейнер принимается
за пустой.

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

Большинство методов стегоанализа текстовых данных, использующих статистические свойства контейнера, применяют один из популярных методов классификации Support Vector Machines (SVM), реализованный, например, в специальной утилите LIBSMV (доступной по адресу [11]).
На рис. 1.4 показан принцип работы метода.

На первом этапе происходит сбор статистических характеристик контейнеров и обучение SVM. На вход программе подаются два контейнера, A и B – пустой и заполненный соответственно. Производится анализ и расчет заданных статистических характеристик, соответствующих пустому
и заполненному контейнеру. На втором этапе осуществляется классификация. На вход подается подозрительный контейнер и найденные статистические характеристики. Аналогично с этапом обучения происходит сбор характеристик и определяется, к какому из контейнеров (пустому или заполненному) исследуемый ближе. При подходящем выборе статистических характеристик контейнера, данный метод классификации показывает достаточно высокую эффективность.

 Рис. 1.4. Принцип работы метода Support Vector Machines Метод, -2

Рис. 1.4. Принцип работы метода Support Vector Machines

Метод, предложенный в работе [12], использует частоту встречаемости слов и ее дисперсию в анализируемом тексте. По полученным данным
с помощью SVM классификатора определяется факт наличия стеготекста, сгенерированного программными средствами [8], [9] или [10] в контейнерах размером 5Кб и более. Сумма ошибок I и II рода не превосходят 7.05%.

Метод, предложенный в работе [13], базируется на анализе статистической зависимости слов в тексте. Такая зависимость известна для стеготекста, обычного текста. С помощью специального алгоритма производится сбор статистических характеристик подозрительного контейнера и, используя SVM классификатор, определяется наличие стеготекста, сгенерированного программными средствами [8], [9] или [10]
в контейнере. В табл. 1.1 показана эффективность работы метода.

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

Размер контейнера 5 Кб 10 Кб 20 Кб 30 Кб 40 Кб
Точность обнаружения 87.39% 95.51 % 98.50 % 99.15 % 99.57 %

Наиболее эффективным при малых размерах входных данных является метод, опубликованный в работе [14]. Здесь используется прогнозирование для выявления искусственной природы текста, порожденного программой [8]. Сначала, производится анализ слов первой части текста, и составляется прогноз каждого последующего слова из второй части. Если в подавляющем большинстве случаев прогноз оказывается успешным, то это означает,
что мы имеем дело с естественным текстом. Частые ошибки
при прогнозировании могут свидетельствовать о наличии искусственного текста. Точность обнаружения стеготекста составляет 99.61% при размере контейнера в 400 байт и более.

Таблица 1.2. Наиболее эффективные методы обнаружения искусственного текста

Метод стегоанализа Атакуемая стегосистема Размер контейнера (байт) Точность обнаружения
Meng P. и др. 2008 [14] Nicetext 400 99.61%
Chen Z. и др. 2008 [12] Texto 5000 92.95%
Chen Z. и др. 2008 [12] MCB 5000 92.95%

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

1.4 Описание предлагаемого подхода и построение схемы стегоанализа

1.4.1 Описание предлагаемого подхода

В настоящей работе предлагается новый метод, основанный
на подходе, предложенном Б. Я. Рябко [15], отличающийся от других тем, что для выявления факта наличия стеготекста используется сжатие данных. Идея подхода состоит в том, что внедряемое сообщение нарушает статистическую структуру контейнера, повышая
его энтропию. Следовательно, заполненный контейнер будет «сжиматься» хуже, чем незаполненный. В отличие от предыдущих аналогов, данный подход обладает рядом преимуществ:

  • Анализ занимает сравнительно мало времени (порядка
    0.1-0.5 с на современных персональных компьютерах).
  • Для проведения анализа не требуется словарей синонимов или правил грамматики языка, занимающих большой объем памяти.

Теперь рассмотрим основную идею предлагаемого метода
на следующем примере:

Пусть существуют контейнеры и , пустой и заполненный соответственно. Размеры контейнеров до и после сжатия архиватором следующие:

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

Таблица 1.3. Размеры контейнеров до и после сжатия

Контейнер Размер добавленной части, байт
До сжатия После сжатия
500 300
500 320

Таблица 1.4. Размер добавляемой части до и после сжатия

Исходный контейнер Добавляемый контейнер Размер, байт
До сжатия После сжатия
50 45
50 20


Pages:     || 2 | 3 | 4 |
 



<
 
2013 www.disus.ru - «Бесплатная научная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.