[2024-03-04 JST 改訂] Wireshark によるパケット解析講座 4: Pcapからのオブジェクトのエクスポート

A pictorial representation of exporting pcap files in Wireshark. Binary is displayed on a computer monitor along with graphs and charts.

This post is also available in: English (英語)

概要

セキュリティ専門家は、不審なアクティビティのパケット キャプチャ (pcap) を確認するさい、詳細な検査をするため、pcap からオブジェクトをエクスポートしたい場合があります。本チュートリアルは、pcap からマルウェアや、そのほかの種類のオブジェクトをエクスポートする方法のヒントを提供します。

本稿は Wireshark のチュートリアル シリーズの連載第 4 回です。本シリーズでは、セキュリティ専門家が Wireshark をより効果的に使用するうえで役立つヒントを提供しています。本シリーズは 2019 年 7 月の初めて公開され、2024 年でも有効な内容となるよう、更新を続けています。

パロアルトネットワークスのお客さまは、Cortex XDRXSIAM により、本稿で取り上げたマルウェア サンプルからより適切に保護されています。また弊社のお客様は、Advanced WildFireDNS SecurityAdvanced Threat PreventionAdvanced URL Filtering などのクラウド配信型セキュリティサービスを有効にした次世代ファイアウォール (NGFW) により、本稿で取り上げた脅威からの保護を受けています。

侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、こちらの問い合わせフォームからご連絡いただくか、infojapan@paloaltonetworks.com まで電子メールにてお問い合わせください (ご相談は弊社製品のお客様には限定されません)。

関連する Unit 42 のトピック pcap, Wireshark, Wireshark Tutorial

目次

要件および補足資料
HTTP トラフィックからのファイルのエクスポート
SMB トラフィックからのファイルのエクスポート
SMTP トラフィックからの電子メールのエクスポート
FTP トラフィックからのファイルのエクスポート
結論
IoC (侵害指標)
追加リソース

要件および補足資料

本稿は、pcap ファイルから明らかにされる情報を理解できるよう、ある程度ネットワーク トラフィックの基本知識をお持ちの Wireshark ユーザーを読者として想定しています。本稿をお読みになる前に、Wireshark のパケット一覧で列表示をカスタマイズする方法表示フィルター式の使いかたについて取り上げた前回までのチュートリアルの内容を理解しておいてください。

また、Wireshark の比較的最近のバージョン (最低でもバージョン 3.6.2 かそれ以降) を準備しておいてください。本稿では、Wireshark バージョン 4.2.2 を使い、以前のチュートリアルで使ったカスタマイズ済みの列表示を使います。お使いのオペレーティング システム (OS) 用の Wireshark の最新バージョンを使うことを強くお勧めします。

本チュートリアルの pcap のなかには、Microsoft Windows を標的とするマルウェアや悪意のあるコードが含まれていることがあります。このため、本チュートリアルの pcap 確認には Windows 以外の環境で Wireshark を使うことをお勧めします。Windows を標的とする悪意のあるトラフィックを Wireshark で確認するには、BSD や Linux、macOS などのオペレーティング システム環境を使うのが望ましいでしょう。

本チュートリアルで使う pcap ファイルは、こちらの GitHub リポジトリーにホストしたパスワード付き ZIP アーカイブに格納してあります。ここから Wireshark-tutorial-extracting-objects-5-pcaps.zip という名前の ZIP ファイルをダウンロードしてください。ZIP ファイル展開用のパスワードは「infected」です (図 1)。

