Comments 38
Было бы неплохо, если бы автор к теоретическому описанию давно известных способов добавил практические реализации, софтварные решения (>3) и прочие кошерные вещи.
+10
В принципе, идея поста была просто ознакомить читателя с возможными вариантами.
Кстати, скажите, реализацию какого из пунктов вам хотелось бы видеть? Возможно позже распишу примеры реализации интересующих народ способов стеганографии.
Кстати, скажите, реализацию какого из пунктов вам хотелось бы видеть? Возможно позже распишу примеры реализации интересующих народ способов стеганографии.
+2
Braincopter :-)
+1
>> А попробуйте применить данный метод к MP3 файлу. Изменение всего одного бита раз в 2 и даже более байтов, приведет к неминуемой порче аудио данных.
Если тупо брать любой байт и менять младшие биты — логично, что все испортится. А если покопаться в формате и менять с умом, то lsb и в случае с mp3 прекрасно работает. И приведенная Вами в пример mp3Stego это подтверждает. А вообще как-то всё очень поверхностно расписано. И как минимум еще одна задача стеганографии — незаметная передача информации (помимо хранения).
Если тупо брать любой байт и менять младшие биты — логично, что все испортится. А если покопаться в формате и менять с умом, то lsb и в случае с mp3 прекрасно работает. И приведенная Вами в пример mp3Stego это подтверждает. А вообще как-то всё очень поверхностно расписано. И как минимум еще одна задача стеганографии — незаметная передача информации (помимо хранения).
+3
Возможно вы правы в том плане, что требуется более глубокое изучение формата… только вот мне кажется тогда это уже будет не совсем LSB. Могу только сказать, что в своё время писал эксперементальную программу, где байты менялись очень аккуратно, игнорируя заголовки и CRC, но всё это привело к порче аудио данных.
-1
Ещё можно хранить текст в Gif файлах. Делается это так:
1. Пишем в графическом редакторе текст каким-нибудь цветом (например, красный).
2. В таблице цветов Gif файла меняем красный цвет на цвет фона этого текста.
3. Сохраняем полученную картинку.
В итоге получаем Gif картинку без видимого текста, который можно прочитать только изменив определенный цвет в таблице цветов на любой другой :)
1. Пишем в графическом редакторе текст каким-нибудь цветом (например, красный).
2. В таблице цветов Gif файла меняем красный цвет на цвет фона этого текста.
3. Сохраняем полученную картинку.
В итоге получаем Gif картинку без видимого текста, который можно прочитать только изменив определенный цвет в таблице цветов на любой другой :)
+1
Для WAV, AVI, EXE (и многих подобных chunked-форматов) есть гораздо более секретный способ: хранить свои данные между чанками. Там во всех заголовках указаны смещения к полезным данным. Данные можно отодвинуть, а после заголовка положить что надо.
0
Наличие такие данных между описанными в формате файла кадрами очень легко проверить, что существенно увеличивает вероятность обнаружения вложения. Любые методы, основанные на измененном размере контейнера, как правило не являются стойкими к обнаружению. Именно поэтому LSB хорош — размер файлов не меняется.
+1
Все это конечно хорошо, но стеганография подразумевает, что доказать наличие скрытого контента должно быть невозможно, если нет соответствующего ключа. Все остальное — детские игрушки.
Но за статью спасибо, причитал с интересом!
Но за статью спасибо, причитал с интересом!
+7
Это не совсем точное определение. Стеганография это лишь скрытие самого факта существования секретных данных. В любом случае криптографию никто не отменял. Хорошей практикой считается сначала данные сжимать, потом шифровать, а уж затем прятать.
+3
Стеганография (по крайней мере компьютерная) от криптографии отличается в конечной (не всегда достижимой) цели:
В криптографии — невозможность расшифровать сообщение без ключа,
в стеганографии — невозможность обнаружить скрытый контент без ключа.
В обоих случаях важен ключ, а не алгоритм. Если для некоторого алгоритма стеганографии существует способ обнаружения скрытого контента, не имея ключа, то такой способ в серьезных условиях использовать бессмысленно. Точно так же многие алгоритмы шифрования (в криптографии), например, простой xor с паролем, бессмысленно использовать сегодня, т.к. он не выдержит даже простых атак.
Но с другой стороны, вы правы — стеганография в широком смысле подразумевает любые способы прятать информацию. На сколько они надежны — это уже другой вопрос
В криптографии — невозможность расшифровать сообщение без ключа,
в стеганографии — невозможность обнаружить скрытый контент без ключа.
В обоих случаях важен ключ, а не алгоритм. Если для некоторого алгоритма стеганографии существует способ обнаружения скрытого контента, не имея ключа, то такой способ в серьезных условиях использовать бессмысленно. Точно так же многие алгоритмы шифрования (в криптографии), например, простой xor с паролем, бессмысленно использовать сегодня, т.к. он не выдержит даже простых атак.
Но с другой стороны, вы правы — стеганография в широком смысле подразумевает любые способы прятать информацию. На сколько они надежны — это уже другой вопрос
0
Насчет MP3 файлов: где-то год назад сделал программку для записи данных в заголовки блоков на которые делятся такие файлы. Там есть неиспользуемые зарезервированные биты, правда объем записанной информации получается совсем маленький…
0
>>переименуете файл JPG в RAR, то такой RAR архив нельзя будет открыть, WinRar поругается на то, что этот архив битый
Зачем переименовывать в то, что можно открыть? Переименовывать нужно в какой-нибудь системный файл, с правдоподобным именем и запихивать в нутро ОС, куда-нибудь в самые потроха.
Зачем переименовывать в то, что можно открыть? Переименовывать нужно в какой-нибудь системный файл, с правдоподобным именем и запихивать в нутро ОС, куда-нибудь в самые потроха.
0
Вроде, можно юзать PNG: низвестные программе блоки должны просто игнорироваться. А пересобрать PNG-файл с добавкой пары своих блоков не так и сложно.
0
Спрятать еще можно в *.mkv, вроде больше подходит, нежели *.avi :)
+1
В тему — http://lifehacker.com/#!5771142/embed-a-truecrypt-volume-in-a-playable-video-file
Вкратце, запихиваем том TrueCrypt в абсолютно рабочий mp4 файле. Учитывая размеры BDRemux'ов и невозможность определить реальный бит-рейт просто посмотрев фильм на небольшом экране, этот способ весьма неплох.
Вкратце, запихиваем том TrueCrypt в абсолютно рабочий mp4 файле. Учитывая размеры BDRemux'ов и невозможность определить реальный бит-рейт просто посмотрев фильм на небольшом экране, этот способ весьма неплох.
+1
писал диплом наподобие 5 го способа.
только внедрял wav (цифровая подпись) в wav.
если не ошибаюсь автор stereoMP3 аналогичный метод использовал (метод эхо-эффекта) могу конечно ошибаться но такого результата помоему только этим методом добиться можно. давненько писал то :).
только внедрял wav (цифровая подпись) в wav.
если не ошибаюсь автор stereoMP3 аналогичный метод использовал (метод эхо-эффекта) могу конечно ошибаться но такого результата помоему только этим методом добиться можно. давненько писал то :).
0
Я когда в своё время баловал со всякими взломами форумов и прочими мелкими пакостями, дампы с паролями прятал при помощи стеганографии в порно картинках =) Т.е. как и у любого подростка у меня были глубоко в файловой системе в скрытой папке куча порно картинок, ни кто бы не догадался что в них скрываются дампы информации по пользователям.
Программа для действий называлась Steganos Security Suite, если кому интересно.
Программа для действий называлась Steganos Security Suite, если кому интересно.
0
А ещё можно использовать ntfs-потоки ☺
0
К примеру у вас есть картинка, которую надо спрятать. Вы просто переименовываете расширение файла и картинка больше не определяется системой как картинка.
Не совсем так. Многие программы в linux-системах для определения типа файла используют magic bytes вместо расширения. Например, mplayer.
0
> картинка больше не определяется системой как картинка.
Смотря какой системой…
Честно говоря, ожидал от статьи куда большего, а тут даже альтернативные потоки ntfs (как выше уже напомнил Philosoft) не упомянуты.
К примеру какое-нибудь зло в духе «хранение информации особой уличной фрагментацией файлов на винчестере» (не особо претендует на реальность) :)
Смотря какой системой…
Честно говоря, ожидал от статьи куда большего, а тут даже альтернативные потоки ntfs (как выше уже напомнил Philosoft) не упомянуты.
К примеру какое-нибудь зло в духе «хранение информации особой уличной фрагментацией файлов на винчестере» (не особо претендует на реальность) :)
0
Для видео есть замечательный плагин для VirtualDub — StegoVideo.
Вобщем-то все способы кроме последнего к заголовку топика не имеют отношения.
Вобщем-то все способы кроме последнего к заголовку топика не имеют отношения.
0
UFO just landed and posted this here
К примеру его нельзя применить к формату JPG, MP3 или AVI
Что? EXIF секцию жпега можно растянуть до бесконечности, от mp3 файла можно оставить только заголовок (id3 + 4 байта заголовок mp3) — все остальное заполнить тем же RAR архивом, или вообще записать информацию в ID3-тэг. В AVI можно сделать нерабочую звуковую дорожку.
На сколько хватит воображения — к стольким форматам можно дописать дополнительную информацию.
Есть очень мало форматов, в которые совсем ничего нельзя дописать так, что оно будет правильно восприниматься.
Что? EXIF секцию жпега можно растянуть до бесконечности, от mp3 файла можно оставить только заголовок (id3 + 4 байта заголовок mp3) — все остальное заполнить тем же RAR архивом, или вообще записать информацию в ID3-тэг. В AVI можно сделать нерабочую звуковую дорожку.
На сколько хватит воображения — к стольким форматам можно дописать дополнительную информацию.
Есть очень мало форматов, в которые совсем ничего нельзя дописать так, что оно будет правильно восприниматься.
0
UFO just landed and posted this here
Вообще правильно «не складывать яйца в одну корзину», и секретное хранить не в одном файле а распределенно по N-му количеству файлов. Тогда например коллекция mp3 может тихо в себя вмещать несколько мегабайт скрытой информации в id3 тэгах. Главное при этом знать правило по которому эта информация может быть из этой коллекции получена. Например:
id3 тэг имеет base64 сжатый блок байт, первые 4 байта — номер этого блока в одном большом блоке данных. Вычленив все интересующие нас тэги и расставив их в правильном порядке получим скрытую информацию.
Можно пойти еще дальше, вычлененная информация будет содержать правило записанное на языке известному только нам, для вычленения уже окончательной информации (возможно уже из других файлов)
таким образом в многогигабатной коллекции медиабарахла можно абсолютно незаметно спрятать несколько сот мегабайт секретов.
id3 тэг имеет base64 сжатый блок байт, первые 4 байта — номер этого блока в одном большом блоке данных. Вычленив все интересующие нас тэги и расставив их в правильном порядке получим скрытую информацию.
Можно пойти еще дальше, вычлененная информация будет содержать правило записанное на языке известному только нам, для вычленения уже окончательной информации (возможно уже из других файлов)
таким образом в многогигабатной коллекции медиабарахла можно абсолютно незаметно спрятать несколько сот мегабайт секретов.
0
Sign up to leave a comment.
Стеганография