В русскоязычном интернете почти не встречается статей посвященных алгоритмам и кухне стегоанализа или стеганоанализа (steganalysis). Восполним это пробел. Стегоанализ - это противодействие стеганографии, как криптоанализ - это противодействие криптографии. Основная цель стеганографии - скрыть факт передачи данных. Следовательно, основная цель стегоанализа - обнаружить факт сокрытия передачи данных.
Рассмотрим метод обнаружения последовательного встраивания в LSB на примере изображения формата BMP.
Бытует мнение, что Указатели в LSB изображений являются случайными. На самом деле это не так! Хотя человеческий глаз и не заметит изменений изображения при изменении последнего бита, статистические параметры изображения будут изменены. Перед сокрытием данные обычно архивируются (для уменьшения объема) или шифруются (для обеспечения дополнительной стойкости сообщения при попадании в чужие руки). Это делает биты данных очень близкими к случайным. Последовательное встраивание такой информации заменит LSB изображения случайными битами. И это можно обнаружить!
Для примера возьмем одну цветовую компоненту полноцветного изображения BMP и на ней покажем процесс отыскания встраивания. Яркость цветовой компоненты может принимать значения от 0 до 255. В двоичной системе исчисления - от 0000 0000 до 1111 1111.
Рассмотрим пары:
0000 0000<->0000 0001;
0000 0010<->0000 0011;
...
1111 1100<->1111 1101;
1111 1110<->1111 1111.
Данные числа различаются между собою только в LSB (выделены жирным). Таких пар для цветовой компоненты BMP изображения: 256/2=128
В случае стеганографического встраивания т.е. замены LSB на случайную последовательность, количество пикселей в парах выравняется. Гистограмма станет ступеньками (по два соседних значения яркости см.рис.)
На рисунке синим цветом обозначена гистограмма изображения без встраивания, а красным - гистограмма того же изображения после встраивания заархивированных данных вместо последнего слоя. Сравнение двух гистограмм и дает возможность стегоанализа последовательно скрываемых бит.
На рисунке синим цветом обозначена гистограмма изображения без встраивания, а красным - гистограмма того же изображения после встраивания заархивированных данных вместо последнего слоя. Сравнение двух гистограмм и дает возможность стегоанализа последовательно скрываемых бит.
Т.е. если я правильно понимаю - это атака с известным контейнером и здесь действительно достаточно чётко видны различия в статистике. Однако какие критерии применять, в случае если контейнер неизвестен? Если взять гистограмму для "заряженного" изображения, то она будет выглядеть достаточно похоже с гистограммой исходного изображения и определить "на глазок" есть ли стеговставка на мой взгляд - невозможно.
ОтветитьУдалитьОписанный гистограммный метод и метод с известным контейнером - это разные методы. Последовательное встраивание сделает из любой гистограммы подобную той, что обозначена красным цветом. Различить какая это гистограмма может помочь статистический критерий Хи-квадрат (Пирсона).
ОтветитьУдалитьМетод не сработает, если при встраивании подчищать за собой статистические следы. Например, для каждого измененного бита с 0 на 1 менять в неиспользуемых окрестностях бит с 1 на 0.
ОтветитьУдалитьТогда можно составить гистограмму по отдельным блоками данных, и там опять будет это закономерность.
Удалить