Text Steganography
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を提出してハッキングトリックを共有してください。
確認項目:
- Unicode homoglyphs
- Zero-width characters
- Whitespace patterns (spaces vs tabs)
実践的な手順
プレーンテキストが予期せぬ振る舞いをする場合は、コードポイントを確認して正規化を慎重に行う(証拠を破壊しないこと)。
手法
Text stegoは、同じように表示される(あるいは不可視の)文字にしばしば依存します:
- Homoglyphs: 見た目が同じ異なるUnicodeコードポイント(Latin
avs Cyrillicа) - Zero-width characters: joiners, non-joiners, zero-width spaces
- Whitespace encodings: spaces vs tabs, trailing spaces, line-length patterns
追加で注目すべきケース:
- Bidirectional override/control characters (視覚的にテキストの順序を入れ替えることがある)
- Variation selectors and combining characters used as a covert channel
デコード補助
- Unicode homoglyph/zero-width playground: https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder
コードポイントを検査する
python3 - <<'PY'
import sys
s=sys.stdin.read()
for i,ch in enumerate(s):
if ord(ch) > 127 or ch.isspace():
print(i, hex(ord(ch)), repr(ch))
PY
CSS unicode-range チャネル
@font-face ルールは unicode-range: U+.. エントリ内にバイトをエンコードできます。コードポイントを抽出し、16進数を連結してデコードします:
grep -o "U+[0-9A-Fa-f]\+" styles.css | tr -d 'U+\n' | xxd -r -p
範囲の宣言に複数 bytes が含まれる場合は、まずカンマで分割し、正規化してください (tr ',+' '\n')。Python を使うと、フォーマットが不一致でも bytes の解析と出力が簡単になります。
References
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を提出してハッキングトリックを共有してください。


