Computergestützte Steganographie
Computergestützte Steganographie bezeichnet Verfahren, die mithilfe steganographischer Techniken Daten in durch einen Computer zugänglichen Trägerdaten verbergen. Es wird dabei das Ziel verfolgt, die Vertraulichkeit zu sichern. Dies schließt unter anderem Konzepte wie glaubhafte Abstreitbarkeit ein.
Für die Trägerauswahl ist es nötig, dass in diesen Daten Rauschen existiert, d. h. natürlich vorhandene Variationen in Daten. In manchen Daten wird mehr Rauschen toleriert als in anderen. Beispiele für Trägerdaten, die computergestützt steganographisch verändert werden, sind
Bild- und Audiodaten weisen einen vergleichsweise hohen tolerablen Rauschanteil auf. Eine geschickte Veränderung des Rauschens fällt nicht auf und ermöglicht somit das Etablieren eines unterschwelligen Kommunikationskanals. Da es möglich ist, mit kryptographischen Methoden beliebige Daten in eine Form zu transformieren, deren Bitverteilung einem weißen Rauschen gleicht (Whitening), wird in der Regel natürlich vorkommendes weißes Rauschen ersetzt mit dem verschlüsselten Chiffretext.
Modifikation einer Bilddatei
Steganographie auf Bilddaten ist verhältnismäßig einfach, da das menschliche Auge gegenüber Bildrauschen erheblich unempfindlicher ist als z. B. das Ohr gegenüber Audiorauschen. Ein Foto kann stark beeinträchtigt werden, bevor die Veränderung als Störung wahrgenommen wird.
Es existieren Bildformate mit indizierten Farben, d. h. sie sind palettenbasiert (z. B. GIF, PCX). Da sich bei diesen Paletten auch gleiche Farbtöne wiederholen lassen, kann man leicht ein Bild aus unterschiedlich indizierten Farben generieren, das nach außen einfarbig erscheint.
Auf digital vorliegendes Trägerbildmaterial anwendbare Steganograpie-Verfahren sind unter anderem
- Überschreiben der niederwertigsten Bits durch das zu versteckende Signal (LSB-Verfahren).
- Addition reproduzierbarer Pseudo-Zufallssequenzen mit kleiner Amplitude, die vorher mit der zu versteckenden Information moduliert wird (vgl. CDMA-Technik).
- Quantisierung der Pixel des Trägerbilds, beispielsweise Runden der Farbwerte entsprechend dem einzubettenden Bitwert (QIM, Quantisierungs-Index-Modulation).
- Verstecken der Information im Frequenzbereich nach einer Frequenztransformation.
Insbesondere einfache Verfahren erzeugen modifizierte Träger, deren steganographische Kontaminierung leicht durch steganalytische Verfahren gezeigt werden kann, beispielsweise mittels Detektion durch statistische Verfahren. Auch sind die meisten Verfahren nicht robust gegenüber nachträglich hinzugefügtem Rauschen, Kompression oder Rotation und Skalierung des Steganogramms.
Veranschaulichung der Steganographie an einem einfachen Beispiel
Es soll eine geheime Nachricht von Alice an Bob steganographisch in einem Bild übermittelt werden. Alice und Bob haben bereits auf einem sicheren Kommunikationskanal ein geheimes Passwort ausgetauscht. Als Trägermedium wählt Alice nun ein Bild aus, in das sie unter Verwendung des Passwortes die geheime Botschaft integriert.
Geheime Botschaft: G E H E I M N I S Passwort: A L I C E
Sowohl Alice als auch Bob kennen den Algorithmus, wie die Nachricht in das Bild eingebettet wird:
Bei dem Bild handelt es sich um ein RGB-Bild, bei dem pro Pixel für jeden Farbkanal 8 Bit und dementsprechend insgesamt 24 Bit pro Pixel vorhanden sind. Die Pixel im Bild werden zunächst von links oben nach rechts unten zeilenweise durchnummeriert. Dabei wird eine Zahlenreihe von 1 bis 26 periodisch verwendet. Diese Zahlenreihe lässt sich direkt auf die 26 Buchstaben des Alphabets abbilden.
Zum Einbetten der geheimen Botschaft werden nur die Pixel verwendet, deren Nummer einem der Buchstaben des Passworts entsprechen, also nur die Pixel mit den Nummern 1 (A), 3 (C), 5 (E), 9 (I) oder 12 (L). Diese Selektion ignoriert Buchstabendopplungen und die Reihenfolge innerhalb des Passworts.
Die geheime Botschaft wird eingebettet, indem von den RGB-Farbwerten der so selektierten Pixel die letzten beiden Bits pro Farbkanal durch die Buchstabenzahl ersetzt werden, die sich aus der geheimen Botschaft ergibt. Um beispielsweise den ersten Buchstaben einzubetten (G), wird das erste selektierte Pixel (Pixel 1) verwendet. G ist der siebte Buchstabe des Alphabets. 7 (dezimal) entspricht 111 (binär) bzw., da aufgrund der drei Farbkanäle insgesamt 3 × 2 Bit benötigt werden, 000111. Folgende Darstellung visualisiert das Prinzip (X steht dabei für die ursprüngliche Bitbelegung des Pixels).
Vor dem Einbetten: XXXX XXXX XXXX XXXX XXXX XXXX Nach dem Einbetten: XXXX XX00 XXXX XX01 XXXX XX11
Diese Ersetzung führt Alice für jeden Buchstaben der geheimen Botschaft durch.
Pixel-Nummer | 1 | 3 | 5 | 9 | 12 | 27 (26+1) | 29 (26+3) | 31 (26+5) | 35 (26+9) |
---|---|---|---|---|---|---|---|---|---|
Botschaft | G | E | H | E | I | M | N | I | S |
Position im Alphabet | 7 | 5 | 8 | 5 | 9 | 13 | 14 | 9 | 19 |
Position binär (aufgefüllt) | 000111 | 000101 | 001000 | 000101 | 001001 | 001101 | 001110 | 001001 | 010011 |
roter Farbwert nach der Kodierung | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX00 | XXXX XX01 |
grüner Farbwert nach der Kodierung | XXXX XX01 | XXXX XX01 | XXXX XX10 | XXXX XX01 | XXXX XX10 | XXXX XX11 | XXXX XX11 | XXXX XX10 | XXXX XX00 |
blauer Farbwert nach der Kodierung | XXXX XX11 | XXXX XX01 | XXXX XX00 | XXXX XX01 | XXXX XX01 | XXXX XX01 | XXXX XX10 | XXXX XX01 | XXXX XX11 |
Damit Bob die geheime Nachricht lesen kann, selektiert er wie Alice die nachrichttragenden Pixel. Aus deren Farbwerten entnimmt er die beiden niederwertigsten Bits und setzt sie zu den 6-Bit-Gruppen zusammen, die je einen Buchstaben der geheimen Botschaft repräsentieren.
Bewertung des Ansatzes
Die Veränderung jedes veränderten Pixels im Ergebnisbild beträgt pro Farbkanal höchstens 4/256 = 1,56 %, im Mittel 0,78 %. Da nur ausgewählte Pixel verändert wurden, ist es unwahrscheinlich, dass eine solche Veränderung durch Menschen wahrgenommen werden kann.
Nachteilig an diesem steganographischen Ansatz ist, dass die niederwertigsten Bits der veränderten Pixel eine deutlich andere statistische Verteilung haben als eine natürliche Verteilung, die bei etwa gleich vielen Einsen und Nullen liegt. So ist das höchstwertigste Bit der binären Buchstabenrepräsentation immer Null und das zweithöchstwertige nahezu immer Null, wie man im Beispiel gut sehen kann. Bei hinreichend langen Botschaften und genügend kleinen Bildern ist dieser Unterschied signifikant und somit über statistische Mittel feststellbar.
Weiterhin bettet der Ansatz in bestimmte Pixel ein, sodass das Beschneiden des Bildes an der oberen, linken oder rechten Kante das Auslesen unmöglich machen. Eine verlustbehaftete Kompression wie JPEG überlebt der Ansatz ebenso nicht, da in die niederwertigsten Bits eingebettet wird, deren Wert durch die Quantisierung bei der Kompression in der Regel verändert wird.
Es lässt sich also festhalten, dass die Wahrnehmbarkeitsschwelle mit hoher Wahrscheinlichkeit nur gegenüber Menschen unterschritten wird, aber gegenüber schon trivialen steganalytischen Verfahren nicht gewährleistet sein dürfte. Der Ansatz ist nicht robust.
Bezüglich der Verschlüsselung des Klartextes mit einem Passwort im obigen Beispiel muss unterstrichen werden, dass es sich hierbei in mehrfacher Hinsicht nicht um ein sicheres Verfahren handelt:
Zum einen ließe sich die geheime Botschaft z. B. mit den (falschen) Passwörtern LICEA oder AAALLICEEEE ebenso entschlüsseln wie mit dem korrekten Passwort ALICE, da alle drei Passwörter aus denselben Buchstaben bestehen.
Selbst mit einem Passwort, welches neben den korrekten auch falsche Buchstaben enthält, etwa MALICE oder CALIXEE, ließen sich die ersten n Buchstaben des Klartextes rekonstruieren, wobei n für die Anzahl der Buchstaben steht, die im korrekten Passwort enthalten sind und im Alphabet vor dem ersten Buchstaben stehen, welcher nicht Bestandteil des korrekten Passwortes ist. Mit den beiden falschen Passwörtern MALICE und CALIXEE ließe sich im obigen Beispiel daher jeweils die Buchstabenfolge GEHEI- rekonstruieren. Von diesem Punkt aus könnte ein Angreifer gezielte Versuche unternehmen, die Zusammensetzung des richtigen Passworts zu ermitteln.
Darüber hinaus hat die Verwendung eines unsicheren Passwortes (wie ALICE), welches nur wenige unterschiedliche Buchstaben des Alphabets enthält, zur Folge, dass die Veränderungen an den Daten mit auffälliger Periodizität auftreten und sich somit mithilfe statistischer Verfahren mit höherer Wahrscheinlichkeit feststellen lassen; jedenfalls dann, wenn die geheime Botschaft eine gewisse Länge erreicht.
Beinhaltet das Passwort hingegen besonders viele – im Extremfall sämtliche – unterschiedliche Buchstaben des Alphabets, also sowohl den ersten als auch den zweiten bis hin zum 26. Buchstaben, werden entsprechend auch in jedem einzelnen Pixel des Bildes Teile der geheimen Botschaft versteckt. Dasselbe Ergebnis hätte man erhalten, wenn man auf die Verwendung eines Passwortes von Anfang an verzichtet hätte. Zudem könnte ein Angreifer nunmehr jede willkürliche Folge sämtlicher Buchstaben des Alphabets verwenden, um die geheime Botschaft zu entschlüsseln. Die Verwendung eines vermeintlich besonders sicheren Passwortes würde sich hier somit insgesamt sogar negativ auf die Sicherheit auswirken.
Erlangt der Angreifer von der geheimen Botschaft Kenntnis und liegt ihm das manipulierte Bild vor, könnte er die Buchstaben rekonstruieren, aus denen das Passwort besteht.
Liegt dem Angreifer neben dem manipulierten auch das Originalbild vor, könnte er durch eine Gegenüberstellung beider Bilder in einem Zug sowohl die geheime Botschaft entschlüsseln als auch die Buchstaben ermitteln, aus denen sich das Passwort zusammensetzt.
Modifikation einer Audio-Datei
Da Audiodaten aufgrund ihrer Allgegenwart unauffällig und unverdächtig sind, bieten sie sich besonders als Übermittler von Nachrichten an. Eine zu versteckende Nachricht wird beispielsweise unter Verwendung von Spreizcodes (bspw. DSSS) in das Audiosignal einkodiert, durch das die Veränderung im Hintergrundrauschen verborgen sind. Das Signal-Rausch-Verhältnis bleibt bestehen.
Die so versteckte Nachricht kann unter Kenntnis des spezifischen Spreizcodes durch Korrelation aus der Audio-Datei wiedergewonnen werden. Ist der Spreizcode nicht bekannt, kann gewöhnlich weder die Existenz einer Einbettung festgestellt noch die versteckte Information gewonnen werden. Das zusätzlich eingebrachte Signal lässt sich ohne Kenntnis des Spreizcodes von einem zufälligen, in der Regel vorhandenen und vom Gehör tolerierten Hintergrundrauschen nicht unterscheiden.
Als weiteres Beispiel für Audiosteganographie ist das schlichte LSB-Ersetzungsverfahren. Dies findet im Zeitbereich Anwendung. Es wird dabei von Audiodaten in Form von einzelnen Abtastwerten, welche typischerweise im PCM-Format vorliegen, ausgegangen. Die niederwertigsten Datenbits (least significant bit, LSB) werden durch die Bits einer geheimen Nachricht ersetzt.[1] Dieses Verfahren ist nicht störsicher: Bereits geringe Änderungen am Format der Daten, beispielsweise eine Änderung der Abtastrate, führen zum Verlust der versteckten Nachricht. Das Verfahren übersteht keine verlustbehaftete Kompression wie MP3 oder Ogg Vorbis.
Modifikation der Clusterfragmentierung eines Dateisystems
Es ist möglich, Daten in der Fragmentierung von Dateien in einem Dateisystem wie FAT32 zu verbergen.[2] Dabei wird ausgenutzt, dass eine in Cluster unterteilte Datei beim Speichern auf den Datenträger, falls nicht ein genügend großer Bereich zum Speichern am Stück vorhanden ist, üblicherweise untergliedert und an verschiedenen, nicht-aufeinanderfolgenden (logischen) Orten gespeichert wird. Man manipuliert die Clustergröße und -anzahl so, dass sich logische Zustände ergeben, die auf binäre Einsen und Nullen abgebildet werden.
Steganographische Verfahren dieser Art haben den Nachteil, nicht sehr robust zu sein. Durch Defragmentierung oder auch schon Umkopieren geht die Fragmentierung verloren. Zudem ist eine vergleichsweise starke Fragmentierung auf wenig genutzten Datenträgern unwahrscheinlich und damit ein inhärentes Problem für die glaubhafte Abstreitbarkeit.
Siehe auch
- Spreu-und-Weizen-Algorithmus (Chaffing and Winnowing)
Weblinks
Steganographie
- Erwin Schwendike: Steganographie – Beispiele mit Bild- und Audio-Datei (Windows)
- Vergleich von 18 Steganographie-Programmen auf Heise Security
Steganographie-Software
- Steghide (Open Source, englisch)
- Outguess – Programm zum versteckten Einbetten von Informationen in Bilddateien (englisch)
- TechWhoop (Freie Steganography Software für Windows, englisch)
- VSL: Virtual Steganographic Laboratory (Bilddateien, Open Source, englisch)
Einzelnachweise
- ↑ Fabien Petitcolas, Stefan Katzenbeisser: Information Hiding Techniques for Steganography and Digital Watermarking. Artech House, Boston, Mass. 2000, ISBN 978-1-58053-035-4
- ↑ Steganografie durch gezielte Festplatten-Fragmentierung. heise security, 26. April 2011; abgerufen am 26. April 2011
Auf dieser Seite verwendete Medien
Autor/Urheber: Der ursprünglich hochladende Benutzer war Cyp in der Wikipedia auf Englisch, Lizenz: CC BY-SA 3.0
Photograph of tree, contains hidden image File:StenographyRecovered.png, made by en:User:Cyp
Autor/Urheber: Der ursprünglich hochladende Benutzer war Cyp in der Wikipedia auf Englisch, Lizenz: CC BY-SA 3.0
Image which was extracted from File:StenographyOriginal.png. This type of steganography can be extracted using convert tool from ImageMagick: convert <<input file>> -evaluate And 0x030303 -evaluate LeftShift 5 <<output file>>