マルウェアを解析する:ANY.RUN サンドボックスを用いたハンティングの流れとは?

How to Do Malware Analysis?

2022/09/14 TheHackerNews — Malwarebytes’ Threat Review for 2022 の調査結果によると、2021年には4000万台の Windows ビジネス・コンピュータで脅威が検出された。このような攻撃に対抗し、脅威を回避するためには、マルウェアの解析が欠かせない。今回は、悪意のプログラムの調査の目的と、サンドボックスを使ったマルウェア解析の方法を紹介していく。

マルウェア解析とは?

マルウェア解析とは、悪意のサンプルを調査するプロセスのことである。研究者たちの目的は、悪意のプログラムの種類/機能/コードに加えて、潜在的な危険性を理解することである。そして、侵入に対応するために、組織が必要とする情報を入手することだ。

分析結果から得られるもの:

  • マルウェアの仕組み:プログラムのコードとアルゴリズムを調査すれば、システム全体への感染を阻止できる。
  • プログラムの特徴:ファミリー/タイプ/バージョンなどの、マルウェアに関するデータを用いることで、検出力を向上させられる。
  • マルウェアの目的:サンプルの実行をトリガーにして、侵害の対象とされるデータを確認する。もちろん、安全な環境で行う必要がある。
  • 攻撃の背後にいる人物:IP/発信元/使用された TTP/ハッカーが隠している足跡などを入手する。
  • このような攻撃を、どのように防ぐのかについて、計画を立てる。

マルウェア解析の種類

Static and dynamic malware analysis

マルウェア解析の主なステップ

以下の 5つの Step におよぶ調査の主眼は、悪意のサンプル/実行アルゴリズム/各種シナリオでのマルウェアの動作方法などについて、可能な限り詳細を調べることにある。

悪意のソフトウェアを解析する最も効果的な方法は、静的手法と動的手法を混在させることだと考えている。ここでは、マルウェア解析の方法について簡単に説明する。以下の Step を踏むだけのことである。

Step 1.仮想マシンを設定する

この VM は、ブラウザ/Microsoft Office/OS のビットレート/ロケールなどの、特定の要件でカスタマイズできる。続いて、解析に必要なツールである FakeNet/MITM Proxy/Tor/VPN などをインストールする。それらは、ANY.RUN サンドボックスで簡単に行える。

VM customization in ANY.RUN

Step 2. 静的プロパティの確認

静的なマルウェア解析の Step である。実行ファイルを実行せずに調べる。マルウェアの機能を理解するために文字列をチェックする。ハッシュ/文字列/ヘッダーの内容から、マルウェアの意図の概要を把握できる。

たとえば、以下のスクリーン・ショットでは、Formbook サンプルのハッシュ/PE ヘッダー/MIMEタイプなどの情報が確認できる。マルウェア解析用サンプルの Import セクションを見ると、インポートされた DLL が全てリスト・アップされており、機能性について簡単に理解できる。

Static discovering of the PE file

Step 3. マルウェアの挙動を監視する

ここでは、マルウェア解析の動的アプローチについて説明する。安全な仮想環境にマルウェア・サンプルをアップロードする。マルウェアと直接にインタラクトしてプログラムを動作させ、その実行を観察する。ネットワーク・トラフィック/ファイルの変更/レジストリの変更などを確認する。また、その他の不審なイベントも確認する。

このオンライン・サンドボックス・サンプルでは、ネットワーク・ストリームの内側を見て、C2 へ送られる、攻撃者のクレデンシャル情報と、感染したマシンから盗まれた情報を受け取ることができる。

Attacker’s credentials
Review of the stolen data

Step 4. コードを分解する

脅威アクターがコードを難読化または圧縮した場合には、難読化解除技術とリバース・エンジニアリングを用いてコードを明らかにしていく。これまでの Step では解明されなかった機能を特定する。マルウェアが使用する関数を探すだけでも、その機能について多くのことを把握できる可能性がある。たとえば、関数 InternetOpenUrlA は、このマルウェアが外部サーバと接続することが分かってくる。