画像 1 は、チュートリアル素材の zip ファイルをダウンロードする方法のスクリーンショットです。Palo Alto Networks Unit 42 Wireshark Tutorials GitHub で [Download raw file (raw ファイルをダウンロード)] をクリックします。黒い矢印がダウンロード先のフォルダーを指しています。2 番目の黒い矢印は、Password required (パスワードが必要) と知らせるポップアップを指しています。最後の黒い矢印は、pcap ファイルを含む展開された ZIP ファイルの内容を指しています。
図 1. チュートリアル用の pcap ファイルを取得
ZIP を展開すると以下の 5 つの pcap が含まれています。

  • Wireshark-tutorial-extracting-objects-from-a-pcap-1-of-5.pcap
  • Wireshark-tutorial-extracting-objects-from-a-pcap-2-of-5.pcap
  • Wireshark-tutorial-extracting-objects-from-a-pcap-3-of-5.pcap
  • Wireshark-tutorial-extracting-objects-from-a-pcap-4-of-5.pcap
  • Wireshark-tutorial-extracting-objects-from-a-pcap-5-of-5.pcap

ネットワーク パケット アナライザーである Wireshark は、複数の IP パケットとそれに関連する TCP フレームからのデータを組み合わせて pcap の内容を明らかにします。Wireshark によって明らかにされたこれらのオブジェクトの一部は抽出可能です。次のセクションでは、HTTP トラフィックからファイルをエクスポートする方法について説明します。

HTTP トラフィックからのファイルのエクスポート

Windows ベースの感染のなかには、暗号化されていない HTTP トラフィック経由で送信されるマルウェア バイナリーや悪意のあるコードを含むものがあります。pcap からは、そうしたオブジェクトを抽出することができます。最初の pcap (Wireshark-tutorial-extracting-objects-from-a-pcap-1-of-5.pcap) はそうしたサンプルのひとつです。このファイルを Wireshark で開き、図 2 のように表示フィルタに「http.request」と入力してフィルタリングしてください。

画像 2 は、フィルタを http.request に設定した Wireshark のスクリーンショットです。
図 2. Wireshark 上で「http.request」を設定して最初の pcap をフィルタリングしたところ

http.request でフィルタリングした後、smart-fax[.]com に対する 2 つの GET リクエストを見つけてください。最初のリクエストは .doc で終わっています。これは最初のリクエストが Microsoft Word ドキュメントを返した可能性があることを示しています。2 つめのリクエストは .exe で終わっています。これは 2 つめのリクエストが Windows の実行可能ファイルを返した可能性があることを示しています。HTTP GET リクエストを以下に示します。

  • smart-fax[.]com - GET /Documents/Invoice&MSO-Request.doc
  • smart-fax[.]com - GET /knr.exe

Wireshark の以下のメニューをたどると HTTP のオブジェクト リストからこれらのオブジェクトをエクスポートできます。

  • File (ファイル) → Export Objects (オブジェクトをエクスポート) → HTTP...

図 3 は、Wireshark でのメニュー パス (メニューをクリックする順序) を示しています。

画像 3 は、Wireshark の [File (ファイル)] メニューのスクリーンショットです。[Export Objects (オブジェクトのエクスポート)] サブメニューが選択され、そのメニューから矢印で [HTTP...] が選択されています。
図 3. Wireshark で HTTP オブジェクトをエクスポートするためのメニュー パス
このメニュー パスをたどると、図 4 および 図 5 に示すように、「Wireshark Export HTTP object list (Wireshark・エクスポート・HTTP オブジェクト一覧)」というタイトルのウィンドウが表示されます。「Invoice&MSO-Request.doc」というファイル名がある最初の行を選択して、図 4 に示すように保存します。knr.exe というファイル名をもつ 2 行目を選択し、図 5 に示すように保存します。

画像 4 は、「Wireshark Export HTTP object list (Wireshark・エクスポート・HTTP オブジェクト一覧)」というタイトルのウィンドウのスクリーンショットです。2 行目が選択されていて、黒い矢印が [Save (保存)] ボタンを指しています。
図 4. 不審な Word ドキュメントを HTTP オブジェクト一覧から保存する
画像 5 は、「Wireshark Export HTTP object list (Wireshark・エクスポート・HTTP オブジェクト一覧)」というタイトルのウィンドウのスクリーンショットです。3 行目が選択されていて、黒い矢印が [Save (保存)] ボタンを指しています。
図5 不審な Windows 実行可能ファイルを HTTP オブジェクト一覧から保存する
なお、HTTP オブジェクト一覧の [Content Type (コンテントタイプ)] ドロップダウンに含まれているのは、ファイルをホストしているサーバー側が HTTP レスポンス ヘッダー内で指定したファイル種類であるという点に注意してください。場合によっては、検出回避を狙って、マルウェアをホストするサーバーが意図的に Windows 実行可能ファイルを別の種類のファイルだとラベリングしていることがあります。さいわい、本チュートリアル最初の pcap は非常に単純な例です。

