Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Steganography — ビットマップ画像(.bmpおよび.png)、WAVサウンドファイル、バイトシーケンスに対応した最下位ビットステガノグラフィ。ビットマップ画像向けのシンプルなLSBステガノ分析(LSB抽出)。 | Kitploit
ツール/GitHubGitHub/ragibson/steganography
フォレンジックステガノグラフィー暗号化CTF学習と教育
GitHubragibson/steganography

Steganography

ビットマップ画像(.bmpおよび.png)、WAVサウンドファイル、バイトシーケンスに対応した最下位ビットステガノグラフィ。ビットマップ画像向けのシンプルなLSBステガノ分析(LSB抽出)。

リポジトリを見る
65610510ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

ステガノグラフィ

ステガノグラフィの図

目次

  • インストール
  • バイトシーケンス操作
  • WavSteg
  • LSBSteg
  • StegDetect

ステガノグラフィ技術に詳しくない場合は、Steganography: Hiding Data Inside Data でこの分野の基本的な概要も書いています。

インストール

このプロジェクトは PyPI にあり、以下のようにインストールできます。

root@kitploit:~
pip install stego-lsb

または、このリポジトリから直接インストールすることもできます:

root@kitploit:~
git clone https://github.com/ragibson/Steganography
cd Steganography
python3 setup.py install

インストール後、ターミナルで stegolsb コマンドを使用するか、コード内で stego_lsb から関数をインポートします。

バイトシーケンス操作

bit_manipulation は、ペイロードのバイトをキャリアバイトシーケンスの最下位ビットに直接(高速に)インタリーブする機能を提供します。

具体的には、以下の4つの主要関数が含まれています:

root@kitploit:~
# Interleave the bytes of payload into the num_lsb LSBs of carrier.
lsb_interleave_bytes(carrier, payload, num_lsb, truncate=False)

# Deinterleave num_bits bits from the num_lsb LSBs of carrier.
lsb_deinterleave_bytes(carrier, num_bits, num_lsb)

# Runs lsb_interleave_bytes with a List[uint8] carrier.
lsb_interleave_list(carrier, payload, num_lsb)

# Runs lsb_deinterleave_bytes with a List[uint8] carrier.
lsb_deinterleave_list(carrier, num_bits, num_lsb)

bit_manipulation.py を実行するか、その test() 関数を直接呼び出すか、stegolsb test を実行すると、以下のような出力が得られます。

