love is
Местный
- Сообщения
- 2.927
- Реакции
- 4.580
Стеганография представляет собой искусство сокрытия информации прямо на виду. В этой статье мы рассмотрим, как использовать для этой цели инструмент командной строки
В нём меняется несколько последних битов в байте, чтобы закодировать сообщение. Особенно это полезно при работе с изображениями, где красный, зелёный и синий цвета каждого пикселя закодированы при помощи 8 бит или 1 байта от 0 до 255 в десятичной системе счисления или в двоичной от 00000000 до 11111111.
Изменение последних двух битов в полностью красном пикселе от 11111111 до 11111101 меняет значение красного от 255 до 253. Для невооруженного взгляда это отличие незаметно, при этом внутри картинки будет закодированное сообщение.
Данная диаграмма показывает четыре пиксельных изображения в цветах и двоичных значениях. Каждый блок двоичной информации представляет значение соответствующего пикселя.
Такая техника хорошо работает для мультимедийных файлов, где небольшое изменение байта на глаз не увидеть. Не так хорошо это работает для текста ASCII, где один неправильный бит полностью меняет символ. Не говоря уже о том, что скрытые при помощи метода LSB данные легко обнаружить, если искать их.
По этой причине есть множество других методов стеганографии, каждый со своими плюсами и минусами. Значительно труднее обнаружить метод под названием коэффициент дискретного косинусоидального преобразования. Здесь слегка меняется вес, то есть коэффициент волн косинуса, который используется для создания изображения в формате JPEG.
Также нужно принимать во внимание шифрование и сжатие. Шифрование данных перед их внедрением добавляет дополнительный слой безопасности, а сжатие позволяет скрыть существование лишних данных, не слишком увеличивая размер этого файла. Шифрование и сжатие могут быть включены в качестве дополнительных параметров в Steghide.
apt-get install steghide
Когда программа установлена, для внедрения данных в файл наберите следующую команду:
steghide embed -ef secretFile -cf coverFile -sf outputFile -z compressionLevel -e scheme
Аргументы могут быть следующие:
steghide embed -ef secret.txt -cf StegoCat.jpg -e none -Z
Пример работы с Steghide через терминал
Когда вы выполнили команду Steghide, будет предложено задать пароль, который позднее позволит извлечь внедрённые данные. Введите пароль дважды для подтверждения. После этого можно будет прятать данные в файлы изображения и аудио.
Сравнение оригинального изображения и изображения со встроенным текстом. Разницу на глаз не определить.
$ steghide extract -sf stegoFile -xf outputFile
После введения команды нужно будет ввести вышеуказанный пароль.
Данные извлечены из файла изображения и отображаются в окне терминала.
Смысл метода в том, что графические файлы (в частности, JPEG) начинают интерпретироваться сразу с заголовка, в то время как архивы считываются только с метки начала архива. Сама метка может располагаться внутри файла где угодно, так как, помимо обычных архивов, есть многотомные и самораспаковывающиеся.
В качестве эксперимента упакуем все программы из сегодняшнего обзора в архив ZIP и добавим этот архив к файлу Wallpaper.jpg, создав новую картинку: Wallpaper-x.jpg. Просто запустим консоль Windows и напишем:
type Wallpaper.jpg Steg.zip > wallpaper-x.jpg
На выходе получится объединенный файл wallpaper-x.jpg. Его можно просмотреть как картинку или же открыть любым архиватором, который поддерживает формат ZIP. Если изменить расширение файла на ZIP, то он откроется файловым менеджером как каталог. Можно даже обойтись без переименования, а сразу использовать архивный плагин через команду быстрой распаковки (например, {ALT}+{F9} в Total Commander). Все файлы из такой «картинки» будут извлечены без проблем.
Описанный трюк известен давно и работает также с некоторыми другими форматами файлов (как графических, так и архивов), однако наибольшую популярность получило сочетание RAR + JPEG
Интерфейс у Hallucinate прост и функционален. Требуется выбрать контейнер, указать скрываемый в нем файл и желаемую степень качества итоговой картинки. Доступны восемь вариантов. Чем сильнее огрубляется исходное изображение, тем больше в нем можно спрятать, но тем заметнее становятся артефакты. Выберем в настройках лучшее качество и проиллюстрируем эту разницу, повторив операцию с файлом BMP.
Визуально картинки слева и справа не отличаются. Однако программа Beyond Compare показывает разницу между ними в кадре по центру. Текстовый файл закодирован как изменения яркости отдельных пикселей, равномерно распределенных по всему кадру. Только в самых темных и самых светлых участках они кучкуются плотно.
При побайтном сравнении файлов эта же разница в шестнадцатеричном формате выглядит знакомо: тот же алгоритм LSB, что и у DeepSound. Графический файл или звуковой — в данном случае значения не имеет. В оба формата вносятся минимальные искажения, неразличимые без специальных методов сравнения. Обнаружить их без исходного файла (имея на руках только контейнер) довольно сложно. Никаких явных указателей на внедрение стегосообщения он не содержит. Выдает скрытый файл только частотный анализ, но хорошо работает этот метод только для обнаружения крупных «матрешек». Мелкий файл в большой картинке остается практически незаметным.
Извлекается скрытый файл буквально в два клика. Достаточно выбрать контейнер (HAL-file в терминологии автора программы), нажать Decode и указать место для сохранения файла.
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки.
. Кроме того, мы рассмотрим концепцию, чтобы лучше понимать, что происходит на заднем плане. Это простой настраиваемый инструмент, благодаря которому всего за несколько секунд можно скрывать информацию в файлах разных типов.Что такое стеганография?
В отличие от шифрования, где сразу понятно, что пришло сообщение и оно скрыто, со стеганографией никто даже не узнает о существовании сообщения внутри файла вроде изображения. Стеганография может пригодиться в ситуациях, когда отправка зашифрованных сообщений может вызвать подозрения. Например, в странах без свободы слова. Также стеганография может использоваться для водяных знаков, чтобы знать, когда файлы изображения или аудио украли.Как работает стеганография?
Есть несколько методов сокрытия данных внутри обычных файлов. Одним из наиболее широко распространённых и простых для понимания является метод под названием LSB.В нём меняется несколько последних битов в байте, чтобы закодировать сообщение. Особенно это полезно при работе с изображениями, где красный, зелёный и синий цвета каждого пикселя закодированы при помощи 8 бит или 1 байта от 0 до 255 в десятичной системе счисления или в двоичной от 00000000 до 11111111.
Изменение последних двух битов в полностью красном пикселе от 11111111 до 11111101 меняет значение красного от 255 до 253. Для невооруженного взгляда это отличие незаметно, при этом внутри картинки будет закодированное сообщение.
Данная диаграмма показывает четыре пиксельных изображения в цветах и двоичных значениях. Каждый блок двоичной информации представляет значение соответствующего пикселя.
Такая техника хорошо работает для мультимедийных файлов, где небольшое изменение байта на глаз не увидеть. Не так хорошо это работает для текста ASCII, где один неправильный бит полностью меняет символ. Не говоря уже о том, что скрытые при помощи метода LSB данные легко обнаружить, если искать их.
По этой причине есть множество других методов стеганографии, каждый со своими плюсами и минусами. Значительно труднее обнаружить метод под названием коэффициент дискретного косинусоидального преобразования. Здесь слегка меняется вес, то есть коэффициент волн косинуса, который используется для создания изображения в формате JPEG.
Эффективное использование стеганографии
Поскольку одни методы цифровой стеганографии лучше других, лучше избегать применения LSB и использовать что-то более изощрённое. Разработка собственного алгоритма стеганографии не очень сложная, если вы разбираетесь в математике и программировании. Впрочем, для изучения принципов работы стеганографии LSB подойдёт.Также нужно принимать во внимание шифрование и сжатие. Шифрование данных перед их внедрением добавляет дополнительный слой безопасности, а сжатие позволяет скрыть существование лишних данных, не слишком увеличивая размер этого файла. Шифрование и сжатие могут быть включены в качестве дополнительных параметров в Steghide.
Шаг 1. Внедрение скрытых данных в файл
Пользоваться Steghide очень просто. Для установки приложения через терминал Linux используйте команду apt.apt-get install steghide
Когда программа установлена, для внедрения данных в файл наберите следующую команду:
steghide embed -ef secretFile -cf coverFile -sf outputFile -z compressionLevel -e scheme
Аргументы могут быть следующие:
- -ef определяет путь к файлу, который вы хотите скрыть. Можно внедрить файл любого типа в другой файл, включая скрипты Python и файлы оболочек.
- -cf представляет собой файл, куда внедряются данные. Поддерживаются типы файлов BMP, JPEG, WAV и AU.
- -sf представляет собой опциональный аргумент, который определяет итоговый файл. Если его не задавать, оригинальный файл, куда осуществляется вставка данных, будет перезаписан новым файлом.
- -z определяет уровень сжатия между 1 и 9. Если вы не хотите сжимать свой файл, используйте аргумент -Z.
- -e определяет тип шифрования. Steghide поддерживает множество схем шифрования. Если этот аргумент не указан, применяется 128-битный алгоритм AES. Если вы предпочитаете не пользоваться шифрованием, наберите -e none.
steghide embed -ef secret.txt -cf StegoCat.jpg -e none -Z
Пример работы с Steghide через терминал
Когда вы выполнили команду Steghide, будет предложено задать пароль, который позднее позволит извлечь внедрённые данные. Введите пароль дважды для подтверждения. После этого можно будет прятать данные в файлы изображения и аудио.
Сравнение оригинального изображения и изображения со встроенным текстом. Разницу на глаз не определить.
Шаг 2. Извлечение скрытых данных из файла
Достать скрытые данные из файла ещё проще, чем вставить их туда. Применяется следующая команда:$ steghide extract -sf stegoFile -xf outputFile
После введения команды нужно будет ввести вышеуказанный пароль.
Данные извлечены из файла изображения и отображаются в окне терминала.
RARJPEG
Скрывать одни файлы внутри других можно и безо всяких стеганографических утилит. Конечно, это будет не аккуратное «растворение» по алгоритму LSB, а простое слияние, однако у этого известного в узких кругах метода есть и свои преимущества. Во-первых, он доступен без дополнительных инструментов. Во-вторых, позволяет легко передать любой файл, загрузив его как графический на какой-нибудь сайт (например, хостинг картинок или, чаще, имиджборд).Смысл метода в том, что графические файлы (в частности, JPEG) начинают интерпретироваться сразу с заголовка, в то время как архивы считываются только с метки начала архива. Сама метка может располагаться внутри файла где угодно, так как, помимо обычных архивов, есть многотомные и самораспаковывающиеся.
В качестве эксперимента упакуем все программы из сегодняшнего обзора в архив ZIP и добавим этот архив к файлу Wallpaper.jpg, создав новую картинку: Wallpaper-x.jpg. Просто запустим консоль Windows и напишем:
type Wallpaper.jpg Steg.zip > wallpaper-x.jpg
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки.
Дописываем ZIP к JPGНа выходе получится объединенный файл wallpaper-x.jpg. Его можно просмотреть как картинку или же открыть любым архиватором, который поддерживает формат ZIP. Если изменить расширение файла на ZIP, то он откроется файловым менеджером как каталог. Можно даже обойтись без переименования, а сразу использовать архивный плагин через команду быстрой распаковки (например, {ALT}+{F9} в Total Commander). Все файлы из такой «картинки» будут извлечены без проблем.
Описанный трюк известен давно и работает также с некоторыми другими форматами файлов (как графических, так и архивов), однако наибольшую популярность получило сочетание RAR + JPEG
Hallucinate
Последняя версия программы Hallucinate (v. 1.2) вышла в ноябре 2015 года. Эта компактная (всего 34 Кбайт) утилита написана на Java и не требует установки. В качестве контейнера она поддерживает форматы BMP и PNG, что делает ее гораздо удобнее Anubis. Картинки PNG используются сегодня куда чаще, чем BMP. Их полно даже во временных каталогах браузера, поэтому лежать одиноким и очень заметным файлом на диске такой контейнер точно не будет.
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки.
Галлюцинации со смысломИнтерфейс у Hallucinate прост и функционален. Требуется выбрать контейнер, указать скрываемый в нем файл и желаемую степень качества итоговой картинки. Доступны восемь вариантов. Чем сильнее огрубляется исходное изображение, тем больше в нем можно спрятать, но тем заметнее становятся артефакты. Выберем в настройках лучшее качество и проиллюстрируем эту разницу, повторив операцию с файлом BMP.
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки.
Видишь отличия? А они есть!Визуально картинки слева и справа не отличаются. Однако программа Beyond Compare показывает разницу между ними в кадре по центру. Текстовый файл закодирован как изменения яркости отдельных пикселей, равномерно распределенных по всему кадру. Только в самых темных и самых светлых участках они кучкуются плотно.
При побайтном сравнении файлов эта же разница в шестнадцатеричном формате выглядит знакомо: тот же алгоритм LSB, что и у DeepSound. Графический файл или звуковой — в данном случае значения не имеет. В оба формата вносятся минимальные искажения, неразличимые без специальных методов сравнения. Обнаружить их без исходного файла (имея на руках только контейнер) довольно сложно. Никаких явных указателей на внедрение стегосообщения он не содержит. Выдает скрытый файл только частотный анализ, но хорошо работает этот метод только для обнаружения крупных «матрешек». Мелкий файл в большой картинке остается практически незаметным.
Извлекается скрытый файл буквально в два клика. Достаточно выбрать контейнер (HAL-file в терминологии автора программы), нажать Decode и указать место для сохранения файла.
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки.
Раздеваем матрешку
Очень познавательно