これらのファイルを pcap から抽出したら、ファイルの種類を確認する必要があります。MacBook または Linux 環境では、ターミナル ウィンドウまたはコマンド ライン インターフェイス (CLI) から次のコマンドを使用すれば確認できます。

  • file [ファイル名]
  • shasum -a 256 [ファイル名]

file コマンドはファイルの種類を識別します。shasum コマンドはファイル ハッシュを返します。ここでは SHA256 のファイル ハッシュを返しています。図 6 は、Xubuntu ベースの Linux ホストの CLI でこれらのコマンドを使用したようすを示しています。

画像 6 は、Linux ターミナル ウィンドウのスクリーンショットです。ターミナルには、pcap からエクスポートされた 2 つのオブジェクトのファイルの種類とハッシュが一覧されています。
図 6. pcap からエクスポートした 2 つのオブジェクトのファイルの種類とハッシュを判定

図 6 のコマンドとその結果を以下に示します。

上記の情報により、この不審な Word 文書は実際に Microsoft Word 文書であることが確認されます。また、不審な Windows 実行可能ファイルは実際に Windows 実行可能ファイルであることも確認されます。VirusTotal でこれらの SHA256 ハッシュを確認し、これらのファイルがマルウェアとして検出されているかどうかを確認できます。また、これらの SHA256 ハッシュでインターネット検索を実行し、追加の情報を見つけることもできます。

これらの Windows 実行可能ファイルそのほかのマルウェア ファイルに加え、暗号化されていない HTTP トラフィックからは Web ページも抽出できます。

Wireshark を使ってチュートリアルの 2 つめの pcap、Wireshark-tutorial-extracting-objects-from-a-pcap-2-of-5.pcap を開いてください。
[翻訳注: チュートリアル 2 つめの pcap からの HTTP トラフィック抽出処理は、隔離された検証環境で行ってください。隔離環境ではない場合は、HTML ファイルの抽出まで行った後、ファイルを Web ブラウザー等で開かないようにしてください]この pcap には、何者かが偽の PayPal ログイン ページにログイン資格情報を入力しているトラフィックが含まれています。

フィッシング サイトから得たネットワーク トラフィックを確認する場合、フィッシング Web ページが実際にどのように見えるかを知りたい場合があります。図 7 に示す [HTTP オブジェクトのエクスポート] メニューを使えば、HTML ページ、画像、そのほかの Web コンテンツを抽出できます。この場合、最初の HTML ページだけを抽出・表示可能です。最初の HTML ページを抽出して Web ブラウザーで表示すると、以下の図 8 に示すページが表示されるはずです。

画像 7 は、Wireshark の [File (ファイル)] メニューのスクリーンショットです。[Export Objects (オブジェクトのエクスポート)] サブメニューが選択され、そのメニューから矢印で [HTTP...] が選択されています。黒い矢印は、「Wireshark Export HTTP object list (Wireshark・エクスポート・HTTP オブジェクト一覧)」というタイトルの新しいポップアップ ウィンドウを指しています。1 行目が選択されていて、黒い矢印が [Save (保存)] ボタンを指しています。
図 7. 2 つめの pcap から偽の PayPal ログイン ページをエクスポートしたところ
画像 8 は、偽の PayPal ログイン ページのスクリーンショットです。PayPal のロゴがあります。[Email (電子メール)] と [Password (パスワード)] のフィールドがあります。[Login (ログイン)] ボタンも表示されています。「Having trouble logging in? (ログインに問題がありますか?)」[Sign up (サインアップ)] ボタンもあります。
図 8. エクスポートされた偽の PayPal ログイン ページを Web ブラウザーで表示したところ
この方法は注意して使ってください。pcap から悪意のある HTML コードを抽出して Web ブラウザで表示すると、その HTML が悪意のあるドメインを呼び出す可能性があります。このため、隔離された検証環境での実行をお勧めします。

