Главная » Безопасность » Outguess: правильная стеганография в Linux
Outguess

Outguess: правильная стеганография в Linux

Еще в 440 году до н.э. тиран Гистей, зная, что его сообщения перехватывались, обрил голову своему самому доверенному рабу и вытатуировал на этой голове сообщение своему вассалу Аристагору. Времени тогда явно хватало, поскольку рабу разрешили дождаться, пока его волосы отрастут, после чего отправили его с безобидным на вид письмом в руках. По прибытии раб попросил Аристагора обрить его и прочесть реальное послание, поручавшее вассалу восстать против персов.

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

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

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

Коварный стегоанализ

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

В 2001 г. был всплеск беспокойства по этому поводу, когда на новостных сайтах типа USA Today сообщалось, что террористы обменивались изображениями, размещенными онлайн в спортивных чатах, сайтах для взрослых и досках объявлений.

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

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

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

Во время холодной войны шпионы оставляли и забирали пакеты в определенных «тайниках», согласованных с контактом. Подходило любое место, и не требовалось, чтобы шпион и связник одновременно посещали тайник.

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

  • Cicada 3301

Лет пять назад таинственная организация под названием Cicada 3301 начала публиковать в Интернета серию всё более и более затруднительных головоломок, чтобы нанять «очень умных людей» Первой головоломкой 2012 г. было изображение с небольшим текстовым файлом в конце. Текст был закодирован простым шифром Цезаря, когда каждая буква алфавита смещается на определенное количество букв (в данном случае — на четыре).

Это приводило к изображению деревянной утки с надписью «Woopst Just decoys this way. Looks like you can’t guess how to get the message out (Упс! Вот такая маскировка. Похоже, вы не угадаете, как выудить сообщение)», Сметливые крипто-ботаники всего мира объединились в коллективного гения и поняли, что означают слова «guess’ и «out»: в изображении скрыто сообщение с помощью Outguess.

Outguess Duck
Outguess: Зашифрованное

Решение этой головоломки привело к появлению другой, на странице Reddit, основанной на цифрах майя. Поскольку для перехода к следующей головоломке надо решить предыдущую, лишь горстка людей дерзает утверждать, что они решили задачи Cicada 3301: но их заявления трудно проверить, поскольку решения были опубликованы.

Мы практически ничего не знаем о том. кто такие Cicada 3301 или почему они пытаются нанять одаренных людей. Задачи в последующие годы становились всё сложнее, включая QR-коды на фонарных столбах, расположенный на протяжении от Польши до Гавайев, а также заказные сайты и записанные телефонные сообщения.

Около года назад головоломки прекратились, но те, кто захочет увидеть старые задачи, могут посетить cicada3301.

TAILS и Outguess

Для этой инструкции была выбрана Outguess — отличная утилита командной строки Нильса Провоса, инструмент стеганографии. Прежде всего потому, что она доступна для установки из репозиториев Ubuntu/Debian; ну и очень проста в использовании.

Хотя этот инструмент какое-то время не обновлялся, будущее у него есть: он позволяет скрыть два сообщения внутри файла-контейнера с отдельными паролями, работая аналогично функции правдоподобного отрицания в таких программах шифрования, как VeraCrypt. Если когда-либо найдется способ обнаружить стеганографию в ваших файлах, вы можете назвать ложный пароль, чтобы открыть заранее подготовленную поддельную информацию.

Одним из способов обнаружения стеганографии является анализ жесткого диска на наличие Outguess или проверка интернет-истории, чтобы узнать, загрузили ли вы его. По этой причине мы рекомендуем для данного проекта использовать операционную систему TAILS.

TAILS загружается целиком в ОЗУ, поэтому все следы активности теряются через несколько минут после выключения компьютера, в том числе файлы, которые вы использовали, и программа Outguess.

Другим преимуществом TAILS является то, что он маршрутизирует все соединения через сеть Тог. Это делает практически невозможным кому-то отслеживать ваши соединения, чтобы сообщить, что вы скачали TAILS, или куда вы загрузили свой файл-контейнер со скрытым сообщением.

Как пользоваться Outguess

