実務者視点で考える脅威インテリジェンス(第二回)
1. はじめに
第一回のコラムでは、「脅威インテリジェンスという言葉は聞いたことあるが、実態はよくわからない・・・」という方を対象に、脅威インテリジェンスの概要(用語の説明)、脅威インテリジェンスのメリット、活用のサイクルについてご紹介しました。第二回となる本稿では、筆者がインシデント対応に従事する観点から、活用のサイクルについて深堀していきます。
2. 前回のおさらい
本題に入る前に、前回の内容を簡単に振り返ります。前回、脅威インテリジェンスとは、「脅威について人がわかりやすく分析・蓄積し、これらによって敵を知ることができる情報」と説明しました。この脅威インテリジェンスは、マシンリーダブルなIoC(Indicator of Compromise)を中心とした情報を核にし、体系立てた整理や人間による分析を経て得られるヒューマンリーダブルな情報です(下図参照)。一般的に、ヒューマンリーダブル寄りの情報になるほど、効率的に脅威の調査ができる情報となります。
一方で、脅威インテリジェンスの収集や活用は、目的を誤ると使い物にならなかったり無駄なリソースを費やしたりすることにもつながります。したがって、組織において活用目的を定めてそれに応じた活用サイクルを回す必要が出てきます。
3. インシデント対応に従事する観点での活用サイクル
3.1. ①目標選定:どのように活用するか?
どのように脅威インテリジェンスを活用するのかは、組織ごとに異なります。何の目的で、どのように脅威インテリジェンスを活用するのかを定めておくことが必要です。簡単な例を下記に示します。
- ・予防フェーズ(通信検知、遮断など)
「端末からインターネットへの不審な通信を止めたい」というユースケースです。C2サーバー(Command and Control server)やフィッシングサイトなどの悪性な通信先を収集し、セキュリティ機器などに適用することに特化した活用方法です。 - ・対応フェーズ(インシデント調査、対処など)
「セキュリティ機器などで検知した情報の詳細調査をしたい」というユースケースです。調査の糸口となるように広く多数のIoCを収集することが求められますが、IoCの情報だけでは仮にログ等で合致しても「なんの脅威か」はわかりません。このため、脅威を特徴づける情報も収集し、その情報をIoCに付与して脅威インテリジェンスを育てていく作業も求められる活用方法です。
以降は、上記の「対応フェーズ」での活用を例にとりながら説明を進めます。
3.2. ②収集:どのような脅威インテリジェンスを入手するか?
<①目標選定>に沿うIoCを集めていきます。対応フェーズでの活用においては、調査の糸口となるよう広く多数のIoCを収集しつつ、極力脅威を特徴づける情報が含まれるものを取得すると効果的です。下記に、参考となる情報元や情報の選定基準を記載します。
情報の粒度 | 情報元 | 説明 |
---|---|---|
マシンリーダブル寄り | OSINT Feed | 主に、通信先やハッシュ値などのIoCのリストを提供している公開サイトです。有名な提供サイトとして下記があります。
|
コミュニティ(ISAC/グループ会社間) | 特定の業界や企業に関連した非公開のIoCが提供されます。 NTTデータグループでは、MISPを用いて独自のIoCを共有し、脅威の検知/遮断に用いています。 |
|
有償Feed | インテリジェンスベンダ等が提供する脅威インテリジェンスです。IoCに限らず、専門のアナリストによる分析済みの情報(攻撃者や攻撃手法など)が付与されていることもあります。 当社で取り扱っている「EclecticIQ Platform」のオプションサービスとして「FusionCenter」があります。 |
|
ヒューマンリーダブル寄り | セキュリティベンダのブログ SNS ダークウェブ など |
マルウェア解析結果や攻撃事例など、ヒューマンリーダブルな情報がIoCとセットで公開されている場合があります。原則、これらの情報は人が確認/理解した上でIoCに付与していきます。 |
選定基準 | 説明 |
---|---|
数量 (精度とのトレードオフ) |
事前に定めた目的に応じたIoCを必要な分だけ取り込むという観点です。IoCをシステムに取り込む場合等は、その量がサイジングやパフォーマンスへどの程度影響するかを確認します。 対応フェーズでの活用においては、調査の糸口となるよう広く多数のIoCを収集することで、攻撃の痕跡の抜け漏れを減らし、後続の調査にもつながります。 |
中身 | 取得するIoCが通信先なのか通信元なのか、ハッシュ値などの通信先/通信元以外の情報もあるのか、またはタグや分析結果などのヒューマンリーダブルな情報があるか という観点です。 特にヒューマンリーダブル寄りの情報が手に入ると、人による対応の際に有益です。 |
精度 | 取得するIoCがどの程度信頼できるか、正しい情報であるかという観点です。基本的には、信頼できる組織からIoCを集めることが求められます。それ以外の場所からIoCを集める場合は、複数個所から取得することで、同一のIoCを横並びで評価でき、精度が向上します。 |
鮮度 | IoCは現在も有効かという観点です。攻撃者が用いるIPアドレスやマルウェアのハッシュ値は頻繁に変わる傾向が高いことから、IoCの観測した日時などから取捨選択します。 |
形式 | 構造化されたIoCかという観点です。IoCがCSV、JSON、STIX(※)で記述されているとツール等での大量処理や自動化に有益です。 ※脅威情報専用の記述フォーマット |
我々CSIRTのメンバーは、IoCが調査の糸口となるよう、数量を重視(複数のFeedから多数のIoCを取得)しています。統計的にIoCの母数が増えることや、機械的に検知/提供された(人による分析が行われない)IoCも取得することになり、精度(誤検知率)は若干悪くなりますが、調査では人によるIoCの精査も併せて行うため、調査結果の精度には影響しません。
※通信遮断など機械的にIoCを活用する場合は、精度や鮮度を重視するのが良いでしょう。真に遮断すべきIoCを機器に設定することで誤検知を減らし、システム的/人的リソースの減少にもつながります。
3.3. ③処理:どうやって脅威インテリジェンスをため込むか?
<②収集>で集めたIoCを整形したり、データベースに蓄積したりする作業です。IoCの活用目的や量によって専用のツールを使うのが良いでしょう。
- ・少量のインテリジェンスを収集する
- ・Proxyへのブラックリスト適用は手動で行う
→ExcelやCSVファイルを蓄積媒体とし、人/専用のスクリプトで記入していきます。しかし、下記のような高度な使い方にはあまり適していません。
- ・複数のFeedから多数のインテリジェンスを収集したい
- ・アナリストによる脅威インテリジェンスの分析を行いたい
- ・セキュリティ機器との連携を自動化したい など
→このようなユースケースの場合は、脅威インテリジェンスを集める専用のツール「TIP(Threat Intelligence Platform)」を用いるのが良いでしょう。指定したFeedから定期的なIoCの収集機能や、WebUIやAPIを用いた検索機能、特定のIoCのみの抽出機能や他機器との連携プラグインなどが備わっているものがほとんどです。有名どころではオープンソースのMISPや有償のEclecticIQ Platform(以降、EIQ)などのツールがあります。
当社CSIRTでは、2013年より独自システムによるIoCの収集/蓄積を行っており、昨今ではMISPとEIQも併用しています。
3.4. ④分析:情報の整理や追加情報の付与
IoCのようなマシンリーダブルな情報だけでは、仮にログ等で該当しても、「何の脅威か」はわかりません。分析作業は、IoCに情報を付加しヒューマンリーダブルな情報(脅威情報や脅威インテリジェンス)に近づける作業です。
対応フェーズでの活用においては、IoCとして入手した悪性な通信先に対して、「マルウェアA」というタグを付与したり、マルウェアAの検体ハッシュ値を通信先の関連IoCとしてグルーピングしたり、マルウェア解析などから得た攻撃者や攻撃手法などをIoCにコメントとして記入したりします。
この作業は、言い換えれば「脅威に関するレポート」を作成するようなイメージです。基本的には人が実施する作業であり、時間と手間はかかりますが、ログ調査や端末フォレンジックなどを効率的に進められるようになります。
MISPやEIQなどのTIPでは、このような作業を支える機能が標準搭載されています(下図参照)。
MISPにおける分析作業の例
EclecticIQ Platformにおける分析作業の例
3.5. ⑤利用:端末調査や通信遮断
収集/分析したIoCを実際に利用していきます。対応フェーズでの活用において最も典型的な利用例は、端末のマルウェア感染有無調査が挙げられます。
まずは調査の糸口として、ネットワーク機器、Proxyサーバーなどのログから特定期間内の通信先一覧を抽出し、これをTIP内に蓄積した多数のIoCと照合させることで、悪性な通信先へのアクセスがあったかの確認に利用できます。また、IDS/IPS等のセキュリティ機器で悪性な通信を検知した場合は、その検知結果をTIPで検索することにより、IDS/IPSでの検知結果の悪性度合いを第三者的に測るという使い方もできます。
<④分析>で悪性な通信先と関連するIoCとの紐づけができている場合は、通信先からマルウェアのハッシュ値やマルウェア名などの追加情報も手に入れることが可能です。これにより、端末のハッシュ値や、マルウェア名や攻撃手法などから端末のアプリケーション実行履歴など、他の観点を用いた調査にもつながります。
なお、合致したIoCは通信遮断にも利用できます。ただし、「合致したものを何でもかんでも遮断すればよい」というわけではありません。下記のようなケースにより遮断の効果が得られない可能性が考えられるため、必ず人の目による精査や他のセキュリティ機器での検知結果を参考にしながら、遮断を行います。
- ・IoCの鮮度が落ちている
数か月前までは攻撃で用いられていたIPアドレス/ドメインであっても、攻撃者が攻撃環境を乗り換え、現在は使われていない可能性があります。 - ・ホスティングサービスや公開ProxyなどのIPアドレス/ドメイン
プールされたアドレスを複数の利用者(攻撃者も含む)が所有している可能性があり、時々に応じてその素性は異なる場合があります。 - ・正規サイトが所有するIPアドレス/ドメイン
マルウェアの中には、GitHubやOneDriveなどの正規サービスからペイロードをダウンロードする場合がありますが、このようなサービスを一括遮断してしまうと、組織内での正規利用に影響を及ぼす可能性があります。
3.6. ⑥フィードバック:各作業の改善
<⑤利用>の結果を元に、各作業の改善を行っていきます。下記に一例を示します。
- ②収集
実際に利用してみて有益なFeedであったかを元に、既存のFeedの削除や新たなFeedの追加を検討する - ③処理
システムのリソース利用状況や調査での利用実績を元に、IoCの取り込み頻度や対象を見直す
IoCの提供形式に変更はないか、必要に応じてスクリプトやTIPの設定を変更する
Feed間で重複するIoCや特定期間が経ったIoCを削除する - ④分析
IoCに付与するタグやコメント等の記述方法を統一化する
IoCに対してインシデントの調査結果などを記録し、別のインシデント対応の際の効率化につながる - ⑤利用
タグ/コメントの記述統一化を行い、IoCの検索方法を見直す
TIPを用いてIoC照合などの処理の自動化を検討する
調査で利用し、その結果を記録したIoCを自組織/他組織へ共有する
4. まとめ
本稿では、脅威インテリジェンスの活用サイクルについて深堀しました。調査で用いるためのIoCをどのように収集し、どのように利用しているか、皆さんの参考になれば幸いです。