SMB トラフィックからのファイルのエクスポート

マルウェアのなかには、Microsoft のサーバー メッセージ ブロック (SMB) プロトコルを使って Active Directory (AD) ベースのネットワーク全体に拡散するものがあります。Trickbot として知られるバンキング型トロイの木馬は、早くも 2017 年 7 月にはEternalBlue をベースとしたエクスプロイトを使い、SMB を介してネットワーク全体に拡散するワーム モジュールを追加しました。Trickbot はすでにアクティブなマルウェア ファミリーではないのですが、このセクションでのチュートリアルにはもってこいなので、ここでは 2019 年 6 月に発生した Trickbot 感染を使います。

Wireshark を使ってチュートリアルの 3 つめの pcap、Wireshark-tutorial-extracting-objects-from-a-pcap-3-of-5.pcap を開いてください。この pcap には、感染クライアントから SMB トラフィックを介してマルウェアがドメイン コントローラーに送信される、2019 年 6 月の Trickbot 感染が含まれています。

この pcap は、次の AD 環境で取得されたものです。

  • ドメイン: cliffstone[.]net
  • ネットワーク セグメント: 10.6.26[.]010.6.26[.]255 (10.6.26[.]0/24)
  • ドメイン コントローラーの IP アドレス: 10.6.26[.]6
  • ドメイン コントローラーのホスト名: CLIFFSTONE-DC
  • セグメント ゲートウェイ: 10.6.26[.]1
  • ブロードキャスト アドレス: 10.6.26[.]255
  • Windows クライアント: QUINN-OFFICE-PC (10.6.26[.]110)

この pcap では、Trickbot 感染が SMB 経由で 10.6.26[.]110 にある感染クライアントから 10.6.26[.]6 にあるドメイン コントローラーへと拡散しています。これと関連するマルウェアを確認するには、図 9 に示すメニュー パスを使います。

  • File (ファイル) → Export Objects (オブジェクトをエクスポート) → SMB...

画像 9 は、Wireshark の [File (ファイル)] メニューのスクリーンショットです。[Export Objects (オブジェクトをエクスポート)] が選ばれています。サブメニューから [SMB...] を選んでいます。
図 9. pcap から SMB オブジェクトをエクスポートするためのメニュー パス
これにより、[Export SMB object list (エクスポート SMB オブジェクト一覧)] が表示され、pcap からエクスポートできる SMB オブジェクトが一覧表示されます (図 10)。

画像 10 は、「Wireshark Export SBM object list (Wireshark・エクスポート・SMB オブジェクト一覧)」というタイトルのウィンドウのスクリーンショットです。列には、packet (パケット)、hostname (ホスト名)、content type (コンテントタイプ)、size (サイズ)、filename (ファイル名) が含まれています。
図 10. Wireshark の「Wireshark Export SBM object list (Wireshark・エクスポート・SMB オブジェクト一覧)」というタイトルのウィンドウ

リストの中央付近にある 2 つのエントリーに「\\10.6.26[.]6\C$」というホスト名のものがあります。それぞれの [Filename (ファイル名)] のフィールドを詳しく調べると、これらが 2 つの Windows 実行可能ファイルであることがわかります。詳細を以下の表 1 で確認してください。

