Стеганография ( / ˌ s t ɛ ɡ ə ˈ n ɒ ɡ r ə f i / ⓘ STEG -ə- NOG -rə-fee) — это практика представления информации в другом сообщении или физическом объекте таким образом, чтобы присутствие информации не было очевидным для человеческого контроля. В компьютерном/электронном контекстекомпьютерный файл, сообщение, изображение или видео скрыты внутри другого файла, сообщения, изображения или видео. Словостеганографияпроисходит отгреческого steganographia, которое объединяет словаsteganós(στεγανός), означающие «покрытый или скрытый», и-graphia(γραφή), означающие «письмо». [1]
Первое зарегистрированное использование этого термина было в 1499 году Иоганном Тритемием в его «Стеганографии» , трактате по криптографии и стеганографии, замаскированном под книгу по магии. Как правило, скрытые сообщения представляют собой (или являются частью) что-то еще: изображения, статьи, списки покупок или какой-либо другой сопроводительный текст. Например, скрытое сообщение может быть написано невидимыми чернилами между видимыми строками частного письма. Некоторые реализации стеганографии, в которых отсутствует формальный общий секрет, являются формами безопасности за счет неясности , в то время как стеганографические схемы, зависящие от ключа, пытаются придерживаться принципа Керкхоффса . [2]
Преимущество стеганографии перед криптографией состоит в том, что предполагаемое секретное сообщение не привлекает к себе внимания как к объекту изучения. Хорошо видимые зашифрованные сообщения, независимо от того, насколько они неуязвимы, вызывают интерес и могут сами по себе быть компрометирующими в странах, где шифрование запрещено. [3]
В то время как криптография — это практика защиты только содержимого сообщения, стеганография занимается сокрытием как самого факта отправки секретного сообщения, так и его содержимого.
Стеганография включает сокрытие информации в компьютерных файлах. В цифровой стеганографии электронные коммуникации могут включать стеганографическое кодирование внутри транспортного уровня, например, файла документа, файла изображения, программы или протокола. Медиа-файлы идеально подходят для стеганографической передачи из-за их большого размера. Например, отправитель может начать с безобидного файла изображения и настроить цвет каждого сотого пикселя так, чтобы он соответствовал букве алфавита. Изменение настолько незаметное, что тот, кто его специально не ищет, вряд ли заметит изменение.
Первые зарегистрированные случаи использования стеганографии можно отнести к 440 г. до н. э. в Греции , когда Геродот упоминает два примера в своей «Истории» . [4] Гистией отправил послание своему вассалу Аристагору , обрив голову своему самому доверенному слуге, «отметив» это послание на его черепе, а затем отправив его в путь, как только его волосы отрастут, с указанием: «Когда ты пришел в Милет, прикажи Аристагору остричь твою голову и посмотри на нее». Кроме того, Демарат отправил предупреждение о предстоящем нападении на Грецию, написав его прямо на деревянной основе восковой таблички перед нанесением ее поверхности пчелиным воском. В то время восковые таблички широко использовались в качестве многоразовых поверхностей для письма, иногда используемых для стенографии .
В своей работе Polygraphiae Иоганн Тритемиус разработал так называемый «Шифр Аве-Марии», который может скрывать информацию в латинском восхвалении Бога. Например, « Auctor Sapientissimus Conseruans Angelica Deferat Nobis Charitas Potentissimi Creatoris » содержит скрытое слово VICIPEDIA . [5]
На протяжении всей истории были разработаны многочисленные методы внедрения сообщения в другую среду.
Размещение сообщения в физическом предмете широко использовалось на протяжении веков. [6] Некоторые примечательные примеры включают в себя нанесение невидимых чернил на бумагу, написание сообщения азбукой Морзе на пряже , которую носит курьер, [6] микроточки или использование музыкального шифра для сокрытия сообщений в виде музыкальных нот в нотах . [7]
В сообществах, где действуют социальные или государственные табу или цензура, люди используют культурную стеганографию — скрывают сообщения идиомами, отсылки к поп-культуре и другие сообщения, которыми они делятся публично и предполагают, что они отслеживаются. Это зависит от социального контекста, чтобы основные сообщения были видны только определенным читателям. [8] [9] Примеры:
С момента появления компьютеров были разработаны методы внедрения сообщений в цифровые носители информации. Сообщение, которое нужно скрыть, часто шифруется, а затем используется для перезаписи части гораздо большего блока зашифрованных данных или блока случайных данных (невзламываемый шифр, такой как одноразовый блокнот, генерирует зашифрованные тексты, которые без закрытого ключа выглядят совершенно случайными).
Примеры этого включают изменение пикселей в изображениях или звуковых файлах, [10] свойства цифрового текста, такие как интервал и выбор шрифта, растирание и просеивание , функции имитации , изменение эха звукового файла (эхо-стеганография). [11] и включение данных в игнорируемые разделы файла. [12]
С эпохи развития сетевых приложений исследования стеганографии перешли от стеганографии изображений к стеганографии в потоковых медиа, таких как передача голоса по интернет-протоколу (VoIP).
В 2003 году Джаннула и др. разработал метод сокрытия данных, приводящий к покадровому сжатию исходных видеосигналов. [13]
В 2005 году Диттманн и др. изучал стеганографию и водяные знаки мультимедийного контента, такого как VoIP. [14]
В 2008 году Юнфэн Хуан и Шаньюй Тан представили новый подход к сокрытию информации в речевом потоке VoIP с низкой скоростью передачи данных, а их опубликованная работа по стеганографии является первой попыткой улучшить разделение кодовой книги с помощью теории графов вместе с модуляцией индекса квантования. в потоковом мультимедиа с низкой скоростью передачи данных. [15]
В 2011 и 2012 годах Юнфэн Хуан и Шаньюй Тан разработали новые стеганографические алгоритмы, которые используют параметры кодека в качестве объекта прикрытия для реализации скрытой стеганографии VoIP в реальном времени. Их выводы были опубликованы в журнале IEEE Transactions on Information Forensics and Security . [16] [17] [18]
Академическая работа с 2012 года продемонстрировала возможности стеганографии для киберфизических систем (CPS)/ Интернета вещей (IoT). Некоторые методы стеганографии CPS/IoT частично совпадают с сетевой стеганографией, т.е. сокрытием данных в протоколах связи, используемых в CPS/IoT. Однако некоторые методы скрывают данные в компонентах CPS. Например, данные могут храниться в неиспользуемых регистрах компонентов IoT/CPS и в состояниях исполнительных механизмов IoT/CPS. [19] [20]
Выходные данные цифровой стеганографии могут быть в виде печатных документов. Сообщение, открытый текст , может быть сначала зашифровано традиционными средствами, создавая зашифрованный текст . Затем безобидный сопроводительный текст каким-то образом модифицируется, чтобы содержать зашифрованный текст, в результате чего получается стеготекст . Например, размером букв, интервалом, гарнитурой или другими характеристиками сопроводительного текста можно манипулировать, чтобы передать скрытое сообщение. Только получатель, знающий использованную технику, может восстановить сообщение, а затем расшифровать его. Фрэнсис Бэкон разработал в качестве такого метода шифр Бэкона .
Однако зашифрованный текст, полученный большинством методов цифровой стеганографии, не пригоден для печати. Традиционные цифровые методы основаны на возмущающем шуме в файле канала, чтобы скрыть сообщение, и поэтому файл канала должен быть передан получателю без дополнительного шума при передаче. Печать вносит много шума в зашифрованный текст, что обычно делает сообщение невосстановимым. Существуют методы, устраняющие это ограничение, одним из ярких примеров является художественная стеганография ASCII. [21]
Хотя это и не классическая стеганография, некоторые типы современных цветных лазерных принтеров интегрируют модель, серийный номер и временные метки на каждую распечатку в целях отслеживания с использованием точечно-матричного кода, состоящего из маленьких желтых точек, не распознаваемых невооруженным глазом — см. стеганографию принтера . подробности.
В 2015 году Штеффен Вендзель, Себастьян Зандер и др. представили таксономию 109 методов сокрытия сети. в котором обобщены основные концепции, используемые в исследованиях сетевой стеганографии. [22] В последние годы таксономия получила дальнейшее развитие в нескольких публикациях и авторах и адаптирована к новым областям, таким как стеганография CPS. [23] [24] [25]
В 1977 году Кент кратко описал потенциал скрытого канала сигнализации в общих сетевых протоколах связи, даже если трафик зашифрован (в сноске) в «Защите на основе шифрования для интерактивного взаимодействия пользователя и компьютера», Труды Пятого симпозиума по передаче данных. , сентябрь 1977 г.
В 1987 году Гирлинг впервые изучил скрытые каналы в локальной сети (LAN), определил и реализовал три очевидных скрытых канала (два канала хранения и один канал синхронизации), а его исследовательская работа под названием «Скрытые каналы в локальных сетях» была опубликована в журнале IEEE Transactions на Программная инженерия , вып. SE-13 из 2, февраль 1987 г. [26]
В 1989 году Вольф реализовал скрытые каналы в протоколах локальных сетей, например, используя зарезервированные поля, поля заполнения и неопределенные поля в протоколе TCP/IP. [27]
В 1997 году Роуленд использовал поле идентификации IP, начальный порядковый номер TCP и поля порядкового номера подтверждения в заголовках TCP/IP для построения скрытых каналов. [28]
В 2002 году Камран Ахсан сделал превосходный обзор исследований по сетевой стеганографии. [29]
В 2005 году Стивен Дж. Мердок и Стивен Льюис написали главу под названием «Встраивание скрытых каналов в TCP/IP» в книгу « Скрытие информации », опубликованную Springer. [30]
Все методы сокрытия информации, которые могут использоваться для обмена стеганограммами в телекоммуникационных сетях, можно отнести к общему термину сетевой стеганографии. Эта номенклатура была первоначально введена Кшиштофом Щиперским в 2003 году. [31] В отличие от типичных стеганографических методов, которые используют цифровые носители (изображения, аудио- и видеофайлы) для сокрытия данных, сетевая стеганография использует элементы управления протоколами связи и их внутреннюю функциональность. В результате такие методы становится труднее обнаружить и устранить. [32]
Типичные методы сетевой стеганографии включают изменение свойств одного сетевого протокола. Такая модификация может быть применена к протокольному блоку данных (PDU), [33] [34] [35] к временным отношениям между обмениваемыми PDU [36] или к обоим (гибридные методы). [37]
Более того, возможно использовать связь между двумя или более различными сетевыми протоколами для обеспечения секретной связи. Эти приложения подпадают под термин межпротокольной стеганографии. [38] Альтернативно, несколько сетевых протоколов могут использоваться одновременно для передачи скрытой информации, а так называемые протоколы управления могут быть встроены в стеганографические коммуникации для расширения их возможностей, например, для обеспечения динамической наложенной маршрутизации или переключения используемых методов сокрытия и сетевых протоколов. [39] [40]
Сетевая стеганография охватывает широкий спектр методов, которые включают, среди прочего:
В обсуждениях стеганографии обычно используется терминология, аналогичная и совместимая с традиционными технологиями радиосвязи и связи. Однако некоторые термины появляются специально в программном обеспечении и их легко спутать. Вот наиболее важные из них для цифровых стеганографических систем:
Полезная нагрузка — это данные, передаваемые скрытно. Несущая — это сигнал, поток или файл данных, скрывающий полезную нагрузку, которая отличается от канала , который обычно означает тип входных данных, например изображение JPEG. Результирующий сигнал, поток или файл данных с закодированной полезной нагрузкой иногда называют пакетом , стего -файлом или скрытым сообщением . Доля байтов, выборок или других элементов сигнала, модифицированных для кодирования полезной нагрузки, называется плотностью кодирования и обычно выражается числом от 0 до 1.
В наборе файлов подозрительными считаются файлы, которые могут содержать полезную нагрузку . Подозреваемый , выявленный с помощью определенного статистического анализа, может называться кандидатом .
Обнаружение физической стеганографии требует тщательного физического обследования, включая использование увеличения, проявителей и ультрафиолетового света . Это трудоемкий процесс с очевидными затратами ресурсов, даже в странах, где много людей нанимают шпионить за своими соотечественниками. Тем не менее, вполне возможно проверять почту определенных подозреваемых лиц или учреждений, таких как тюрьмы или лагеря для военнопленных (военнопленных).
Во время Второй мировой войны в лагерях для военнопленных давали заключенным специально обработанную бумагу , на которой можно было обнаружить невидимые чернила . В статье технического директора типографии правительства США Моррис С. Кантровитц в общих чертах описал развитие этой газеты в номере журнала Paper Trade Journal от 24 июня 1948 года. Три прототипа бумаги ( Sensicoat , Anilith и Coatalith ) использовались для изготовления открыток и канцелярских товаров, предоставляемых немецким военнопленным в США и Канаде. Если военнопленные пытались написать скрытое сообщение, специальная бумага делала его видимым. США выдали как минимум два патента , связанных с этой технологией: один Кантровитцу, патент США 2 515 232 «Бумага для обнаружения воды и композиция покрытия для нее», запатентованный 18 июля 1950 года, и более ранний патент «Бумага, чувствительная к влаге и «Производство этого», патент США № 2,445,586 , запатентованный 20 июля 1948 года. По аналогичной стратегии заключенным выдают писчую бумагу с разлиновкой водорастворимых чернил, которые вступают в контакт с невидимыми чернилами на водной основе.
В вычислительной технике обнаружение стеганографически закодированных пакетов называется стеганализом . Однако самый простой способ обнаружить измененные файлы — сравнить их с известными оригиналами. Например, чтобы обнаружить информацию, перемещающуюся через графику на веб-сайте, аналитик может сохранить известные чистые копии материалов, а затем сравнить их с текущим содержимым сайта. Различия, если перевозчик один и тот же, составляют полезную нагрузку. В общем, использование чрезвычайно высоких степеней сжатия делает стеганографию трудной, но не невозможной. Ошибки сжатия скрывают данные, но высокая степень сжатия уменьшает объем данных, доступных для хранения полезной нагрузки, повышая плотность кодирования, что облегчает обнаружение (в крайних случаях даже при случайном наблюдении).
Существует множество базовых тестов, которые можно провести, чтобы определить, существует ли секретное сообщение. Этот процесс не связан с извлечением сообщения, которое представляет собой другой процесс и отдельный шаг. Самыми основными подходами стеганализа являются визуальные или слуховые атаки, структурные атаки и статистические атаки. Эти подходы пытаются обнаружить использованные стеганографические алгоритмы. [43] Эти алгоритмы варьируются от простых до очень сложных, причем ранние алгоритмы гораздо легче обнаружить из-за присутствующих статистических аномалий. Размер скрываемого сообщения является фактором, влияющим на сложность его обнаружения. Общий размер объекта-укрытия также играет важную роль. Если объект обложки небольшой, а сообщение большое, это может исказить статистику и облегчить его обнаружение. Более крупный объект-укрытие с небольшим сообщением снижает статистику и дает ему больше шансов остаться незамеченным.
Стегоанализ, нацеленный на конкретный алгоритм, имеет гораздо больший успех, поскольку он способен выявить оставшиеся аномалии. Это связано с тем, что анализ может выполнять целенаправленный поиск для выявления известных тенденций, поскольку он знает о поведении, которое он обычно демонстрирует. При анализе изображения младшие биты многих изображений на самом деле не случайны. Сенсор камеры, особенно сенсоры нижнего уровня, не самого лучшего качества и может содержать некоторые случайные биты. На это также может повлиять сжатие файла изображения. Секретные сообщения могут быть помещены в младшие биты изображения, а затем скрыты. Инструмент стеганографии можно использовать для маскировки секретного сообщения в наименее значимых битах, но он может ввести слишком идеальную случайную область. Эта область идеальной рандомизации выделяется и может быть обнаружена путем сравнения младших значащих битов со следующими за наименее значимыми битами на изображении, которое не было сжато. [43]
Однако в целом известно множество методов, позволяющих скрывать сообщения в данных с помощью стеганографических методов. Ни одно из них по определению не является очевидным, когда пользователи используют стандартные приложения, но некоторые из них можно обнаружить с помощью специальных инструментов. Другие, однако, устойчивы к обнаружению — или, скорее, невозможно надежно отличить данные, содержащие скрытое сообщение, от данных, содержащих просто шум, — даже при проведении самого сложного анализа. Стеганография используется для сокрытия и проведения более эффективных кибератак, называемых Stegware . Термин Stegware был впервые введен в 2017 году [44] для описания любой вредоносной операции, включающей стеганографию как средство сокрытия атаки. Обнаружение стеганографии является сложной задачей и по этой причине не является адекватной защитой. Таким образом, единственный способ победить угрозу — это преобразовать данные таким образом, чтобы уничтожить любые скрытые сообщения, [45] процесс, называемый Content Threat Removal .
Некоторые современные компьютерные принтеры используют стеганографию, в том числе цветные лазерные принтеры Hewlett-Packard и Xerox . Принтеры добавляют крошечные желтые точки на каждую страницу. Едва различимые точки содержат закодированные серийные номера принтеров, а также отметки даты и времени. [46]
Чем больше сопроводительное сообщение (в двоичных данных, количество битов ) относительно скрытого сообщения, тем легче скрыть скрытое сообщение (аналогия: чем больше «стог сена», тем легче скрыть «стог сена» иголка"). Поэтому цифровые изображения , содержащие много данных, иногда используются для сокрытия сообщений в Интернете и других цифровых средствах связи. Неясно, насколько распространена такая практика на самом деле.
Например, 24-битное растровое изображение использует 8 бит для представления каждого из трех значений цвета (красного, зеленого и синего) каждого пикселя . Один только синий цвет имеет 2–8 различных уровней интенсивности. Разница между 11111111 и 11111110 в значении интенсивности синего цвета, скорее всего, будет незаметна для человеческого глаза. Следовательно, младший бит может использоваться более или менее незаметно для чего-то другого, кроме информации о цвете. Если это повторить для зеленого и красного элементов каждого пикселя, можно закодировать одну букву текста ASCII для каждых трех пикселей .
Говоря несколько более формально, цель затруднения обнаружения стеганографического кодирования состоит в том, чтобы гарантировать, что изменения несущей (исходного сигнала) из-за введения полезной нагрузки (сигнала для скрытого внедрения) визуально (а в идеале, статистически) незначительный. Изменения неотличимы от уровня шума несущей. Носителем могут быть все носители, но лучше подходят носители с большим количеством избыточной или сжимаемой информации.
С теоретической точки зрения это означает, что канал должен иметь большую пропускную способность , чем требуется «поверхностному» сигналу . Должно быть резервирование . Для цифрового изображения это может быть шум элемента изображения; для цифрового звука это может быть шум от методов записи или оборудования усиления . В общем, электроника, оцифровывающая аналоговый сигнал , страдает от нескольких источников шума, таких как тепловой шум , мерцающий шум и дробовой шум . Шум обеспечивает достаточное разнообразие захваченной цифровой информации, поэтому его можно использовать в качестве шумового прикрытия для скрытых данных. Кроме того, схемы сжатия с потерями (такие как JPEG ) всегда вносят некоторые ошибки в распакованные данные, и это также можно использовать для стеганографического использования.
Хотя стеганография и цифровые водяные знаки кажутся похожими, это не так. В стеганографии скрытое сообщение должно оставаться нетронутым, пока не достигнет места назначения. Стеганографию можно использовать для создания цифровых водяных знаков , при которых сообщение (являющееся просто идентификатором) скрыто в изображении, чтобы его источник можно было отследить или проверить (например, Coded Anti-Piracy ) или даже просто идентифицировать изображение (как в созвездие ЕВРИОН ) . В таком случае метод сокрытия сообщения (в данном случае водяного знака) должен быть надежным, чтобы предотвратить несанкционированный доступ. Однако для создания цифровых водяных знаков иногда требуется хрупкий водяной знак, который можно легко изменить, чтобы проверить, было ли изображение подделано. В этом ключевое различие между стеганографией и цифровыми водяными знаками.
В 2010 году Федеральное бюро расследований заявило, что российская служба внешней разведки использует специальное программное обеспечение для стеганографии для встраивания зашифрованных текстовых сообщений в файлы изображений для определенных коммуникаций с «незаконными агентами» (агентами без дипломатического прикрытия), находящимися за границей. [47]
23 апреля 2019 года Министерство юстиции США обнародовало обвинительное заключение, обвиняющее Сяоцина Чжэна, китайского бизнесмена и бывшего главного инженера General Electric, по 14 пунктам обвинения в сговоре с целью кражи интеллектуальной собственности и коммерческих тайн у General Electric. Чжэн якобы использовал стеганографию для передачи 20 000 документов из General Electric в компанию Tiaany Aviation Technology Co. в Нанкине, Китай, компанию, в создании которой ФБР обвиняло его при поддержке китайского правительства. [48]
Существуют методы распределенной стеганографии, [49] включая методологии, которые распределяют полезную нагрузку через несколько файлов-носителей в разных местах, чтобы затруднить обнаружение. Например, патент США 8 527 779 криптографа Уильяма Исттома ( Чак Исттом ).
Головоломки, представленные Cicada 3301, с 2012 года включают стеганографию с криптографией и другими методами решения. [50] Головоломки, связанные со стеганографией, также использовались в других играх альтернативной реальности .
Сообщения [51] [52] « Первомайской тайны» включают стеганографию и другие методы решения с 1981 года. [53]
Компьютерное вредоносное ПО можно стеганографически спрятать в цифровых изображениях, видео, аудио и различных других файлах, чтобы избежать обнаружения антивирусным программным обеспечением . Этот тип вредоносного ПО называется стеговредоносным ПО. Он может быть активирован внешним кодом, который может быть вредоносным или даже невредоносным, если используется какая-либо уязвимость в программном обеспечении, читающем файл. [54]
Стеговредоносное ПО можно удалить из определенных файлов, не зная, содержат ли они стеговредоносное ПО или нет. Это делается с помощью программного обеспечения для разоружения и реконструкции контента (CDR) и включает в себя повторную обработку всего файла или удаление его частей. [55] [56] На самом деле обнаружение стеговредоносного ПО в файле может быть трудным и может включать тестирование поведения файла в виртуальных средах или глубокий анализ файла. [54]
Стегоаналитические алгоритмы можно каталогизировать по-разному, выделяя: по имеющейся информации и по искомой цели.
Существует возможность каталогизации этих алгоритмов на основе информации, имеющейся у стегоаналитика, в виде открытых и зашифрованных сообщений. Это метод, аналогичный криптографии, однако он имеет несколько отличий:
Основная цель стеганографии — передать информацию незаметно, однако у злоумышленника могут быть две разные претензии:
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка ){{cite journal}}
: Требуется цитировать журнал |journal=
( помощь ){{cite journal}}
: Требуется цитировать журнал |journal=
( помощь )