G06 Steganographie Analyse

Die Steganographie ist ein scheinbar perfektes Verfahren, geheime Nachrichten vor den Augen der Unwissenden zu verstecken und geheim zu halten. Leider kommt in vielen Fällen wieder mein Spruch zur Anwendung: gut gedacht bedeutet nicht gut gemacht.

Mit dem hier vorgestellten Steganographie Analyse Programm könnt Ihr in vielen Fällen sehr schnell erkennen, ob sich in einer Bild-Datei eine zusätzliche, versteckte Nachricht befindet.

Dieses Programm ist nicht von mir programmiert worden, sondern von Bastien Faure. Seine Webseite http://bastienfaure.fr/ scheint nicht mehr aktiv zu sein, aber sein Github-Archiv https://github.com/beobast/simple-steganalysis-suite  besteht weiterhin. In meinem Github-Archiv habe ich eine unveränderte Kopie des Programms inklusive der benötigten Archive gespeichert.

Auf dieser Webseite zeige ich Euch nicht den Quellcode des Programms, sondern erläutere wie Ihr damit eine Bilddatei untersuchen könnt – viel Spaß! Das Programm hat zwar eine englische Oberfläche, ist aber sehr einfach zu bedienen:

Nach dem Start des Programms wählt Ihr im Menü „File“ den Punkt „Open Image“ und sucht Euch das gewünschte Programm aus. Im Reiter (Tab) „Image“ ist das Bild dann zu sehen. Die meiner Meinung nach einprägendste Analyse erfolgt über die Menüpunkte „Attack“ – „LSB Enhancement“. Dann schaut Ihr in den Reiter „LSB Enhancement“ und schaut Euch das Ergebnis an. Eine weitere interessante Analyse verbirgt sich unter der Chi-Quadrat Auswertung, diese ist über die Menüpunkte „Attack“ – „Chi-Square“ anzuwählen und das Ergebnis erscheint im Reiter „Chi-Square“. Bei den übrigen Punkten hat der Autor im Quelltext vermerkt, das noch weitere Verbesserungen notwendig sind.

Jetzt zeige ich Euch jeweils 2 ähnliche Bilder hinter- bzw. nebeneinander, das erste Bild ist das unveränderte Bild eines Bisons, im jeweils zweiten Bison-Bild ist ein geheimes Bild versteckt. Die beiden verwendeten Bilder sind in meinem Github-Archiv im Unterordner „Demo-Bilder“ bereitgestellt.

1 Das Original-Bild nach dem Laden:

2 Das Bild mit einem versteckten Bild nach dem Laden:

3 Das Original-Bild im LSB Enhance Reiter:

4 Das Bild-im-Bild im LSB Enhance Reiter:

5 Das Original-Bild im Chi-Square Reiter:

6 Das Bild-im-Bild im Chi-Square Reiter:

7 Das versteckte Bild sieht so aus:

Fazit unserer Schnell-Analyse: im Bild 4 erkennt Ihr blitzschnell zwei Dinge: zum Einen das ein weiteres Bild eingebunden ist und zum Anderen sogar wie das Bild aussieht – vergleicht es einfach mit Bild 7.

Alle Quellcodes zu den Unsicherheiten findet Ihr zum Download in meinem Github-Repository, welches Ihr über diesen Link erreicht: https://github.com/java-crypto/G-Unsicherheit. Alle Programme sind sowohl unter Java 8 als auch unter Java 11 lauffähig.

Die Lizenz zum obigen Beispiel findet Ihr auf der eigenen Lizenz-Seite.

Letzte Aktualisierung: 29.10.2019