パケット番号                 ホスト名 コンテント タイプ サイズ ファイル名
7058 \\10.6.26[.]6\C$ FILE (712704/712704) W [100.0%] 712 kB \WINDOWS\d0p2nc6ka3f_fixhohlycj4ovqfcy_smchzo_ub83urjpphrwahjwhv_o5c0fvf6.exe
7936 \\10.6.26[.]6\C$ FILE (115712/115712) W [100.0%] 115 kB \WINDOWS\oiku9bu68cxqenfmcsos2aek6t07_guuisgxhllixv8dx2eemqddnhyh46l8n_di.exe

表 1. 2 つの Windows 実行可能ファイルの [Wireshark Export SBM object list (Wireshark・エクスポート・SMB オブジェクト一覧)] データ。

これらのファイルの正確なコピーをエクスポートするには、[コンテントタイプ] 列が「[100.00%]」になっている必要があります。ここが 100% 未満の数値になっている場合、ネットワーク トラフィックでデータが失われてファイルのコピーが破損している、ないし不完全であることを意味します。pcap から得られるこれら Trickbot 関連ファイルは、表 2 に示した SHA256 ファイル ハッシュを持っています。

SHA256 ハッシュ値             ファイル サイズ
59896ae5f3edcb999243c7bfdc0b17eb7fe28f3a66259d797386ea470c010040 712 kB
cf99990bee6c378cbf56239b3cc88276eec348d82740f84e9d5c343751f82560 115 kB

表 2. 3 つめの pcap の SMB トラフィックから見つかった Windows 実行可能ファイルの SHA256 ファイル ハッシュ

SMTP トラフィックからの電子メールのエクスポート

特定の種類のマルウェアは、感染した Windows ホストをスパムボットに変えるように設計されています。これらのスパムボット ホストは、毎分数百通ものスパム メッセージや悪意のある電子メールを送信します。これらのメッセージのいずれかが暗号化されていない SMTP を使用して送信された場合、これらのメッセージを pcap のトラフィックからエクスポートできます。

次に使う pcap (Wireshark-tutorial-extracting-objects-from-a-pcap-4-of-5.pcap) はそうしたサンプルのひとつです。この pcap では、感染した Windows クライアントが セクストーション スパム メッセージを送信します。この pcap には、感染した単一 Windows ホストからの 5 秒間のスパムボット トラフィックが含まれています。

このファイルを Wireshark で開き、図 11 のように表示フィルタに「smtp.data.fragment」と入力してフィルタリングしてください。これにより、Wireshark のパケット一覧部の [Info] 列に 50 件の件名のサンプルが表示されるはずです。

画像 11 は、フィルターを「smtp.data.fragment」に設定した Wireshark のスクリーンショットです。
図 11. 4 つめの pcap で、平文 SMTP トラフィック内の電子メール送信者と件名の行をフィルタリングしたところ

図 12 に示すように、次のメニュー パスを使用してこれらのメッセージをエクスポートできます。

  • File (ファイル) → Export Objects (オブジェクトをエクスポート) → IMF...

IMF は「Internet Message Format」を表し、.eml というファイル拡張子をもつ名前で保存されます。

画像 12 は、Wireshark の [File (ファイル)] メニューのスクリーンショットです。[Export Objects (オブジェクトをエクスポート)] が選ばれています。サブメニューから [IMF...] を選んでいます。
図 12. Wireshark の pcap から電子メールをエクスポートするためのメニュー パス
図 13 に示すように、これらのセクストーション スパム メッセージはすべて、.eml というファイル拡張子つきで IMF オブジェクトの一覧に表示されています。

画像 13 は、「Wireshark Export SBM object list (Wireshark・エクスポート・IMF オブジェクト一覧)」というタイトルのウィンドウのスクリーンショットです。列には、packet (パケット)、hostname (ホスト名)、content type (コンテントタイプ)、size (サイズ)、filename (ファイル名) が含まれています。
図 13. IMF オブジェクト一覧にあるエクスポート可能な電子メール ファイルの一覧

図 14 に示すように、エクスポートされた .eml ファイルはテキスト エディターか Thunderbird のような電子メール クライアントを使って確認できます。