root@kitploit:~
Testing 1.0 MB payload -> 10.0 MB carrier...
Progress: [################################]
----------------------------------------
| # LSBs | エンコード速度  | デコード速度  |
| 1      | 60.6   MB/s  | 95.9   MB/s  |
| 2      | 56.6   MB/s  | 52.7   MB/s  |
| 3      | 82.5   MB/s  | 77.4   MB/s  |
| 4      | 112.4  MB/s  | 105.9  MB/s  |
| 5      | 135.9  MB/s  | 129.8  MB/s  |
| 6      | 159.9  MB/s  | 152.4  MB/s  |
| 7      | 181.7  MB/s  | 174.6  MB/s  |
| 8      | 372.8  MB/s  | 1121.8 MB/s  |
----------------------------------------

WavSteg

WavSteg は最小ビットステガノグラフィを使用して、.wav ファイルのサンプルにファイルを隠します。

オーディオファイルの各サンプルについて、最下位ビットをファイルのデータで上書きします。

使い方

WavSteg には Python 3 が必要です。

以下のコマンドライン引数で WavSteg を実行します:

root@kitploit:~
Command Line Arguments:
 -h, --hide               To hide data in a sound file
 -r, --recover            To recover data from a sound file
 -i, --input TEXT         Path to a .wav file
 -s, --secret TEXT        Path to a file to hide in the sound file
 -o, --output TEXT        Path to an output file
 -n, --lsb-count INTEGER  How many LSBs to use  [default: 2]
 -b, --bytes INTEGER      How many bytes to recover from the sound file
 --help                   Show this message and exit.

例:

root@kitploit:~
$ stegolsb wavsteg -h -i sound.wav -s file.txt -o sound_steg.wav -n 1
# OR
$ stegolsb wavsteg -r -i sound_steg.wav -o output.txt -n 1 -b 1000

データの隠蔽

データの隠蔽には -h, -i, -s, -o, -n の引数を使用します。

次のコマンドは file.txt の内容を sound.wav に隠し、結果を sound_steg.wav として保存します。また、理論上の最大値のうち何バイト使用されたかを出力します。

例:

root@kitploit:~
$ stegolsb wavsteg -h -i sound.wav -s file.txt -o sound_steg.wav -n 2
Using 2 LSBs, we can hide 6551441 bytes
Files read                     in 0.01s
5589889 bytes hidden           in 0.24s
Output wav written             in 0.03s

データを隠しすぎようとすると、WavSteg はデータを隠すために必要な最小の LSB 数を出力します。

データの復元

データの復元には -r, -i, -o, -n, -b の引数を使用します。

次のコマンドは sound_steg.wav から隠されたデータを復元し、output.txt として保存します。隠されたデータのバイトサイズが正確でないと、結果が短すぎたり、余分なデータが含まれたりする可能性があります。

例:

root@kitploit:~
$ stegolsb wavsteg -r -i sound_steg.wav -o output.txt -n 2 -b 5589889
Files read                     in 0.02s
Recovered 5589889 bytes        in 0.18s
Written output file            in 0.00s

LSBSteg

LSBSteg は最小ビットステガノグラフィを使用して、RGB 画像(.bmp または .png)の色情報にファイルを隠します。

画像の各ピクセルの各色チャンネル(R、G、B など)について、色の値の最下位ビットをファイルのデータで上書きします。データの復元を容易にするために、入力ファイルのファイルサイズも画像の最初のいくつかの色チャンネルに隠します。

使い方

Python 3 と Python Imaging Library (PIL) のフォークである Pillow が必要です。

以下のコマンドライン引数で LSBSteg を実行します:

root@kitploit:~
Command Line Arguments:
 -h, --hide                      To hide data in an image file
 -r, --recover                   To recover data from an image file
 -a, --analyze                   Print how much data can be hidden within an image   [default: False]
 -i, --input TEXT                Path to an bitmap (.bmp or .png) image
 -s, --secret TEXT               Path to a file to hide in the image
 -o, --output TEXT               Path to an output file
 -n, --lsb-count INTEGER         How many LSBs to use  [default: 2]
 -c, --compression INTEGER RANGE
                                 1 (best speed) to 9 (smallest file size)  [default: 1]
 --help                          Show this message and exit.

例:

root@kitploit:~
$ stegolsb steglsb -a -i input_image.png -s input_file.zip -n 2
# OR
$ stegolsb steglsb -h -i input_image.png -s input_file.zip -o steg.png -n 2 -c 1
# OR
$ stegolsb steglsb -r -i steg.png -o output_file.zip -n 2

解析

画像にデータを隠す前に、どれだけのデータを隠せるかを確認すると便利です。次のコマンドでそれが可能で、以下のような出力が得られます。

root@kitploit:~
$ stegolsb steglsb -a -i input_image.png -s input_file.zip -n 2
Image resolution: (2000, 1100, 3)
Using 2 LSBs, we can hide:     1650000 B
Size of input file:            1566763 B
File size tag:                 3 B

データの隠蔽

次のコマンドは入力画像にデータを隠し、結果をステガノグラフィ画像に書き込み、以下のような出力を生成します。

root@kitploit:~
$ stegolsb steglsb -h -i input_image.png -s input_file.zip -o steg.png -n 2 -c 1
Files read                     in 0.26s
1566763 bytes hidden           in 0.31s
Image overwritten              in 0.27s

データの復元

次のコマンドはステガノグラフィ画像からデータを復元し、結果を出力ファイルに書き込み、以下のような出力を生成します。

root@kitploit:~
$ stegolsb steglsb -r -i steg.png -o output_file.zip -n 2
Files read                     in 0.30s
1566763 bytes recovered        in 0.28s
Output file written            in 0.00s

StegDetect

StegDetect は画像内のシンプルなステガノグラフィを検出する一つの方法を提供します。

使い方

Python 3 と Python Imaging Library (PIL) のフォークである Pillow が必要です。

以下のコマンドライン引数で StegDetect を実行します:

root@kitploit:~
Command Line Arguments:
 -i, --input TEXT         Path to an image
 -n, --lsb-count INTEGER  How many LSBs to display  [default: 2]
 --help                   Show this message and exit.

画像の最下位ビットの表示

各ピクセルの RGB 色チャンネルの最下位 n ビットを合計し、結果を 0~255 の範囲に正規化します。この値はピクセルの各色チャンネルに適用されます。n は表示する最下位ビット数で、次のコマンドは結果の画像をファイル名に "_nLSBs" を追加して保存し、以下のような出力を生成します。

root@kitploit:~
$ stegolsb stegdetect -i input_image.png -n 2
Runtime: 0.63s
ツールをダウンロード