© Емельянов Григорий Андреевич, 2024
ISBN 978-5-0064-7782-7
Создано в интеллектуальной издательской системе Ridero
(С) Емельянов Григорий Андреевич. Все права защищены. Использование (копирование, сбор, обработка, хранение, распространение, предоставление и другие действия, и иное воспроизведение в какой бы то ни было форме) любых материалов, статей, книг, курсов, программных кодов, программ и всех содержащихся материалов (и информации) без полного указания автора и источников и/или разрешения автора запрещено.
(C) Emelyanov Grigory Andreevich. All rights reserved. Use (copying, collection, processing, storage, distribution, provision and other actions, and other reproduction in any form) of any materials, articles, books, courses, program codes, programs and all contained materials (and information) without full indication of the author and sources and/or permission of the author is prohibited.
Хочу напомнить, что все материалы данного курса созданы автором курса (за исключением материалов, по которым даны ссылки), поэтому любое их использование запрещено без полного указания автора и источников. Спасибо за понимание.
Дорогие друзья, c гордостью представляем наш курс «Стеганографические методы защиты информации». Стеганография – наука о скрытой передаче информации. Различные методы и средства стеганографии применяют специалисты спецслужб, преступники, а также все, кому важно сохранить целостность и конфиденциальность передаваемых данных. В курсе имеется хорошая теоретическая база, а также лабораторный практикум.
Вы узнаете, что представляют из себя методы стеганографии, научитесь на практике их применять, познакомитесь с большим количеством инструментов. Попробуете себя в роли реверс-инженера, разбирающего разные форматы файлов и кодировку.
Курс ставит цели:
– Повышение информированности слушателей о стеганографии и её популяризации в IT-сообществе. Участники курса узнают о том, как можно осуществлять передачу информации скрытыми способами.
– Получение практических навыков в области передачи информации по скрытым каналам.
Курс не имеет равнозначных бесплатных аналогов не только на «Stepik», но и в целом в Интернете. Помимо общеизвестных фактов о стеганографии, в курсе имеются новые взгляды, слабо описанные научным сообществом на сегодняшний день. Все разделы курса довольно исчерпывающие и структурированы свежим взглядом на данную область. Также подготовлены задания для выполнения лабораторного практикума и освоения навыков.
Курс предназначен для всех людей, интересующихся навыком скрытой передачи информации. Также он будет полезен специалистам IT-технологий, специалистам по информационной безопасности, графическим дизайнерам, – как дополнительные знания для повышения квалификации.
Начальные требования:
– Наличие компьютера или другого устройства с выходом в сеть Интернет.
– Желательно наличие операционной системы «Windows».
– Умение скачивать и устанавливать программное обеспечение на компьютер.
– Базовые знания компьютерных и сетевых технологий приветствуются.
– Навык аналитического мышления, а также опыт расследований приветствуются.
Курс рекомендуется проходить на компьютере или ноутбуке. В конце курса могут потребоваться небольшие навыки программирования и работы с командной строкой «Windows» (терминала «Linux»). Поддержка по курсу осуществляется регулярно, любой желающий может пройти курс без наличия больших знаний в области IT-технологий.
Все мы с Вами в детстве скрывали от родителей какие-то свои действия, желания, двойки в школе и т. п. Вспомните как Вы в детском возрасте придумывали с ребятами общий (неизвестный всем остальным) язык и общались на нём; или как писали на стене невидимыми чернилами. Это всё и есть стеганография – скрытая передача информации (или скрытое хранение).
А что означает скрытность? Скрытности не может не быть, она точно также вместе с нами, но её смысл заключается в том, чтобы какие-то наши намерения не были видны остальным (кому не надо). Сейчас Вы подросли и уже используете другие методы стеганографии, а именно: мимику и жесты, общие (только Вам с собеседником известные) шутки, скрытые контексты при просмотре и создании кино или книг («подводные камни»). Наверняка Вам приходилось также скрывать свои мысли и эмоции или пытаться передать их незаметно. Возможно, Вам казалось, что Вы читаете мысли своего коллеги или начальника или понимаете их с полуслов. Бывает, что Вам ещё ничего не сказали, но по мимике, настрою или внешнему виду, можете понять, о чём будет идти речь и в каком тоне…
Стеганография довольно сложная для понимания наука, она очень обширна и затрагивает самые разные сферы жизнедеятельности, существует множество научный исследований, практических реализаций, книг и работ по этой теме, и они будут дополняться с течением времени. Поэтому одна и задач курса наиболее простым способом описать все известные нам на сегодняшний методы и средства или дать указания для простого поиска информации по ним. В случае любых вопросов, ошибок или если платформа не принимает флаг, не действительны ссылки, нашли неточности, обязательно обращайтесь к автору курса.
Основы
Стеганогра́фия (от греч. στεγανός «скрытый» + γράφω «пишу»; букв. «тайнопись») – способ передачи или хранения информации с учётом сохранения в тайне самого факта такой передачи (хранения) (данный и последующий материал раздела взят с одноимённой статьи в «Википедии»). Этот термин ввёл в 1499 году аббат бенедиктинского монастыря Св. Мартина в Шпонгейме Иоганн Тритемий в своём трактате «Стеганография», зашифрованном под магическую книгу, на первый взгляд посвящённый оккультизму, но на самом деле в текст вшит другой труд, о криптографии, и прочитать его можно только если знать как (какие буквы в каком порядке читать). Есть мнение, что методы стеганографии появились раньше методов криптографии, но впоследствии были вытеснены шифрованием.
Преимущество стеганографии над чистой криптографией состоит в том, что сообщения не привлекают к себе внимания. Сообщения, факт шифрования которых не скрыт, вызывают подозрение и могут быть сами по себе уличающими в тех странах, в которых использование криптографии запрещено или ограничивается законодательством, влекущим за собой ответственность. Таким образом, криптография защищает содержание сообщения, а стеганография – сам факт наличия каких-либо скрытых посланий от обличения. Стеганографию обычно используют совместно с методами криптографии, таким образом, дополняя её.
На рисунке 1 Вы можете увидеть историю становления стеганографии и возможное развитие этой науки в ближайшем будущем.
Рисунок 1 – История и развитие стеганографии
История стеганографии
Первое упоминание о применении стеганографии встречается в трактате Геродота «История» 440 года до н. э. Демарат посылал предупреждения о готовящемся нападении на Грецию, написав на деревянном креплении восковой таблички перед нанесением воска. Другой способ заключался в том, что нужное сообщение писалось на бритой голове раба и отправлялось адресату, когда волосы отрастали, а адресат снова брил голову и читал доставленное сообщение. Существует версия, что древние шумеры одними из первых использовали стеганографию, так как было найдено множество глиняных клинописных табличек, в которых одна запись покрывалась слоем глины, а на втором слое писалась другая. Однако противники этой версии считают, что это было вовсе не попыткой скрытия информации, а всего лишь практической потребностью.
Симпатические чернила, изобретённые ещё в I веке н. э. Филоном Александрийским, продолжали использоваться как в средневековье, так и в новейшее время, например, в письмах русских революционеров из тюрем. В советское время школьники на уроках литературы изучали рассказ, как Владимир Ленин писал молоком на бумаге между строк. Строки, написанные молоком, становились видимыми при нагреве над пламенем свечи. Во время Второй мировой войны активно использовались микроточки – микроскопические фотоснимки, вклеиваемые в текст писем.
Про Древнерусские тайнописи Вы можете почитать в аналогичной статье в «Википедии».
Также существует ряд альтернативных методов сокрытия информации, применявшихся в прошлом:
– Запись на боковой стороне колоды карт, расположенных в условленном порядке (рис. 2).
– Запись внутри варёного яйца.
– «Жаргонные шифры», где слова имеют другое обусловленное значение (т. н. эзопов язык).
– Трафареты, которые, будучи положенными на текст, оставляют видимыми только значащие буквы.
– Геометрическая форма – метод, в котором отправитель старается скрыть ценную информацию, поместив её в сообщение так, чтобы важные слова расположились в нужных местах или в узлах пересечения геометрического рисунка.
– Семаграммы – секретные сообщения, в которых в качестве шифра используются различные знаки, за исключением букв и цифр.
– Узелки на нитках и т. д.
К «жаргонным шифрам» (системам, где слова имеют другое обусловленное значение) исторически относится термин «код». Брюс Шнайер называет подобные системы криптосистемами, работающими с лингвистическими единицами (например, он приводит в качестве примера слово «оцелот», которое в определённой системе может означать фразу «повернуть налево на 90 градусов», а слово «леденец» может означать «поворот направо на 90 градусов»). По его мнению, использование подобных кодов для сокрытия информации целесообразно только в особых случаях.
Рисунок 2 – Запись на боковой стороне колоды карт
Тест
В чём главное отличие криптографии от стеганографии?
Выберите один вариант из списка. Баллы за задачу: 1.
– Методы криптографии предназначены для запутывания, а методы стеганографии для шифрования.
– Методы криптографии предназначены для шифрования, а методы стеганографии для шифрования изображений.
– Ни один ответ не верен.
– Все ответы верны.
– Методы криптографии предназначены для шифрования, а методы стеганографии для сокрытия (маскировки).
Данный и последующий материал раздела взят с этой одноимённой статьи в «Википедии». В 1983 году Симмонс предложил так называемую «проблему заключенного». Есть заключённый (Боб) и охранник (Вилли). Алиса хочет передать сообщение Бобу, не будучи прерванной охранником. В этой модели делается несколько предположений: предполагается, что Алиса и Боб перед заключением в тюрьму договариваются о кодовом символе, отделяющем одну часть текста письма от другой, в которой скрыто сообщение. Вилли, с другой стороны, имеет право прочитать и внести изменения в послание.
В 1996 году на конференции «Information Hiding: First Information Workshop» была принята единая терминология «стеганографичееские модели». Для общего понимания терминологии представляем Вам их:
– Стеганографическая система (стегосистема) – объединение методов и средств, используемых для создания скрытого канала для передачи информации. При построении такой системы условились о том, что: 1) враг представляет работу стеганографической системы. Неизвестным для противника является ключ, с помощью которого можно узнать о факте существования и содержание тайного сообщения. 2) При обнаружении противником наличия скрытого сообщения он не должен смочь извлечь сообщение до тех пор, пока он не будет владеть ключом. 3) Противник не имеет технических и прочих преимуществ.
– Сообщение – общее название передаваемой скрытой информации, будь то лист с надписями молоком, голова раба или цифровой файл.
– Контейнер – любая информация, используемая для сокрытия тайного сообщения.
– Пустой контейнер – контейнер, не содержащий секретного послания.
– Заполненный контейнер (стегоконтейнер) – контейнер, содержащий секретное послание.
– Стеганографический канал (стегоканал) – канал передачи стегоконтейнера.
– Ключ (стегоключ) – секретный ключ, нужный для сокрытия стегоконтейнера. Ключи в стегосистемах бывают двух типов: закрытые (секретные) и открытые. Если стегосистема использует закрытый ключ, то он должен быть создан или до начала обмена сообщениями, или передан по защищённому каналу. Стегосистема, использующая открытый ключ, должна быть устроена таким образом, чтобы было невозможно получить из него закрытый ключ. В этом случае открытый ключ можно передавать по незащищённому каналу.
– Вложение (стеговложение, стегановложение, stego attachment) – данные, подлежащие сокрытию (как правило, файл или текст).
– Анализатор формата – программа проверки контейнера на предмет возможности его использования для стеганографии (формат, потенциальный размер вложения).
– Прекодер – программный модуль, предназначенный для преобразования скрываемого сообщения в вид, удобный для встраивания в контейнер. Как правило, на данном этапе выполняется архивирование и шифрование вложений.
– Стеганокодер – программный модуль, реализующий какой-либо стеганографический алгоритм, с учетом особенностей контейнера (преобразует вложение в стегановложение).
– Стеганодетектор – программный модуль, проверяющий, содержит ли данный контейнер стегановложение.
– Стеганодекодер – программный модуль, восстанавливающий стегановложение (без расшифровывания и/или разархивирования).
– Постдекодер – программный модуль, реализующий алгоритмы расшифровывания и/или разархивирования. После постдекодера восстанавливается исходный вид вложения.
– Дополнительные термины, предлагаемые автором статьи (оставшиеся термины, косвенно относящиеся к прямому определению сущности методов стеганографии, например «информация», «ИС», «сеть», «злоумышленник», «атака», «угроза», «риск», «НСД», «взлом», «безопасность», «канал», «связь» и пр., могут использоваться из других определений области информационной безопасности):
– Вредоносная (вирусная) стеганография (stegoware, stegomalware) – атаки, реализующие угрозы информационной безопасности с помощью методов стеганографии (скрытых каналов связи).
– Стеговредоносное ПО (stegoware, stegomalware) – вредоносное программное обеспечение, использующее стеганографию для распространения или внедрения, то есть вредоносный файл может быть скрыт внутри текстового сообщения или медиафайла.
– Стегоанализ или Стеганоанализ – наука о выявлении факта передачи скрытой информации в анализируемом сообщении. В некоторых случаях под стегоанализом понимают также извлечение скрытой информации из содержащего её сообщения и (если это необходимо) дальнейшую её дешифровку.
Смысл стеганографических методов заключается в определении принципов (на примере просмотра): Как смотреть? Куда смотреть? Чем смотреть? Через что смотреть? В какой момент времени смотреть? Откуда смотреть? и т. п. И за счёт того, что мы это знаем, а другие нет, мы можем получить секретное послание.
Безопасный обмен информацией делится на два способа:
1. Скрытое послание находится в самом передаваемом объекте (шифр, криптоконтейнер, стегоконтейнер). Наличие дешифровки возможно, безопасность упирается в стойкость объекта.
2. Скрытое послание не находится в самом передаваемом объекте, а передаваемый объект/действие/факт/наличие лишь соотносится с заранее условленными принципами (эзопов язык, мимика и жесты, семаграммы, параметрическая стеганография, хэш-стеганография). Наличие дешифровки практически исключено, безопасность упирается в сам канал передачи заранее условленных принципов и в их хранении.
В научном сообществе принято выделять стеганографию как отдельный вид науки, однако на данный момент, многие учёные не сходятся во мнении и считают её подразделом криптографии, поскольку методы стеганографии неразрывно применяют с методами криптографии. Например, как и в криптографии, в стеганографии используются методы сжатия, которые в свою очередь могут использовать алгоритмы шифрования, парольную аутентификацию и ключи системы шифрования. Место стеганографии в современной науке можно увидеть на рисунке 3.
Методов стеганографии чрезвычайно много, их можно дополнять и придумывать чуть ли не до бесконечности, в связи с этим нужна была классификация, которая бы описывала все способы, насколько это возможно. Данная классификация по сравнению с остальными является самой новой и наиболее исчерпывающей, где фактически, любой метод или средство можно окончательно идентифицировать с методом на этом изображении (по состоянию на 2024 г.). В любом случае, в будущем, методы будут дополняться и развиваться по всем направлениям (например, лингвистические, математические, параметрические, биологические, квантовые и др.) в зависимости от фантазии людей и развития нашего мира. Стеганография настолько коварна, что целиком и полностью зависит от автора идеи. Эта наука, как и многие другие науки не имеет конца исследований. Конечно, можно разделять методы и по другим признакам (например, видимый / невидимый) или в качестве основы использовать не сферы жизнедеятельности, а как раз сами методы, где сферы будут подпунктами. Также важно отметить, что зачастую, происходит смешение методов и средств, а семаграммы, голограммы, водяные знаки и др. могут использоваться как в физическом мире, так и в мире виртуальном. В то же время методы, реализуемые с помощью средств вычислительной техники, могут быть применены в других сферах. Вы видите уникальную информацию, разработанную студентом, в стенах одного из прославленных университетов г. Москвы. Автор курса является и автором данной классификации.
Рисунок 3 – Стеганография как отдельный вид науки
Как правило, на практике, говоря о стеганографии, имеют в виду именно скрытые методы передачи информации, таким образом стеганография представляет собой систему передачи информации, которая реализуется разными средствами. Также под целями стеганографии понимают скрытое хранение информации (реже). При обсуждении стеганографии было бы правильнее использовать термины не шифрование / расшифрование / дешифрование, а маскирование / размаскирование / демаскирование. Размаскирование и демаскирование отличаются тем, что демаскировка происходит несанкционированно (злоумышленником), без ключа шифрования (без гаммы, т. е. стегоанализ), а размаскировка происходит получателем информации известным ему способом (по аналогии шифрование / дешифрование). Однако для удобства слога мы будем использовать все термины, которые наиболее подходят случаю.
Официальная сторона
В России закреплено два стандарта, которые регулируют и определяют стеганографию (скрытые каналы передачи информации):
– «ГОСТ Р 53113.1—2008» «Информационная технология. Защита информационных технологий и автоматизированных систем от угроз информационной безопасности, реализуемых с использованием скрытых каналов. Часть 1. Общие положения».
– «ГОСТ Р 53113.2—2009» «Информационная технология. Защита информационных технологий и автоматизированных систем от угроз информационной безопасности, реализуемых с использованием скрытых каналов. Часть 2. Рекомендации по организации защиты информации, информационных технологий и автоматизированных систем от атак с использованием скрытых каналов» (рис. 4).
Рисунок 4 – «ГОСТ Р 53113.2—2009»
Данные стандарты можно найти в свободном доступе в Интернете, они описывают возможное использование стеганографии в злоумышленных целях и приводят меры и средства защиты от угроз, а также способы, выявляющие скрытые каналы передачи данных (стегоанализ). Основной посыл направлен на объяснения по выявлению неоднозначностей в программном обеспечении, системах, сетях, коммуникациях и т. д. Даже вредоносное программное обеспечение, которое отправляет похищенные данные злоумышленникам, также является стеганографией. Эти стандарты не описывают методы использования стеганографии в целях защиты информации. Под скрытыми каналами понимаются не только сетевые скрытые каналы, но и все способы, описанные далее по курсу, в том числе, например, шифрование послания в изображении и передача контейнера любым способом будет являться скрытым каналом передачи информации. Помимо стандартов, «ФСТЭК России» обозначила угрозу передачи данных по скрытым каналам в своём «Банке данных угроз»:
– «ФСТЭК России» «УБИ.111»: «Угроза передачи данных по скрытым каналам».
Задачи стеганографии
Здесь важно отметить, что чаще всего стеганография используется спецслужбами государств и преступниками для обеспечения скрытой связи (в т. ч. хакерами), а также в научных работах и CTF-соревнованиях. В коммерческом секторе стеганография используется крайне редко.
Задач может быть много, мы обозначим основные из них:
– Скрытая связь. Военные и разведывательные данные, а также случаи, когда криптографию применять нельзя. Связь в преступных целях (например, террористы).
– Скрытое хранение информации.
– Защита от копирования. Электронная коммерция, контроль за копированием, распространение мультимедийной информации, водяные знаки. Решает вопросы авторского права.
– Скрытая аннотация документов. Медицинские снимки, картография, мультимедийные базы данных.
– Аутентификация. Системы видеонаблюдения, электронной коммерции, электронного конфиденциального делопроизводства.
– Преодоление систем мониторинга и защиты, управления сетевыми ресурсами.
Классификация по задачам, приведённая здесь, также является довольно исчерпывающей.
Сортировка
Расположите в правильном порядке от большего к меньшему местоположение метода (зашифровка послания в изображении) в науке.
Расположите элементы списка в правильном порядке. Баллы за задачу: 1.
– Информационная
– Стеганография
– Цифровая
– Тайнопись
– Зашифровка послания в изображении
– Программное обеспечение (подмена битов)
– Компьютерная