画像 14 は、Mozilla Thunderbird で電子メールを表示したさいのスクリーンショットです。メールの日付は 2019 年 6 月 1 日です。メール件名: Hurry up and pay! ganjaman. この電子メールには「あなたのコンピューターはリモート管理ツールに感染しており、ビットコインで 1600 ドルを支払わない限り、悪意のある人物が全個人データを全連絡先に送信するだろう」と書かれています。ビットコインでの支払い方法とウォレット番号の説明が記載されています。
図 14. Thunderbird を使用して pcap からエクスポートされた電子メールを表示したところ

FTP トラフィックからのファイルのエクスポート

一部のマルウェア ファミリーは、感染時に FTP を使用します。次の pcap には、FTP サーバーから取得されたマルウェア実行可能ファイルが入っています。そのほか、感染 Windows ホストから同じ FTP サーバーに送られた、窃取された情報も入っています。

Wireshark を使って本チュートリアルの最後の pcap、Wireshark-tutorial-extracting-objects-from-a-pcap-5-of-5.pcap を開いてください。Wireshark でこの pcap を開いたら、以下のように入力してフィルタリングします。

  • ftp.request.command or (ftp-data and tcp.seq eq 1)

結果を以下の図 15 に示します。ここでは、ユーザー名 (USER コマンド) と、パスワード (PASS コマンド) を確認できるはずです。この後 RETR というコマンドが続いていますが、これはファイル取得のリクエストです。フィルタリングされた結果からは次のファイルを取得する RETR コマンドが明らかになります。

  • RETR q.exe
  • RETR w.exe
  • RETR e.exe
  • RETR r.exe
  • RETR t.exe
画像 15 は、FTP アクティビティをフィルタリングする設定にした Wireshark のスクリーンショットです。
図 15. Wireshark を使用して 5 つめの pcap で FTP アクティビティをフィルタリングしたところ

図 15 では、この Wireshark フィルターが FTP データ チャネル経由で送信されたファイルの先頭部分も表示しています。これにより、パケット一覧部には、.exeファイルを要求している RETR コマンドの後ろには、リクエストの保存を表す STOR コマンドが続いていて、これらのコマンドは同じ FTP サーバーに対して約 18 秒ごとに HTML ベースのログ ファイルを送信するように要求していることがわかります。

Wireshark バージョン 4.0.0 以降では、図 16 に示すように、次のメニュー パスを使用して FTP データ チャネルからファイルをエクスポートできます。

  • File (ファイル) → Export Objects (オブジェクトをエクスポート) → FTP-DATA...

画像 16 は、Wireshark の [File (ファイル)] メニューのスクリーンショットです。[Export Objects (オブジェクトをエクスポート)] が選ばれています。サブメニューから [FTP-DATA...] を選んでいます。
図 16. Wireshark の 5 つめの pcap から FTP オブジェクトをエクスポートするためのメニュー パス
これにより、[Export FTP-DATA object list (エクスポート FTP-DATA オブジェクト一覧)] というウィンドウが表示され、pcap からエクスポートできる FTP オブジェクトが一覧表示されます (図 17)。ここには、感染 Windows ホストから窃取された情報を含む、FTP サーバーに送信されたすべての HTML ファイルが一覧表示されます。

画像 17 は、「Wireshark Export FTP-DATA object list (Wireshark・エクスポート・FTP-DATA オブジェクト一覧)」というタイトルのウィンドウのスクリーンショットです。列には、packet (パケット)、hostname (ホスト名)、content type (コンテントタイプ)、size (サイズ)、filename (ファイル名) が含まれています。
図 17. FTP-DATA オブジェクト一覧

以下の図 18 に示すように、エクスポートされたファイルはテキスト エディターやブラウザーで表示できます。これらのファイルには、感染ホストの電子メール クライアントと Web ブラウザーから得たログイン認証情報が含まれています。

