
ステガノグラフィ検出の自動化ツール。画像、音声、PDF、バイナリにわたるAI駆動の物体/テキスト認識と深いファイル分析を使用して、ウェブサイト、ウェブサーバー、ローカルディレクトリをスキャンします。
StegoScan.pyは、Webサイト、Webサーバ、ローカルディレクトリにおけるステガノグラフィ検出を自動化する、次世代の強力なツールです。AIによる物体・テキスト認識と深いファイル分析を統合しています。限られたファイルタイプに焦点を当てたり手動処理を必要とする従来のステガノグラフィ検出ツールとは異なり、StegoScan.pyは包括的で自動化されたスキャンを実現します。Webサイトをスクレイピングし、埋め込まれたファイルを解析し、PNG、JPG、BIN、PDF、DOCX、WAV、MP3など幅広いフォーマットにわたって隠されたメッセージを検出します。
このツールはWebサイトおよびWebサーバのスキャン機能を備えており、不正なデータ交換を監視するセキュリティ研究者や、サイバー犯罪者を追跡する法執行機関にとって非常に有用です。単一のコマンドでドメイン全体やIPレンジを分析し、不審なメディアや文書を取得・検査して、隠された通信を明らかにします。ダークウェブマーケットでの秘密の取引の検出、偽情報キャンペーンにおける埋め込まれたプロパガンダの特定、テロネットワーク内の隠された指示の露見など、StegoScan.pyはステガノグラフィによる脅威に対して比類のない可視性を提供します。
ステガノグラフィ検出の改善点の一つは、YOLOやTrOCRなどのAIモデルを統合し、これまでは手動で確認する必要があった画像や音声ファイル内の物体・テキスト検出を実現したことです。従来のOCR(光学文字認識)ツールは信頼性が低く、ノイズ、歪み、非標準フォントなどにより、画像内の基本的なテキストさえ認識できないことがよくあります。StegoScan.pyはオプションのAI強化テキスト検出を提供することでこの問題を克服し、画像、スキャン文書、さらには音声ファイルのスペクトログラムから隠されたメッセージを抽出する能力を劇的に向上させます。これは、侵害されたメディアから高い信頼度でテキストを抽出する必要があるフォレンジック分析者、サイバーセキュリティ専門家、法執行機関にとって革新的な機能です。
もう一つの新しい機能は、深いファイル抽出です。これはステガノグラフィ分析における重要な進歩です。StegoScan.pyはPDFやDOCXファイルの表面をスキャンするだけでなく、その中に埋め込まれたファイルを抽出・分析します。つまり、添付ファイルや深く入れ子になった文書の中に隠されたステガノグラフィコンテンツを明らかにすることができ、従来のスキャンツールの大きな盲点に対処します。
複数のステガノグラフィ分析手法を統合したテストにより、StegoScan.pyはファイルの詳細かつ多層的な分析を提供します。セキュリティチーム、デジタルフォレンジック専門家、サイバーセキュリティ研究者にとって、進化するデジタル脅威に対する最先端のソリューションです。ステガノグラフィ技術がより洗練されるにつれ、従来のツールでは対応が不十分になります。StegoScan.pyは、他のツールが見逃すものを検出することで、組織が悪意ある行為者に先んじることを確実にします。ステガノグラフィとその利用方法の詳細については、「StegoScanの背景と理論的根拠」のセクションを参照してください。
StegoScanは、専用のPython環境をセットアップし、ローカルワークスペースを作成し、分析機能を駆動するために必要なすべてのツールとパッケージをインストールするところから始まります。すべての準備が整うと、指定されたIPアドレス(選択された場合)がアクティブなWebサーバに属していることを確認します。
ターゲットが確認されると、StegoScanは作業を開始します。指定されたIPアドレスとURLから、指定されたタイプの利用可能なすべてのファイルをスクレイピングします。ローカルディレクトリが選択された場合、そこからもファイルを収集します。収集されたすべてのファイルはタイプごとに整理され、選択されたディレクトリに保存されます。
次に、StegoScanは結果ディレクトリを準備し、ステガノグラフィ検出テストのスイートを起動します。利用可能なテストの詳細については、「ステガノグラフィテスト」のセクションを参照してください。隠されたデータが発見されると、ファイルはカテゴリ化され、それを特定したテストに対応するサブフォルダに保存されます。すべてのテストが完了すると、StegoScanはプロセスを最終化し、実行を終了します。
WebサイトおよびWebサーバのスキャン機能 – 従来のステガノグラフィ分析ツールは静的ファイルのみに焦点を当てていましたが、StegoScan.pyはWebサイト全体、IPレンジ、Webサーバを積極的にスキャンし、隠されたメッセージを探します。ダークウェブマーケット、サイバー犯罪フォーラム、侵害された企業サイトの調査など、ファイルの取得と分析プロセス全体を自動化します。手動でのダウンロードと分類は不要です。StegoScanがすべてを行います。
画像および音声ファイルに対するAI物体・テキスト検出 – 従来のOCR(光学文字認識)は信頼性が低く、歪んだテキスト、非標準フォント、ノイズの多い画像では失敗することがよくあります。StegoScan.pyはYOLOやTrOCRなどの高度なAIモデルを統合し、テキスト抽出と物体検出を強化し、標準的なOCRでは完全に見逃される隠されたメッセージを明らかにします。音声スペクトログラムもステガノグラフィコンテンツのスキャンが可能で、隠されたデータ交換に関する洞察を提供します。
PDFおよびDOCXファイルの深いファイル抽出 – ほとんどのツールは文書ファイルの分析において表面をなぞるだけですが、StegoScan.pyはより深く掘り下げます。PDF、DOCX文書、その他の複雑なフォーマット内に隠された埋め込みファイルを自動的に抽出し、ステガノグラフィデータを分析します。これにより、無害に見える文書内に隠されたペイロードという大きな盲点が排除されます。見過ごされる隠しファイルはもうありません。存在すれば、StegoScanが見つけます。
詳細なファイル分析のための複合ツールテスト – StegoScan.pyは単一の技術に依存しません。複数のステガノグラフィ検出手法を一つの強力なテストに統合し、スキャンされたすべてのファイルに対して多層的かつ徹底的な分析を保証します。単一の検出技術(簡単に回避される可能性がある)に頼るのではなく、StegoScanは複数の方法を使用してファイルを相互チェックし、検出精度を最大化します。
自動化されLinuxに最適化 – 依存関係の管理に疲れていませんか?StegoScan.pyはプラグアンドプレイです。必要なものを自動的にインストールし、手動設定なしでスムーズで効率的なスキャンプロセスを実現します。速度と効率のために設計され、Linux上でシームレスに動作し、サイバーセキュリティ専門家、ペネトレーションテスター、フォレンジック分析者に最適なツールです。
Webスクレイピングとファイルダウンロード – URL、IPアドレス、IPレンジから特定のファイルタイプの抽出とダウンロードを自動化し、大規模なWebコンテンツ分析を可能にします。
ローカルディレクトリの抽出とテスト – ローカルディレクトリをスキャンしてステガノグラフィコンテンツを検出し、保存されたファイル内の隠されたメッセージを特定します。
画像処理とステガノグラフィ分析 – 画像に対して詳細なステガノグラフィテストを実行し、複数の検出技術を使用して隠されたデータを明らかにします。
PDFおよびDOCXからの埋め込みファイル抽出 – PDFおよびDOCX文書から画像や埋め込みファイルを抽出・分析し、深く隠されたステガノグラフィコンテンツを特定するための重要なステップです。
ステガノグラフィ検出ツール – stegano、stegdetect、zstegを統合し、画像ファイル内の隠されたメッセージを多層的に検出します。
AIを活用した物体・テキスト検出 – AI駆動の分析で従来の検出方法を強化:
YOLOv8による高精度な物体検出 – 埋め込まれた画像やシンボルを識別します。
TrOCRによる高度なテキスト認識 – 手書き、装飾、歪んだフォントからテキストを抽出し、標準的なOCRツールよりも精度が向上しています。
基本的なマルウェアおよびELFファイル分析 – ELFバイナリおよびその他の実行可能ファイルの予備的なセキュリティ分析を実行し、潜在的なマルウェアの脅威の特定に役立ちます。
音声およびバイナリファイル分析 – WAVおよびMP3ファイルのステガノグラフィデータ(スペクトログラムや可聴範囲外の周波数に埋め込まれたメッセージなど)を分析します。
バイナリファイル構造の抽出 – Binwalkを使用して、バイナリファイル内の隠されたファイル、ファームウェア、埋め込みデータを抽出・調査します。
マルチスレッド対応 – パフォーマンスに最適化され、大規模データセットの高速かつ効率的なスキャンを可能にします。フォレンジック調査や大規模なサイバーセキュリティアプリケーションに理想的です。
(一部のテストの下には、ツールのテストに使用されたサンプルファイルがあり、テストが何を明らかにするか、また通信サイト上でファイルがどれほど目立たないかを視覚的に示しています)
左:未加工画像、右:"hello world"が埋め込まれた画像
画像整合性 – Pillow Pythonライブラリを使用して、PNGおよびJPGファイルの整合性をチェックします。
Hist – Matplotlib Pythonライブラリを使用して、PNGおよびJPGファイルのRGB色値の分布を示すヒストグラムを生成します。
物体検出 – YOLOv8とTrOCRを使用して、PNGおよびJPGファイルの各レイヤーをテストします。LSBを繰り返し除去し、赤、緑、青のフィルターのみを画像に適用してテストします。
LSBに隠された猫の画像がYOLOv8によって発見された例 [2]
Jpeg – Stegdetect Linuxコマンドラインツールを使用して、JPGファイルをテストし、jSteg、jphide、Outguess、F5(ヘッダー分析)、invisible secrets、appendX、camouflageなどの技術を使用して埋め込まれたデータを検出します。
Png – Zsteg Linuxコマンドラインツールを使用して、PNGファイルをテストし、LSBステガノグラフィの検出、異なるカラーチャネル(R、G、B、A)とそのビットプレーンのチェック、データを隠すために使用される一般的なエンコーディング技術の検出、ペイロード抽出、テキストおよびASCII隠しメッセージ、エントロピー分析を実行します。
左:未加工画像、右画像には「Hunting of the Snark」の最初の章が埋め込まれている [1]
音声整合性 – Wave Pythonライブラリを使用して、MP3およびWAVファイルの整合性をチェックします。
音声検出 – Librosa Pythonライブラリを使用して、MP3およびWAVファイルの音声スペクトログラムを生成し、その後YOLOv8とTrOCRで処理し、ファイルの時間長にわたる周波数値の表現に隠された画像やメッセージをチェックします。
[音声を聞く](https://github.com/LCBOWER33/StegoScan/blob/main/images/Drawing_of_the_word_Wikipedia.wav)
TrOCRを使用して発見された音声ファイル内の隠しテキストメッセージ [2]
Binary – Binwalk Linuxコマンドラインツールを使用して、バイナリファイル内の埋め込みファイルとデータをテストします。既知のファイルシグネチャ(ZIP、PNG、ELFなど)の特定、バイナリイメージ内のファームウェアコンポーネントの検出、圧縮・暗号化データ、ファイル内の圧縮データ(LZMA、GZIP、BZIP2など)の発見、暗号化または難読化データのフラグ付け、ファイルシステムシグネチャの認識(SquashFS、JFFS2、EXT、FATなど)、コンパイル済み実行ファイル(ELF、PE、Mach-O)の検出、ブートローダーとファームウェアコンポーネントの識別、エントロピー分析を行います。
Elf check – YARAルール、マジックバイト、Linux fileコマンド、エントロピー分析を使用して、すべてのファイルに埋め込まれたマルウェアがないかチェックします。
-u, --url : ファイルをスクレイピングするベースURL、IPアドレス、またはIPレンジ。
-t, --types : ダウンロードするファイル拡張子のカンマ区切りリスト(すべてのファイルの場合は*)。
-n, --num : ダウンロードするファイル数。
-o, --output : 出力ディレクトリ。
-m, --mode : 特定のテスト(例:lsb,hist)または"all"ですべてのテストを指定するテストモード。
-l, --local : 分析対象のローカルファイルまたはディレクトリへのパス。
sudo python StegoScan.py -u "https://example.com" -t "*" -o "downloads" -m "all"
sudo python StegoScan.py -u "https://example.com" -t "jpg,png" -n 5 -o "downloads" -m "all"
sudo python StegoScan.py -l "path/to/local/files" -t "*" -o "downloads" -m "lsb,hist,png"
GUIは現在フルシステムへの統合作業中ですが、現在のバージョンは以下の通りです。
スクレイピングされたすべてのファイルは、実行時に指定された出力ディレクトリに保存されます。
必要なすべてのPythonインポートのために、新しい環境を自動的に作成してインストールします。
スクリプトはpoppler-utils、stegdetect、binwalk、zstegを自動的にインストールします。
CUDA互換のGPUが検出された場合、GPUアクセラレーションが使用されます。
テストをExiftool、StegSeek、StegExpose、OutGuess、StegoRAT、StegoSuite、WavStegに拡張する。
より多くのYARAルールでマルウェア分析を拡張する。
高度な画像処理技術を使用して物体検出を改善する。
ステガノグラフィ(他の無害なデータ内にメッセージを隠す手法)は、犯罪活動での利用が顕著に増加しています。デジタル技術の進歩により、悪意のある行為者は画像、音声、動画などの一見無害なファイルに不正な情報を埋め込むことができるようになりました。例えば、テロ組織がインターネットに投稿されたデジタル写真内に指示を隠すためにステガノグラフィを使用したとの報告があります。さらに、VoIP(Voice over Internet Protocol)通信の台頭により、音声ストリーム内にデータを隠す技術が開発され、検出がさらに困難になっています。
公衆メディアの領域でも、ステガノグラフィはその存在感を示しています。悪意のある用途以外にも、デジタル透かし(著作権情報をメディアファイルに秘密裏に埋め込み、知的財産権を保護する)などの正当な目的にも使用されています。この技術により、コンテンツ作成者は自分の作品の配布を追跡し、不正使用を防ぐことができます。さらに、ソーシャルステガノグラフィの概念が出現しており、個人が公開された文化的参照、イディオム、ポップカルチャーコンテンツ内にメッセージを隠し、特定の視聴者だけにその背後にあるメッセージを見えるようにしています。
サイバー犯罪、テロ、秘密通信でのステガノグラフィの使用が増加していることから、Webサイトをスキャンしてこれらの隠されたメッセージを検出するツールを開発することが重要です。犯罪者や悪意のある行為者は、デジタルステガノグラフィを悪用して、盗まれた認証情報、マルウェアコマンド、不正な指示などのデータを秘密裏に交換し、従来のサイバーセキュリティ対策による検出を回避します。Webコンテンツに埋め込まれたメッセージをスキャン・分析する機能がなければ、法執行機関やセキュリティ機関は違法活動の追跡に苦労し、国家安全保障、金融システム、個人のプライバシーに対する潜在的な脅威につながる可能性があります。さらに、偽情報や秘密の影響キャンペーンの台頭に伴い、ステガノグラフィ技術を利用して隠されたプロパガンダを拡散したり、偽情報活動を調整したりすることが考えられます。スキャンメカニズムを実装することで、プライバシーの懸念とバランスを取りながら、これらのリスクを特定・軽減し、ステガノグラフィが悪意のある目的に悪用されるのを防ぐことができます。
[1] Detecting Steganographic Content on the Internet. 2002 paper by Niels Provos and Peter Honeyman published in Proceedings of the Network and Distributed System Security Symposium (San Diego, CA, 6–8 February 2002). NDSS 2002. Internet Society, Washington, D.C.
[2] “Steganography,” Wikipedia, https://en.wikipedia.org/wiki/Steganography (accessed Jan. 27, 2025).
このプロジェクトはオープンソースであり、MITライセンスの下で利用可能です。