Die Seite Gaijin.at wird durch Werbung finanziert.
Durch das Zulassen von Werbung auf der Domain Gaijin.at helfen Sie mit, weiterhin kostenlos Programme, Scripts und Online-Tools anzubieten.

Steganoanalyse bei Bitmap-Bilder

Bei der LSB-Technik (Least Significant Bit) werden die Daten im niederwertigsten Bit eines Byte gespeichert. Dadurch wird das Bild für das menschliche Auge nicht erkennbar verändert, es können aber dennoch relativ viele Daten verborgen werden. In einer etwa 1 MB großen Bilddatei können über 140 KB Daten verborgen werden. Manche Programme können auch die beiden niederwertigsten Bit zur Datenspeicherung verwenden. In diesem Fall bietet ein 1 MB großes Bild bereits Platz für etwa 280 KB Daten.

Ein Bitmap-Bild besteht aus einem Header und den eigentlichen Bilddaten. Der Header beinhaltet für die Darstellung erforderliche Informationen. Die Bilddaten bestehen aus jeweils drei Byte, die einen Bildpunkt darstellen. Dabei wird je ein Byte für die Farben Rot, Grün und Blau verwendet. Wichtig ist, dass die Bildinformationen in der Datei von unten nach oben gespeichert werden. Das Bild steht sozusagen auf dem Kopf, wodurch Änderungen am Beginn der Datei im unteren Bereich des Bildes sichtbar werden.

Sollte bei einer Analyse das Originalbild vorhanden sein, genügt ein einfacher Vergleich des Dateiinhaltes. Dabei sollten sich ab Byte 56 die Werte um einen Wert unterscheiden oder gleich sein.

Wenn das unveränderte Trägerbild nicht zur Verfügung steht, muss man sich anderer Mittel bedienen. Die einfachste Möglichkeit ist die Erhöhung der Relevanz des niederwertigsten Bit. Dazu wird bei einem Wert von 0x9D (Binär 10011101) das niederwertigste Bit (1) herangezogen und der Wert auf 0xFF (Binär 11111111) geändert. Hat das Byte eine Wert von 0xC4 (Binär 11000100), wird das Byte auf 0x00 (Binär 00000000) geändert. Somit besteht das Bild nach diesen Änderungen aus 8 Farben, die nur mehr recht ungenaue Umrisse des Originalbildes zeigen. Jener Bereich, in dem die verborgenen Daten eingefügt wurden besteht hingegen aus mehr oder weniger zufälligen Werten, wodurch sich dieser Bereich vom Rest des Bildes leicht abhebt.

Als Beispiel dient hier eine JPEG-Datei, die in das Bitmap-Format konvertiert wurde:

-
Bild mit verborgenen Daten vor der Analyse

-
Bild ohne verborgene Daten nach der Analyse

-
Bild mit verborgenen Daten (komprimiert und verschlüsselt) nach der Analyse

Hier ist im unteren Drittel des Bildes deutlich zu erkennen, dass die Strukturen des oberen Bildes mit einem Schlag unterbrochen werden. Besonders am rechten und linken Rand, sowie im Bereich des Gesichtes sind die Änderungen offensichtlich.

Bei Bildern mit klaren Konturen, wie etwa computergenerierten Grafiken ist der Unterschied zwischen den Originaldaten und dem Bereich mit den verborgenen Daten noch offensichtlicher, wie das nachfolgende Beispiel beweist.

-

Der kleine Balken im unteren Bereich des Bildes ist unübersehbar.

Die oben beschriebene Methode hat jedoch einen gravierenden Nachteil: Wird ein Bild mit sehr hoher Qualität verwendet und die Daten in einen Bereich geschrieben, der sich auch im Original farblich kaum unterscheidet, wird man ohne einen Vergleich mit der originalen Trägerdatei keinen Unterschied merken. Es ist allerdings notwendig, dass die zu verbergenden Daten vorher komprimiert bzw. verschlüsselt werden, da hier alle Gleichmäßigkeiten, die in den Originaldaten vorhanden sein können, verloren gehen.

-
Bild mit verborgenen Daten (komprimiert und verschlüsselt)

-
Bild ohne verborgene Daten nach der Analyse

-
Bild mit verborgenen Daten (komprimiert und verschlüsselt) nach der Analyse

Dieses Bild ist ein Ausschnitt eines Hintergrundbildes, wobei im oberen Bereich ein blauer Himmel und im unteren eine grüne Wiese, ohne auffällige Unterschiede in den Farben, dargestellt ist. Die verborgenen Daten nehmen etwa das untere Drittel des Bildes ein und sind praktisch nicht zu erkennen. Die rote Linie wurde nachträglich eingefügt, um das Ende der verborgenen Daten zu kennzeichnen. Die im obigen Bild erkennbare Veränderung in der Mitte des Bildes ist lediglich der Horizont.

Anders verhält es sich, wenn die Daten ohne jede Veränderung (z.B. Komprimierung und/oder Verschlüsselung) in das Bild eingearbeitet werden. In diesem Fall wären die Muster der Originaldaten im Bild leicht zu erkennen, wie das nachfolgende Bild anschaulich verdeutlicht:

-
Bild mit verborgenen Daten (nicht komprimiert und nicht verschlüsselt)

In diesem Bild nehmen die verborgenen Daten, konkret eine Windows Hilfedatei im CHM-Format, wie im vorangegangenen Bild, etwa auch das untere Drittel des Bildes ein. Das Ende der Daten ist deutlich durch den schwarzen Bereich zu erkennen, was bedeutet, dass in der Originaldatei viele gleiche Zeichen, in diesem Fall 0x00, enthalten sind.

-
Bild mit verborgenem Text (nicht komprimiert und nicht verschlüsselt)

In diesem Bild wurde ein normaler, in Englisch geschriebener Text in die Bilddatei eingebunden. Obwohl die Unterschiede hier nicht so offensichtlich sind wie im vorigen Beispiel erkennt man den betroffenen Bereich - wieder im unteren Drittel des Bildes - durch vertikale bunte und horizontale schwarze Linien.

Zusammenfassten kann man sagen, dass eine erfolgreiche Analyse nicht nur von der verwendeten Trägerdatei abhängt, sondern auch von der Art und Weise, wie die geheimen Daten in die Datei geschrieben wurden bzw. um welche Daten es sich handelt.

Beta-Bereich | Webmaster | Übersetzer | Unterstützung | Kontakt & Nutzungsbedingungen