検索
連載

Recruit-CSIRTがマルウェアの「培養」用に内製した動的解析環境、その目的と工夫とはマルウェア対策“一部”内製化大解剖(2)(1/2 ページ)

本連載では、ランサムウェアを含む「マルウェア感染」という、さまざまな企業が頭を悩ませる問題について、リクルートグループのコンピュータインシデント対応チーム「Recruit-CSIRT」の発想と技術をお伝えする。今回は、代表的なマルウェア解析方法を紹介し、自社のみに影響があるマルウェアを「培養」するために構築した動的解析環境について解説する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 本連載「マルウェア対策“一部”内製化大解剖」では、ランサムウェアを含む「マルウェア感染」という、さまざまな企業が頭を悩ませる問題について、リクルートグループのコンピューターインシデント対応チーム「Recruit-CSIRT」の発想と技術をお伝えします。

 今回は「リクルートに特化した独自マルウェア解析環境の構築」へのアプローチを紹介します。

 前回の「リクルートのCSIRTが、マルウェア対策の一部を内製化した理由」では、「未知のマルウェアへの対応」と「マルウェアによる情報漏えい経路のブロック」を内製化するに当たっては、マルウェアの挙動ログが必要になる、という課題が残ることを説明しました。

 もちろん、マルウェアの「リバースエンジニアリング※」と呼ばれるソースコード解析手法でも挙動ログの代わりとなる情報は入手できます。今回は、まず代表的なマルウェア解析方法を紹介し、その後、自社のみに影響があるマルウェアを「培養」するために構築した動的解析環境について解説していきます。「培養」は「1つのマルウェアに継続的に餌を与えて、あえて進化・高機能化させること」を意味する、リクルートテクノロジーズの社内呼称です。社外の第三者に攻撃しないように防衛策を実施しながら試行しています。

※リバースエンジニアリングについて

 既存の製品を解体・分解して、製品の仕組みや構成部品、技術要素などを分析する手法の総称。マルウェアにおいては、0と1の機械語の実行ファイルに対して逆アセンブルや逆コンパイルして人が読める形のソースコードを明らかにしていくこと。この記事では難読化されているコードを読める形にすることも含む。


動いた結果(動的解析)と動く予測(静的解析)

 マルウェアを解析する方法として、多くの記事や著書に「表層解析」「動的解析」「静的解析」という手法が記載されています。ここでは、詳細は割愛しますが、「未知のマルウェアかどうかの判定」「マルウェアの通信先(C&Cサーバ)の特定」のためには、一般的にマルウェアに合わせてこれら3つの解析手法の併用が必要です。しかし、内製化運用を行うには、われわれのリソースでは対応しきれない手法がありました。それは、「静的解析」(Static Analytics)です。

 静的解析は、ここまでで紹介した「挙動ログ」つまり動いた結果を出力する「動的解析」(Dynamic Analytics)と呼ばれる手法とは異なり、前述のリバースエンジニアリングによる解析手法です。昨今のマルウェアは、何回も難読化が施されており、正しく読めるソースコードを数時間で抽出するのは難しくなっています。通信先の網羅抽出を検討できたり、機能の全容を知ったりするには必要な手法ですが、「静的解析まで行うマルウェア解析の内製化は難しい」と感じました。全てのマルウェアを迅速に解析するにはさまざまな理由で限界があるからです。

 まとめると、「マルウェアの持っている機能の全容把握」「マルウェア通信先の網羅抽出」の2点が難しくなったことになります。

 しかし、「リクルートグループには影響がない機能や通信であれば、明らかにできなくても良いのではないか?」と考え、「リクルートグループに影響があるマルウェアを動的解析する方法」を模索しました。

まずは自分たちの環境を理解する

 リクルートグループの多くの従業員は、「リクルート標準端末」という業務に最適化された端末で仕事をします。そのため筆者は、まず自分に配布された端末のスペック、インストールされているアプリケーション、常に起動しているプロセスや外部接続している通信先を監視し、リストアップしました。さらに、再起動後に自動実行登録されているプログラムやパーソナルFW(Fire Wall)設定やブラウザの設定、Microsoft Officeの設定などを確認し、詳細理解を深めていきました。

 次に、リクルート標準端末の設計書を見ながら、デフォルトインストールされているアプリケーションの詳細なバージョンや独自アプリの理解を進めました。

 具体的な話はセキュリティ上ここでは書けませんが、Officeやブラウザなど比較的新しいバージョンに寄せて構成されていたので、ちょっと安心したのを覚えています。