画像 18 は、重なっている 2 つのウィンドウのスクリーンショットです。背面のウィンドウは、情報の一覧が含まれる HTML ファイルです。前面のウィンドウはテキスト エディターの Mousepad で HTML ファイルを表示したところです。
図 18. エクスポートした .html ファイルをテキスト エディターや Web ブラウザーで見たところ

この FTP-DATA のエクスポート機能は .html ファイルについては有効に機能しますが、FTP サーバーから取得された .exe ファイルについてはどれについても表示してくれません。そこでこれらはべつの方法でエクスポートする必要があります。

その方法の場合、FTP サーバーから返された各 .exe ファイルの FTP データ ストリームの開始位置を見つけねばなりません。それらの TCP フレームを検索するには、次の Wireshark フィルタを使用します。

  • ftp-data.command contains ".exe" and tcp.seq eq 1

結果を以下の図 19 に示します。この図から、.exeファイルごとの FTP データ ストリームを確認できるようになります。

画像 19 は、フィルターを ftp-data.command contains ".exe" and tcp.seq eq 1 に設定した Wireshark のスクリーンショットです。
図 19. FTP サーバーから返された .exe ファイルの FTP データ ストリームの開始位置を確認したところ

図 19 の Wireshark のパケット一覧部に示されている各フレームの TCP ストリームを追跡すればこれらのファイルを TCP ストリーム ウィンドウからエクスポートできます。まず、[Info] 列に「(SIZE q.exe)」と表示されている 1 つめのフレームを選んでください。次に、このフレームを右クリックし、コンテキスト メニューを [Follow (追跡)]、[TCP Stream (TCPストリーム)] の順にクリックしてください。TCP ストリームが追跡されます (図 20)。

画像 20 は、トラフィック内の行をクリックした後、[Follow (追跡)]、[TCP Stream (TCPストリーム)] メニューを選択したさいのスクリーンショットです。ポップアップ ウィンドウには対象の TCP ストリームが表示されます。
図 20. フィルタリング結果に表示された 1 つめの FTP データの TCP ストリームを追跡したところ
TCP ストリーム ウィンドウには、これが Windows 実行可能ファイルまたは DLL ファイルであることを示すヒントが表示されています。つまり、最初の 2 バイトが ASCII 文字で MZ です。TCP ストリームには「This program cannot be run in DOS mode (このプログラムは DOS モードでは実行できません)」という文字列があることもわかります。

ただし、これがほんとうに Windows 実行可能ファイルないし DLL ファイルなのかを確認するには TCP ストリームからエクスポートしてやる必要があります。そうするには、[Show data as (としてデータを表示)] ドロップダウンから [Raw (Raw (無加工) 形式)] を選びます。これを行う方法については、図 21 を参照してください。

画像 21 は、同じ 2 つの TCP ストリーム ウィンドウを並べて表示したスクリーンショットです。左側のウィンドウでは、黒い矢印が [Show data as (としてデータを表示)] ドロップダウン メニューで「ASCII」を指しています。べつの黒い矢印が左ウィンドウから右ウィンドウに伸びていて、この右ウィンドウでは、同じドロップダウン メニューから [Raw (Raw (無加工) 形式)] が選ばれています。
図 21. Wireshark の TCP ストリーム ウィンドウに情報を Raw データとして表示したところ
これで TCP ストリームの情報は 16 進数文字列として表示されて、[Save as... (...として保存)] ボタンを使ってこの Raw データをファイルとしてエクスポートできるようになります (図 22)。これは、q.exe 用の FTP データ ストリームなので、ファイルを保存時に手でその名前を入力してやる必要があります。

画像 22 は、Wireshark の TCP ストリーム ウィンドウのスクリーンショットです。エンド ユーザーは、[Save as...(...として保存)] ボタンからファイルを保存し、ファイル オプションで名前に q.exe を選択しています。
図 22. TCP ストリーム ウィンドウから Raw データをファイルとして保存しているところ
Linux ないし同等の CLI 環境で q.exe ファイルを保存しているのであれば、以下に示すコマンドを使用すると、これが Windows 実行可能ファイルであることを確認して、その SHA256 ハッシュを取得できます。

