高度化するマルウエアの攻撃手法、EDRはその手口をどう見抜く

高度化するマルウエアの攻撃手法、EDRはその手口をどう見抜く
高槻 芳 日経クロステック/日経コンピュータ
https://xtech.nikkei.com/atcl/nxt/column/18/01367/082000005/ 

『攻撃の発覚を避けようと工夫する最近のマルウエア。それに対抗するEDRは、端末の多様な情報を収集・解析。攻撃のわずかな痕跡や振る舞いも見逃さない――。その仕組みを解剖する。

 最近のマルウエアは非常に高度な手法を使ってパソコンへの攻撃を隠し、発覚を避けようとしている。マルウエア本体を小型化し、感染先の端末に元からある正規のプログラムを流用するなど、隠蔽の手口は洗練される一方だ。

 その代表例が2019年末から日本に甚大な被害をもたらした「エモテット(Emotet)」だ。このマルウエアはOfficeファイルのマクロを使ってパソコンに感染する。マクロがWindows標準搭載のコマンドラインツール「PowerShell」を起動し、PowerShellコマンドによってEmotet本体をメモリー上にダウンロードして実行する。パソコンのハードディスクにはマルウエアの実行に必要な最低限のファイルしか置かないため、ファイルを分析する従来のウイルス対策ソフトで検知するのは困難だ。

 2020年6月にホンダを襲ったとされるランサムウエア「Ekans」の仕組みも高度だ。本来の攻撃であるファイルの暗号化に先立ち、Windowsが備えるネットワーク設定ツールを使って正規のファイアウオールの設定を変え、端末の通信を妨害していた。これも攻撃の発覚を遅らせる仕組みだ。

 たゆまぬ“研究”の形跡が見られる現代のサイバー攻撃。対抗するには「被害に遭った端末を速やかに発見して対処するのに尽きる」。アクセンチュアでユーザー企業のセキュリティー監視チームなどを支援する、テクノロジーコンサルティング本部セキュリティグループの坂根康之マネジング・ディレクターはこう指摘する。

2つの手法でマルウエアを検知
 対策の要となるのがEDRによって攻撃を「検知」する機能だ。マルウエアが端末の内部に侵入したのか、さらにシステムに感染したのか。それをEDRは主に2種類の手法で検知する。

図 EDRにおける攻撃の「検知」と「封じ込め」
エージェントと解析サーバーが連携して攻撃の痕跡を解析
[画像のクリックで拡大表示]
 1つは、端末のイベントログなどから感染の「痕跡」を見つけ出す手法だ。現実社会の警察官が、事件現場に残された数々の証拠を分析して犯行を特定していくように、EDRはマルウエアの被害に遭った端末や感染範囲などを突き止める。

 EDRは端末に導入したエージェントを使い、端末の様々な情報を収集して記録する。対象とする情報はファイルの作成やプロセスの起動、レジストリーの変更など多岐にわたる。防犯カメラで人の動きを記録するのと同様、端末の挙動を記録し続けている。』

『EDRは記録したデータをクラウド上のサーバーに集めて解析し、攻撃を受けた結果生じる侵害の痕跡がないかどうかを判定する。痕跡とは例えば「マルウエアのハッシュ値やファイル名」「攻撃に利用される外部サーバー(C&Cサーバー)のIPアドレスやURL」「マルウエア感染時に変更されるレジストリー名や値」などだ。EDRベンダーやセキュリティー組織などから「IOC(Indicator of Compromise)」と呼ばれるサイバー攻撃の痕跡情報を入手し、解析に役立てている。

図 マルウエアの感染状況をリモートから調査するEDR
エージェントとクラウド上の解析サーバーが密に連携
[画像のクリックで拡大表示]
 EDRが備えるもう1つの検知手法は、端末の「サイバー攻撃と疑わしい振る舞い」を動的に検知するものだ。前者が過去データに基づく静的な検知とすれば、後者はリアルタイム情報に基づく動的な検知だ。不審な人物の行動をカメラで監視する警備員のように、攻撃時に発生する特徴的な振る舞いをEDRのエージェントやクラウド上のサーバーに組み込んだ検知ロジックで検知する。

 「人工知能(AI)や機械学習を駆使して『どうやら攻撃が始まりそうだ』との兆候を察知する」と、米クラウドストライクのマイケル・セントナスCTO(最高技術責任者)は説明する。

 マルウエア自体は次々に新種が登場し派生しており、IOCなどの痕跡情報を使って網羅的に検知するのは難しい。一方、感染後に生じる端末内部の情報窃取やファイルの暗号化といった攻撃パターンや“クセ”なら、むしろ検知ロジックで絞り込みやすい。こうした考え方に立った検知手法であり、前述のエモテットのように従来のウイルス対策ソフトを欺いて防御をすり抜ける攻撃についても効果が期待できる。

 EDRはマルウエア感染を検知すると、ユーザー企業のSOC(Security Operation Center)やシステム管理者にアラートを送り、自動または手動で感染端末から外部への通信を遮断する。情報漏洩や他の端末への感染拡大を封じ込めた上で、感染した端末を元の状態に修復する。

 こうした一連の検疫活動に並行して、どのような攻撃が行われたかリポートも作成する。検知や封じ込め、修復といった機能は自動化されている場合が多い。だが、人の判断が必要になる巧妙な攻撃の手口については、やはりEDRを導入した全端末から集まる情報を人間が分析し、個別に対策を講じる必要がある。攻撃内容のうちリスクの高いものから優先順位をつけ、全体として迅速かつ合理的な対応を図るのも重要だ。

 EDRは主にイベントログや解析結果を基に、感染の経緯や経路、影響の範囲を調べてリポートを作る。端末がどのようなツールをダウンロードして実行したか、どこに通信しているか、OSの再起動時にマルウエアが実行されるような設定がなされているか、など攻撃の実態を把握していく。

 EDRの中にはAIによる調査支援機能を備えるタイプもある。AIが初期段階でインシデント情報を整理し、優先順位をつけてからSOCの分析官などに渡す。そうすると分析官はより深刻なインシデントに集中して調査できるようになる。

 EDRによる調査支援は攻撃への迅速な対応だけでなく、再攻撃されるリスクを軽減するのにも役立つ。自社を狙う特定の攻撃パターンを把握できれば、それを基に自社専用のIOCを作成できる。それがサイバー攻撃に対する検知精度を高めることにつながる。』