動かないものを無視するとは?

 マルウェアは主に下記の要素によって、動作を制御します。

  1. 各種レジストリの内容
  2. 動作環境の時刻
  3. ブラウザのバージョン
  4. ソフトウェアが脆弱(ぜいじゃく)なバージョンで動いているか
  5. ファイルサーバやドメインコントローラーとの接続の有無
  6. DNSサーバの設定
  7. VM(仮想環境)の有無
  8. 解析ツールがインストールされているか、モニターツールが起動しているかの有無
  9. 割り当てられているインターネット出口のIPアドレス

 これらがマルウェアを作成した攻撃者が狙う脆弱性や標的組織の見極め方だとすると、攻撃者の意図したプラットフォームでなければ、マルウェアは悪性な挙動を行うことが難しくなります。実際、以下の理由により、リクルートを標的としない多くのマルウェアがわれわれの環境で動作しませんでした。

  • OSの種類またはバージョンが不一致
  • UAC(User Account Control)などOSのセキュリティ設定により防御
  • DLLなどコンポーネントの欠落
  • Officeオプションのセキュリティ設定による防御

 これ以外に、攻撃者側のマルウェア自体の開発が一部失敗していて悪性挙動まで届かないものもありました。

リクルート標準端末を模倣した解析環境、その3つの工夫

 そこで、「われわれのリクルート標準環境で、長期潜伏やC&Cサーバとの通信などの悪性挙動を実施できたマルウェアは深堀り解析し、動作しない被疑ファイルは深堀りしない」という取捨選択アプローチを採れるようにしました。

 具体的には、社内で「Odoriba」と呼ばれている、リクルート標準端末を模倣した解析環境を構築しました。リクルート端末を動的解析の環境としてそのまま使うことはセキュリティルール上認められないので、「模倣」に徹しました。


Odoribaの概要図

 Odoribaでは、マシンスペックをはじめ、OSや各種Office、ブラウザのバージョン、さらにアンチウイルスソフトやデフォルトインストールされているアプリまで模倣して構築しています。隣接するファイルサーバとドメインコントローラーも構築し、マルウェアの横展開とドメインコントローラーへの不正アクセスを確認できるようにもしています。

 Odoribaならではのポイントが3つあります。

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ

Security & Trust 記事ランキング

  1. Google Cloudがサイバーフィジカルシステムのレジリエンスを高める10の指標を解説 最初にすべきことは?
  2. インサイダーが原因の情報漏えいを経験した国内企業が約3割の今、対策における「責任の所在」の誤解とは
  3. ランサムウェア攻撃を受けた企業、約6割が「サプライチェーンのパートナー経由で影響を受けた」 OpenText調査
  4. 長続きする高度セキュリティ人材育成の秘訣を「第19回情報危機管理コンテスト」から探る
  5. セキュリティ担当者の54%が「脅威検知ツールのせいで仕事が増える」と回答、懸念の正体とは? Vectra AI調査
  6. 「このままゼロトラストへ進んでいいの?」と迷う企業やこれから入門する企業も必見、ゼロトラストの本質、始め方/進め方が分かる無料の電子書籍
  7. OpenAIの生成AIを悪用していた脅威アクターとは? OpenAIが脅威レポートの最新版を公開
  8. 約9割の経営層が「ランサムウェアは危ない」と認識、だが約4割は「問題解決は自分の役割ではない」と考えている Vade調査
  9. AIチャットを全社活用している竹中工務店は生成AIの「ブレーキにはならない」インシデント対策を何からどう進めたのか
  10. セキュリティ専門家も「何かがおかしいけれど、攻撃とは言い切れない」と判断に迷う現象が急増 EGセキュアソリューションズ
ページトップに戻る