この SHA256 ハッシュは、VirusTotal でマルウェアとして高い検出率を持つものです。同じやりかたで、pcap 内にあるほかの.exe ファイルもエクスポートします。

これにより、以下の表 3 に示すようなファイルが得られるはずです。

SHA256 ハッシュ値             ファイル名
ca34b0926cdc3242bbfad1c4a0b42cc2750d90db9a272d92cfb6cb7034d2a3bd q.exe
08eb941447078ef2c6ad8d91bb2f52256c09657ecd3d5344023edccf7291e9fc w.exe
32e1b3732cd779af1bf7730d0ec8a7a87a084319f6a0870dc7362a15ddbd3199 e.exe
4ebd58007ee933a0a8348aee2922904a7110b7fb6a316b1c7fb2c6677e613884 r.exe
10ce4b79180a2ddd924fdc95951d968191af2ee3b7dfc96dd6a5714dbeae613a t.exe

表 3. pcap 内の FTP データ トラフィックから得られた実行可能ファイル

この 5 つの .exeファイルはすべて Windows 実行可能ファイルで、どれも VirusTotal でマルウェアとして高い検出率を持っています。

結論

Wireshark を使えば、複数の IP パケットとそれに付随する TCP フレームからのデータを組み合わせて、平文のネットワーク トラフィック上で送信されたオブジェクトを容易に表示させられるのでたいへん便利です。本 Wireshark チュートリアルで解説した方法を使えば、pcap からこれらのオブジェクトを抽出することもできます。不審なアクティビティを調査していてオブジェクトを検査せねばならないとき、この方法は非常に役立ちます。

本シリーズの次回のチュートリアルでは pcap の HTTP トラフィックを復号する方法を取り上げます。

パロアルトネットワークスのお客さまは、Cortex XDRXSIAM により、本稿で取り上げたマルウェア サンプルからより適切に保護されています。また弊社のお客様は、Advanced WildFireDNS SecurityAdvanced Threat PreventionAdvanced URL Filtering などのクラウド配信型セキュリティサービスを有効にした次世代ファイアウォール (NGFW) により、本稿で取り上げた脅威からの保護を受けています。

侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、こちらの問い合わせフォームからご連絡いただくか、infojapan@paloaltonetworks.com まで電子メールにてご連絡いただくか、下記の電話番号までお問い合わせください(ご相談は弊社製品のお客様には限定されません)。

  • 北米フリーダイヤル: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • 日本: (+81) 50-1790-0200

IoC (侵害指標)

本チュートリアルで言及したマルウェアをホストしている URL:

  • hxxp://smart-fax[.]com/Documents/Invoice&MSO-Request.doc
  • hxxp://smart-fax[.]com/knr.exe

本チュートリアルで言及したマルウェアの SHA256 ハッシュ:

  • 08eb941447078ef2c6ad8d91bb2f52256c09657ecd3d5344023edccf7291e9fc
  • 10ce4b79180a2ddd924fdc95951d968191af2ee3b7dfc96dd6a5714dbeae613a
  • 32e1b3732cd779af1bf7730d0ec8a7a87a084319f6a0870dc7362a15ddbd3199
  • 4ebd58007ee933a0a8348aee2922904a7110b7fb6a316b1c7fb2c6677e613884
  • 59896ae5f3edcb999243c7bfdc0b17eb7fe28f3a66259d797386ea470c010040
  • 749e161661290e8a2d190b1a66469744127bc25bf46e5d0c6f2e835f4b92db18
  • cf99990bee6c378cbf56239b3cc88276eec348d82740f84e9d5c343751f82560
  • ca34b0926cdc3242bbfad1c4a0b42cc2750d90db9a272d92cfb6cb7034d2a3bd
  • f808229aa516ba134889f81cd699b8d246d46d796b55e13bee87435889a054fb

追加リソース