ステガノグラフィとは、何世紀も前から存在した情報を隠すための手法です。最近では、ある種のサイバー攻撃と関連が深くなっています。ステガノグラフィの例や、ステガノグラフィの種類、サイバーセキュリティでのステガノグラフィの利用についてご紹介します。
ステガノグラフィとは?
ステガノグラフィとは、別のメッセージや物体の中に情報を隠す手法です。ステガノグラフィを使えば、テキスト、画像、動画、音声コンテンツなど、ほとんどのデジタルコンテンツを隠すことができます。隠されたデータは送信先で抽出されます。
ステガノグラフィで隠されたコンテンツは、暗号化してから別のファイル形式に埋め込まれている場合もあります。暗号化されていない場合は、なんらかの方法で検知されにくい処理をされていることもあります。
秘密通信の一形態であるステガノグラフィは、暗号とよく比較されます。ただし、この2つは同じものではありません。ステガノグラフィでは、送信時にデータをスクランブルすることも、受信時に鍵を使って復号化することもありません。
「ステガノグラフィ(steganography)」の語源は、ギリシャ語で「隠された」を意味する「steganos」と「書く」を意味する「graphein」です。ステガノグラフィは何千年も前から、通信のプライバシーを守るためにさまざまな形態で使われてきました。たとえば古代ギリシャの人々は木にメッセージを刻んだ後、蝋を使ってそれを隠しました。古代ローマ人はさまざまな形態の見えないインクを使いました。このインクは、加熱したり光をあてたりすると解読できます。
ステガノグラフィがサイバーセキュリティに関係してくるのは、ランサムウェア犯罪集団やその他の攻撃者が標的を攻撃するために情報を隠すことがあるためです。それにより、たとえば、データを隠したり、悪意のあるツールを隠ぺいしたり、コマンド&コントロールサーバーに指示を与えたりします。無害に見える画像、動画、音声、テキストファイルの中に、これらすべての情報を仕込むことができます。
ステガノグラフィの仕組み
ステガノグラフィでは、疑いのかからない方法で情報を隠します。最もよく利用されるテクニックの1つが「最下位ビット」(LSB)ステガノグラフィで、メディアファイルの最下位ビットに秘密の情報を埋め込みます。たとえば、以下のような例があります。
- 画像ファイルでは、各ピクセルは赤、緑、青に対応する3ビットのデータからできています。画像フォーマットによっては、追加の4バイト目に透明性をあらわす「アルファ」を割り当てています。
- ○LSBステガノグラフィはこれらのバイトの最後のビットを改変して1ビットのデータを隠します。つまり、この方法で1メガバイトのデータを隠すには、8メガバイトの画像ファイルが必要になります。
- ピクセル値の最終ビットを改変しても、画像に目で確認できる変化は現れないため、元の画像とステガノグラフィを施された画像を誰も見分けることはできません。
音声や動画など、他のデジタルメディアにも同じ手法を適用でき、ファイルの中で、音声や映像の出力に最も影響を与えない部分にデータが隠されます。
ステガノグラフィにはその他に、単語や文字を置き換える手法があります。この手法では、秘密のメッセージの送信者が、大量のテキストの中に特定の間隔で単語を配置することによりテキストを隠します。このような手法は使いやすい反面、秘密の単語が元の文章と論理的にフィットしていなければ、テキストが文脈から浮いて怪しげに見えてしまう可能性もあります。
その他の手法には、ハードディスクのパーティション全体を隠す方法や、ファイルやネットワークパケットのヘッダー部分にデータを埋め込む方法などがあります。それぞれの手法の有効性は、どれくらいのデータを隠すことができ、どれくらい簡単に検知できるかによります。
ステガノグラフィの種類
デジタルの観点では、ステガノグラフィには主に5つの種類があります。これらは以下のとおりです:
1. テキストステガノグラフィ
2. 画像ステガノグラフィ
3. 動画ステガノグラフィ
4. 音声ステガノグラフィ
5.ネットワークステガノグラフィ
それぞれについて詳細に見ていきましょう。
テキストステガノグラフィ
テキストステガノグラフィでは、テキストファイル内に情報を隠します。既存のテキストの書式を変えたり、テキスト内の単語を変えたり、文脈自由文法を使って可読性の高いテキストを生成したり、ランダムな文字列を生成したりします。
画像ステガノグラフィ
画像ファイル内に情報を隠します。デジタルステガノグラフィでは、情報を隠すために画像が多用されます。これは、画像のデジタル表現には大量の要素が含まれており、画像内に情報を隠すにはさまざまな方法があるためです。
音声ステガノグラフィ
音声ステガノグラフィでは、音声ファイルのバイナリシーケンスを改変する形で音声信号に秘密のメッセージが埋め込まれます。デジタル音声に秘密のメッセージを隠すのは、他の手法とくらべて難易度の高いプロセスです。
動画ステガノグラフィ
デジタル動画フォーマット内にデータを隠します。動画ステガノグラフィでは、動き続ける画像や音声の流れの中に大量のデータを隠すことができます。動画ステガノグラフィには次の2種類があります。
- 圧縮されていないRAW動画にデータを埋め込んでから圧縮する
- 圧出されたデータストリームにデータを直接埋め込む
ネットワークステガノグラフィ
ネットワークステガノグラフィは、プロトコルステガノグラフィとも呼ばれ、データ転送に使用されるTCP、UDP、ICMPなどのネットワーク制御プロトコル内に情報を埋め込む手法です。
ステガノグラフィと暗号の違い
ステガノグラフィと暗号は、メッセージや情報を第三者から守るという目標は共通していますが、その実現に向けたメカニズムは異なります。暗号では、復号化キーを使用しなければ理解できない暗号文に情報を変えます。つまり、暗号化されたメッセージを傍受した人は、何らかの暗号が施されていることがすぐにわかります。一方、ステガノグラフィの場合、情報のフォーマットは変えず、メッセージの存在自体を隠します。
ステガノグラフィとNFT
ステガノグラフィとNFT(非代替性トークン)は重なる部分があります。ステガノグラフィは、画像、テキスト、動画などファイルの形式を問わず、他のファイルの中にファイルを隠す技術です。
通常、NFTを作成する際は、NFTの保有者のみが閲覧できるコンテンツを追加するオプションがあります。高解像度のコンテンツや、メッセージ、動画コンテンツ、秘密のコミュニティへのアクセス、割引コード、さらにはスマートコントラトまたは「トレジャー」まで、あらゆるコンテンツが可能です。
アート界の進化にあわせて、NFT技術も変わり続けています。将来的に、プライベートメタデータでNFTをデザインすることが増え、ゲーム、ペイウォール、イベントチケットなどさまざまな方法で適用されるようになると予想されます。
ステガノグラフィの用途
近年、ステガノグラフィは主にコンピューターで使用されており、デジタルデータがキャリア、ネットワークが高速配信チャンネルとなります。ステガノグラフィには、次のような用途があります。
- 検閲を回避する: 検閲を受けることも、メッセージが送信元まで辿られる恐れもなく、ニュース情報を送信する。
- デジタルウォーターマーク: 画像を歪めることのない、承認なく使用された場合は追跡する機能を有する、見えない透かしを作成する。
- 情報のセキュリティ保護: 法執行機関や政府機関が、疑いを集めることなく機密度の高い情報を相手方に送信する。
ステガノグラフィを利用してどのように攻撃が遂行されるのか
サイバーセキュリティの観点では、攻撃者はステガノグラフィを使用することで、無害に思われるファイル内に悪意のあるデータを埋め込むことができます。ステガノグラフィをうまく使うためには多大な労力と微調整が必要になるため、多くの場合は、特定の標的に狙いを定めた高度な攻撃者によって利用されます。ここで、ステガノグラフィがどのように攻撃に利用されるのか、いくつかの方法をご紹介します。
悪意のあるペイロードをデジタルメディアファイルに隠す
デジタル画像はステガノグラフィの主なターゲットとなります。これは、画像には冗長なデータが大量に含まれているため、画像を目に見えて変えることなく改変できるためです。画像ファイルはデジタル環境のあらゆるところで利用されているため、悪意のある目的は見落とされがちです。そのほか、動画、文書、音声などのファイルや、さらにはメールの署名までもが、ステガノグラフィによって悪意のあるペイロードを埋め込む媒体となる可能性があります。
ランサムウェアとデータの盗み出し
ランサムウェア犯罪集団は、ステガノグラフィが攻撃の遂行にも役立つことに気付いています。サイバー攻撃でデータを盗み出す段階でもステガノグラフィを利用できます。正当なメッセージの中に機密性の高いデータを隠すことで、ステガノグラフィは検知されることなくデータを抽出する手段となります。多くの攻撃者がデータの盗み出しを主な目的としてサイバー攻撃を行っていることから、セキュリティ担当者は、暗号化されたネットワークトラフィックの監視など、データの抽出を検知する手段の実装に磨きをかけています。
Webページにコマンドを隠す
攻撃者は、Webページ内のホワイトスペースやフォーラムに投稿したデバッグログに、インプラントへのコマンドを隠すことができます。あるいは、盗んだデータを画像でひそかにアップロードすることや、暗号化されたコードを特定の場所に格納することで持続性を維持することもできます。
悪意のある広告
攻撃者は悪意のある広告キャンペーンを実施するために、ステガノグラフィを悪用できます。オンラインバナー広告の中に悪意のあるコードを埋め込むと、この広告が読み込まれたときに悪意のあるコードが抽出され、ユーザーはエクスプロイトキットのランディングページに誘導されます。
ステガノグラフィを利用したサイバー攻撃の実例
Eコマーススキミング
2020年にオランダのEコマース向けセキュリティプラットフォーム「Sansec」が公表した調査報告によると、EコマースのチェックアウトページにあるSVG(Scalable Vector Graphics)に攻撃者がスキミングマルウェアを埋め込んでいたことが明らかになりました。SVG画像内に隠された悪意のあるペイロードがWebページの他の場所に別途隠されていたデコーダーとともに攻撃に利用されました。
この画像は有名企業のシンプルなロゴだったので、侵害されたチェックアウトページで個人情報を入力したユーザーは、疑わしいことには何も気付きませんでした。ペイロードが埋め込まれた場所では、SVG要素の構文が正しく使用されているように見えるたため、無効な構文を探す一般的なセキュリティスキャンツールでは悪意のあるアクティビティを検知できませんでした。
SolarWinds
同じく2020年、ITインフラストラクチャ管理プラットフォームの有名メーカーであるSolarWindsがリリースした正規のソフトウェアアップデートに、ハッカーのグループによってマルウェアが仕込まれました。ハッカーらは、Microsoft、Intel、Ciscoやさまざまな米国政府機関への侵入に成功しました。その後、ステガノグラフィを利用して、盗んだ情報をコントロールサーバーからのHTTPレスポンスボディである良性のXMLファイルのように見せかけました。コマンドデータはそれらのファイルの中で、別の文字列を装っていました。
産業企業
2020年にはさらに、英国、ドイツ、イタリア、日本の企業がステガノグラフィを施されたドキュメントを利用したキャンペーンの被害を受けました。ハッカーらは、Imgurなどの信頼できる画像プラットフォームにアップロードされたステガノグラフィ画像を利用して検知を回避し、Excel文書を感染させました。画像の中に隠された秘密のスクリプトを介して、Windowsのパスワードを盗み出すMimikatzというマルウェアがダウンロードされました。
ステガノグラフィを検知する方法
ステガノグラフィを検知する手法を「ステガナリシス」と呼びます。隠されたデータの存在を検知するには、StegExposeやStegAlyzeなどさまざまなツールがあります。アナリストは、その他にHex Viewerなどの一般的な分析ツールを使用してファイル内の異常を検知することもできます。
ただし、ステガノグラフィによって改変されたファイルを検知することは非常に困難です。特に、毎日ソーシャルメディアにアップロードされる無数の画像の中に隠されたデータを探すためにどこから手を付ければよいのかを知るのは、ほぼ不可能でしょう。
ステガノグラフィを利用した攻撃を緩和する
攻撃の中でステガノグラフィを利用するのは比較的簡単ですが、その攻撃から防御するのは非常に複雑な作業です。これは、攻撃者がますます革新的に、よりクリエイティブに進化しているためです。緩和策としては、次のようなものがあります。
- サイバーセキュリティトレーニングにより、信頼できないソースからメディアをダウンロードするリスクについて問題意識を高めることができます。また、悪意のあるファイルが添付されたフィッシングメールを見抜く方法や、ステガノグラフィがサイバー脅威として蔓延していることを教えることもできます。基本レベルでは、ファイルサイズが異常に大きい画像に注意するよう教えます。これはステガノグラフィの兆候である可能性があるためです。
- 安全なインターネット閲覧のためのWebフィルタリングを導入するとともに、最新のアップデートがリリースされたらすぐに適用して最新の状態を維持する必要があります。
- 静的なチェックや一般的なシグネチャ、その他の時代遅れのコンポーネントを使用せず、最先端のエンドポイント保護技術を採用する必要があります。ふるまいエンジンであれば、画像に隠されたコードやその他の形態の難読化を動的に検知できる可能性が高いためです。企業は、検知の対象を、暗号化や難読化が検知されやすいエンドポイントに集中させる必要があります。
- さらに、複数の提供元からの脅威インテリジェンスを利用して、脅威の最新のトレンドを把握する必要があります。たとえば、ステガノグラフィの利用が確認された、業界に影響があるサイバー脅威などについてです。
- 包括的なアンチウイルスソリューションを利用すると、デバイスで悪意のあるコードを検知して隔離し、削除できます。最新のアンチウイルス製品は、自らを自動的にアップデートすることで、最新のウイルスやその他のマルウェアに対する防御を可能にします。
関連するカスペルスキー製品:
他の読み物: