Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
steganographer — Steganographie in Python | Verstecke Dateien oder Daten in Bilddateien | Kitploit
Tools/GitHubGitHub/priyansh-anand/steganographer
Verschlüsselungs-/EntschlüsselungstoolsDatenexfiltrationSteganografieLernen & Bildung
GitHubpriyansh-anand/steganographer

steganographer

Steganographie in Python | Verstecke Dateien oder Daten in Bilddateien

Repository anzeigen
16934vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Steganographie in Python

Dieses Skript versteckt Dateien in Bildern und speichert das modifizierte Bild auf der Festplatte.

Die maximale Größe einer Datei, die in einem Bild versteckt werden kann, hängt von den Abmessungen des Bildes ab.

root@kitploit:~
max_file_size = ( height_of_image * width_of_image * 6 / 8 ) bytes

'100k words.txt' ist in 'original_image.png' versteckt und als 'image_with_100k words.png' benannt. Gehen Sie und prüfen Sie, ob Sie den Unterschied zwischen diesen beiden Bildern erkennen können. Sie können dieses Modul verwenden, um '100k words.txt' aus der 'image_with_100k words.png' zu extrahieren.

Beispiel

Originalbild Original Image

Modifiziertes Bild Modified Image

Dieses Bild enthält 100k Wörter (eine Textdatei) versteckt!

Wie funktioniert es?

Es basiert auf einem einfachen Prinzip: Wenn wir die LSB (Least Significant Bits) jedes Pixels ändern, wird die Änderung nicht signifikant sein und von den Augen nicht bemerkt werden.

Also nimmt dieses Modul 2 Bits der zu versteckenden Datei und ersetzt die letzten 2 Bits eines Pixels durch diese 2 Bits, und geht dann zum nächsten Pixel über. Die maximale Änderung eines Pixels kann 4 Einheiten betragen, und der Wertebereich in einem PNG-Bild ist (0,255), daher wird diese Änderung nicht signifikant sein.

In einem PNG-Bild hat jeder Pixel 3 Kanäle: Rot, Grün und Blau. (Manche PNG-Bilder haben 1 oder 4 Kanäle, aber dieses Programm wandelt sie in 3 Kanäle um) Ein typischer Pixel in einem PNG-Bild sieht wie folgt aus:

root@kitploit:~
a_pixel = (17,32,11)     # (RED, GREEN, BLUE)

Also können wir 3 mal 2 Bits in einem Pixel speichern, das bedeutet 6 Bits pro Pixel. Das führt uns zur Obergrenze der Dateigröße, die in einem Bild versteckt werden kann:

root@kitploit:~
max_file_size = ( height_of_image * width_of_image * 6 / 8 ) bytes

Lassen Sie es uns anhand eines Beispiels verstehen. Die zu versteckenden Daten sind:

root@kitploit:~
binary_data = 0b100111

Nehmen wir die ersten beiden Bits und ersetzen sie mit dem RED-Kanal unseres 'a_pixel'.

root@kitploit:~
a_pixel = (0b10001, 0b100000, 0b1011)   # binary representation of a_pixel values
# Let's change a_pixel's RED Channel
# 0b10001 -> 0b10010  ( First 2 bits are 10 )
a_pixel = (0b10010, 0b100000, 0b1011)  # modified pixel

Nehmen wir erneut 2 Bits von binary_data und ersetzen die letzten 2 Bits des GREEN-Kanals damit.

root@kitploit:~
a_pixel = (0b10010, 0b100000, 0b1011)
# Let's change a_pixel's GREEN Channel
# 0b100000 -> 0b100001  ( The 2 bits are 01 )
a_pixel = (0b10010, 0b100001, 0b1011)  # modified pixel

Machen wir das noch einmal mit dem BLUE-Kanal und wir sind fertig.

root@kitploit:~
a_pixel = (0b10010, 0b100001, 0b1011)
# Let's change a_pixel's BLUE Channel
# 0b1011 -> 0b1011  ( The 2 bits are 11 ) ; Notice that the value wasn't changed this time
a_pixel = (0b10010, 0b100001, 0b1011)  # pixel wasn't modified this time

So haben wir unsere 6-Bit-Nachricht in einem Pixel versteckt. Sehen wir uns die Änderungen im Pixel an:

root@kitploit:~
a_pixel             = (0b10001, 0b100000, 0b1011) = (17, 32, 11)
a_pixel_with_data   = (0b10010, 0b100001, 0b1011) = (18, 33, 11)

Wie wir sehen können, ist die Änderung nicht einmal auf Pixelebene erkennbar. Das Modul wiederholt dies, bis alle unsere Daten im Bild gespeichert sind.

Daten im Rohbild versteckt

HINWEIS: Das Rauschen im Bild wird erhöht, und wenn wir eine Bildbearbeitungssoftware verwenden und es mit dem Originalbild vergleichen, wird dieses Bild viel mehr Rauschen aufweisen als das Originalbild.

Lösung für dieses Problem: Laden Sie das Originalbild niemals im Internet hoch/teilen Sie es nicht.

Aufgaben

  • Unterstützung für JPEG-Bilder hinzufügen
  • Automatische Erkennung des Namens der zu extrahierenden Datei hinzufügen

Lizenz

MIT

Kostenlose Software, Verdammt ja!

Tool herunterladen