Вы оба также договариваетесь применять Live DVD для установки Outguess и кодирования/декодирования файлов, чтобы обеспечить на ваших машинах отсутствие следов инструмента.

Вы решите использовать QR-код для хранения GPS-координат как реального местоположения набора DVD, так и поддельного, поскольку их легко сканировать в телефон и открыть в таких приложениях, как Google Maps.

Когда стего-файл будет подготовлен, ваш друг сможет получить его в любой момент, чтобы выяснить, где спрятан фильм Билла и Теда.

Стеганография дампа

Хотя использование Outguess в live-версии Linux, скажем, такой как TAILS, приведет к удалению всех следов инструментов и файлов, с которыми вы работали, исходные файлы секретов и контейнеров не удалятся. В идеале надо создавать их тоже в live-системе; в противном случае, закончив, примените команду shred ко всем соответствующим данным.

Важный момент; используете ли вы изображение, звуковой файл или видео, обязательно запишите его сами. Если копия исходного «необработанного» файла доступна онлайн, ее можно сравнить с вашим, и применение стеганографии будет обнаружено. Решив загрузить серию фотографий одного и того же предмета, например, антикварного шкафа, помните, что все они должны быть примерно одного размера,

При согласовании пароля с вашими контактами разработайте систему, по которой они смогут узнать, где найти файлы-контейнеры. Например, можно каждую неделю публиковать в оговоренное время определенное объявление, или указать определенный номер телефона рядом с каждым изображением, содержащим скрытые файлы,

Многие сайты сжимают или иным образом изменяют медиафайлы после загрузки. Попробуйте найти такой, который позволяет загружать файлы без изменений, или разместите ссылку на загрузку оригинала.

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

Установка Outguess

  1. Загрузите выбранную вами ОС (в нашем случае идеальна TAILS) и откройте терминал.
  2. Запустите sudo apt-get update, а затем выполните sudo apt-get Install outguess.
  3. Пока идут обновление и установка, займитесь перемещением файла внешнего контейнера, а также реального и поддельного файлов в домашнюю папку.

Не бойтесь называть эти файлы вполне явно, типа ‘real'» и «fake «, поскольку Outguess не хранит исходные имена файлов.

Кодирование файлов с Outguess

Предположим, контейнерной файл называется cabinet jpg. а реальный и поддельный файлы называются real.jpg и fake.jpg и закодированы с паролями «narly» и “bogus» соответственно. Выходной файл называется cabinet1.jpg. В этом случае команда для сокрытия файлов, будет выглядеть так: outguess -k «bogus».

-d fake.png -Е -К “narly" -D real.png cabinet.jpg cabinet1. jpg

При создании собственных стего можно свободно изменить любое из этих значений.

Декодирование файлов с Outguess

Как только ваши файлы будут загружены, ваш контакт должен снова повторить шаг 1, затем загрузить стего-файл. Если он действует под контролем или нажимом нежелательных лиц, то может запустить эту команду с ложным паролем, чтобы открыть фальшивый файл

decodedjpg: outguess-k "bogus" -г cabinet! Jpg decoded, jpg

В противном случае можно открыть реальный файл таким образом:

outguess -k "narly" -е-г cabinetl. jpg decodedjpg

Аутентификация сообщения

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

Поэтому рассмотрим применение утилиты командной строки GPG для цифровой подписи всех отправляемых сообщений. Эта утилита традиционно используется для шифрования данных — файлы закодированы с помощью открытого, или публичного, ключа, который вы предоставляете всем, и декодируются отдельным закрытым, или приватным, ключом, который никогда не покидает ваш компьютер.

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

Подробную инструкцию по использованию GPG, предустановленного в Linux, можно найти на сайте. Любая попытка изменить содержимое файла приведет к «поддельной» подписи.

Всякий раз, когда вы велите GPG подписать файл, создается новый файл с расширением .asc. который затем можно спрятать внутри файла контейнера с помощью Outguess Это работает для всех типов файлов.

Когда ваш контакт получит подписанный файл .asc, попросите его запустить команду:

gpg --output filename .jpg -decrypt filename jpg asc

Где filename.ipg.asc — извлеченный файл.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *