セキュリティコンサルタントの日誌から

セキュリティに関するエッセイなど

Threat Hunting for Dummiesを読んでみた!!

カンファレンスでもらった"Threat Hunting for Dummies"を積読していたのですが、時間ができたので読んで見たのでメモをまとめます。EDRで有名なCarbon Black社が書いているので、クオリティも十分でした。

www.carbonblack.com

Threat Huntingの定義と目的

Threat Huntingについて、以下の用に定義されています。

Threat hunting is, quite simply, the pursuit of abnormal activity on servers and endpoints that may be signs of compromise, intrusion, or exfiltration of data.


Threat Huntingとは、サーバとエンドポイントにおいて、不正アクセス、侵入、データ漏洩等の兆候を示す不審な挙動の追跡を意味する。 

Threat Huntingは、決して新しいコンセプトではないと言われていますが、基本的には能動的に攻撃の痕跡、インシデントの兆候を見つけにいくプロセスを意味します。

セキュリティオペレーションの第一歩は、セキュリティ機器を導入して提供する検知メカニズム(シグニチャ)で検知・対応することが第一ステップとなります。しかし、攻撃手法も高度化し、マルウェアの回避手法(Evasion Technique)も日々洗練しているため、特に最新の攻撃手法が登場した時点では検知メカニズムに組み込まれておらず、検知できないという問題が挙げられます。

また、Ponemon Instituteのレポート『2015 Cost of data breach: Global』によれば悪意のある攻撃による情報漏洩インシデントの検知にかかる平均日数は256日と発表しており、そんなに待っていられないという観点もあります。(Threat Hunting for Dummiesでは、220日と書かれているのですが、出典が不明確なので別のレポートを引用しました)

Threat Huntingの特徴として、共存(IDS・DLPなど既存の検知メカニズムをうまく補う形で使うこと)、人間機械系(ツール・人間それぞれが得意な部分を活用すること)などを挙げています。

また、Huntingの結果として反映された兆候については、自社内のSecurity Operation Team内で共有され、シグニチャ化され、自動化プロセスに組み込まれるため、同じ事象を二回ハンティングすることはないというかなり研究に近いプロセスだと思われます。

The Carbon Black Hunt Chain

Carbon Black Hunt Chainは、Carbon Black社において開発されたThreat Huntingのプロセスのことです。

f:id:security_consultant:20171208020737p:plain

まとめると、大きく4つのフェーズに分類されています。

  • Starting & Refining the Hunt
    ログから正当なアクテビティを取り除き怪しい挙動を絞り込む。その後さらに追加調査を行い、攻撃の痕跡か判定する。
  • Discovery
    攻撃を確認したら、根本原因を分析する。(インシデント対応プロセスの一部でもあるので、引き継ぐ方法もあります。)
  • Response
    攻撃のインパクトを調査した上で、インシデント対応(封じ込め、マルウェアの除去など)を行う。
  • Update Defense
    発見した事象からIoCを作成し、各種セキュリティ機器にカスタムシグニチャを追加したり問題の修正を行う。

では、具体的にどのようにその兆候を見つけるかという点については、基本的にはデータ分析が基本になると思います。アプローチとして、UEBA(User Entity Behavior Analytics) などといったキーワードがありますが、個人的にはData Driven Securityという概念が重要になると思います。また、以下の本は面白かったので推奨します。 

Data-Driven Security: Analysis, Visualization and Dashboards

Data-Driven Security: Analysis, Visualization and Dashboards

 

この本は積読リストに入れていますが、同じような内容ではないかと推測しています。 

Network Security Through Data Analysis: From Data to Action

Network Security Through Data Analysis: From Data to Action

 

有効なThreat Huntingのすすめ

Threat Huntingをする上で、以下の10つのTipが紹介されています。

  1. 自分の環境を深く知ること
  2. 攻撃者の目線で考えること
  3. OODAループを意識すること
  4. ハンティングに十分なリソース(人材・ツール・基盤)を投入すること
  5. エンドポイント全てに対してセンサーを展開すること
  6. ネットワークデータを利用して、エンドポイント分析を支援すること
  7. ITチームと協調的に活動すること
  8. ハンティングプロセス・結果を記録すること
  9. セキュリティスキルを常に向上させること
  10. 攻撃トレンドを正確に抑えること

このTips群は多くの示唆を含んでいると思います。

例えば、「自分の環境を深く知ること」で言えば、自社のネットワークはもちろんのこと、攻撃者が狙う重要資産はどこに配置されているのか、さらにはOSやソフトウェアのノーマルな挙動とアブノーマルな挙動を正確に把握しておく必要があります。また、自社のインシデント対応プロセスやハンティングに使うツールになれておくことも必須です。

ほかにも、「攻撃者の目線で考えること」という部分では、Red Teamの経験などがあると望ましいと思います。個人的には、Red・Blue両方を知るPurple人材こそこういったThreat Huntingをやるべきだと考えていますが、経験がない場合でもCyber Threat Intelligenceを活用してトレンドを押させておくことは重要となります。

また、「ハンティングに十分なリソース(人材・ツール・基盤)を投入すること」も重要です。本書では、「最初は1週間に2時間ほどThreat Huntingに専念する時間を設けるべき」と述べていますが、それを支えるのはエンドポイント・サーバ・ネットワークの可視化であり、大量のログを分析するためのSIEMのような統合分析プラットフォームです。

まとめ

今回は、Threat Huntingのレポートをまとめてみましたが、Threat Huntingは方法論はある程度このレポートで確立されていると感じています。良い教材ですので読んでみると良いと思います。