この Step では、デバッガや逆アセンブラのようなツールが必要となる。

Step 5. マルウェア・レポートを書く

あなたが発見した、すべてのデータとを取り込んでほしい。以下の情報を提供する。

  • 悪意のプログラムの名前/起源および、主要な機能を含む調査の概要。
  • マルウェアの種類/ファイル名/サイズ/ハッシュ/アンチウイルス検出能力に関する一般的な情報。
  • 悪意の動作/感染アルゴリズム/拡散技術/データ収集/С2 通信の方法に関する説明。
  • 必要な OS のビット数/ソフトウェア/実行ファイル/初期化ファイル/DLL/IP アドレス/スクリプト。
  • 認証情報を盗む場所/ファイルの修正と削除/インストールの有無/値を読み取リ/言語のチェックなどの、動作活動の確認。
  • コード解析の結果/ヘッダーデータ。
  • スクリーンショット/ログ/文字列の行と抜粋など。
  • IOC について。

インタラクティブなマルウェア解析

最新のウイルス対策およびファイアウォールであっても、標的型攻撃/ゼロデイ脆弱性/高度な悪意のプログラム/未知のシグネチャなどによる、未知の危険と脅威は管理できない。これらの課題はすべて、インタラクティブなサンドボックスにより解決できる。

このインタラクティブ性こそが、私たちのサービスの大きな特長である。ANY.RUN を使えば、まるで自分の PC を使うかのように、怪しいサンプルをクリック/実行/印刷/再起動し、ダイレクトに操作できる。また、効果的な結果を得るために、マルウェアの実行を遅らせるなど、さまざまなシナリオを実行できる。

調査中に、以下の操作が可能となる:

  • インタラクティブ・アクセス:VM 上であっても PC と同様に、マウス使用/データ入力/システム再起動/ファイル・オープンなどが操作できる。
  • 設定の変更:プリインストールされたソフトセット/異なるビットレートとビルドの複数の OS が用意されている。
  • VM に必要なツールの選択:FakeNet/MITM Proxy/Tor/OpenVPN。
  • ネットワーク接続の調査:パケット傍受/IPア ドレス・リストの取得。
  • 解析に即座にアクセス:VM は即座に解析プロセスを開始する。
  • システム・プロセスの監視:マルウェアの挙動をリアルタイムで観察。
  • IOC を収集:IPアドレス/ドメイン名/ハッシュなどが利用可能。
  • MITRE ATT@CK マトリクスを入手:TTP を詳細にレビュー。
  • プロセスグラフ:すべてのプロセスをグラフで評価。
  • 既製のマルウェアレポートをダウンロード:すべてのデータを印刷。

これらの機能はすべて、高度なマルウェアを明らかにし、攻撃の解剖学をリアルタイムで確認するのに役立つ。

メール件名に HACKERNEWS のプロモーション・コードを記入し、support@any.run に送れば、14日間の ANY.RUN プレミアム・サブスクリプションを無料で入手できる。

インタラクティブなアプローチで、マルウェアのクラックを試みてほしい。ANY.RUN サンドボックスを使用すれば、マルウェア解析を行い、迅速な結果、シンプルな調査プロセスを得るだけではなく、高度なマルウェアも調査し、詳細なレポートを取得できる。手順に従い、スマートなツールを用いて、マルウェアを上手くハントしよう。

マルウェア・ハンティングを、ANY.RUN サンドボックスというツールを使って広めようという記事です。取得したサンプルをベースにしたマルウェア解析では、いったい何が行われるのだろうという、誰もが持つ疑問に答えてくれていて、見知らぬ世界を身近に感じさせてくれます。こうしたツールや記事があって、この領域に携わる人々が増えていくのだろうと期待してしまいます。とても、大切なことですね。

%d bloggers like this: