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

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

Threat Huntingとは何か?(2019年度版)

(変更履歴)過去のThreat Huntingに関する記事をいろいろ改善しながら執筆していたのですが、諸般の事情で執筆を中断したので、ブログに投稿しました。

Threat Huntingとは、セキュリティベンダーがシグニチャを提供するまでのゼロデイ期間において攻撃が行われていないか、プロアクティブに調査する一連のプロセスのことです。

Threat Huntingの定義

そもそも、Threat Huntingとは何でしょうか?ここでは、複数のホワイトペーパーからその定義を確認してみましょう。

Sqrrl社の定義

Sqrrl社は、Threat Huntingの分析技術の中でもUEBA(User Entity Behavior Analytics)という技術サービスを専門する企業として知られており、Threat Huntingに関するホワイトペーパーを積極的に発表していることでも有名な企業でした。

ちなみに、Sqrrl社がだしたホワイトペーパー3部作は今もサイトで公開されており、一読の価値はあるのでダウンロードしておいた方が良いかもしれません。

sqrrl.com

2018年1月には、Amazonのクラウド部門に買収され、AWS(Amazon Web Services)に取り込まれる用です。このことから、ますますAWSのセキュリティ機能も強化されるでしょう。

Sqrrl社のホワイトペーパー``A Framework for Cyber Threat Hunting''によれば、以下のように定義されています。

We define hunting as the process of proactively and iteratively searching through networks to detect and isolate advanced threats that evade existing security solutions. 

(筆者簡易訳)\

既存のセキュリティ対策を回避する高度な脅威を検知・隔離するために、能動的かつ再帰的にネットワーク内を探索するプロセス

SANSの定義

他のセキュリティ組織の定義についても確認してみましょう。SANSは、有名な米国のセキュリティ研究教育期間であり、Threat Huntingについてもホワイトペーパーを出しています。ここでは、ホワイトペーパー``The Who, What, Where, When, Why and How of Effective Threat Hunting''の定義を確認してみましょう。

Threat hunters focus their search on adversaries who have those three characteristics and who are already within the networks and systems of the threat hunters’ organization, where they have authority to collect data and deploy countermeasures.

(筆者簡易訳)

Threat Hunterとは、データを収集し、対策を展開できる権限を持つ環境において、脅威の三つの特徴(敵対的意図・能力・機会)を持ち、既に自組織のシステム・ネットワークに侵入している攻撃者の検索に焦点を当てる。

Carbon Black社

Carbon Black社は、EDR(Endpoint Detection \& Response)製品で有名な企業です。端末(Endpoint)は、Threat Huntingでも重要な情報ソースとなり、以下のように定義しています。(参考文献:What is Threat Hunting? | Carbon Black

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

補足事項

このブログでは、「既存のセキュリティ対策を回避する高度な脅威を検知・隔離するために、能動的かつ再帰的にネットワーク内を探索するプロセス」というSqrrl社の定義をもとに議論を進めていきますが、Threat Huntingで重要について少し追加しましょう。
第一に、Threat Huntingは能動的なプロセスであり、既存のセキュリティ機器から通知されるアラートを待つのでは無く、Security Analystが攻撃者に侵入された痕跡がないかを能動的に探索する試みだということです。

第二に、上記の性質からSecurity Analystが主体的に行うプロセスだという点です。当然、各種セキュリティ機器からの通知や機械学習などによるツールによる支援を活用はしますが、あくまでも人による分析がメインという点が重要となります。

なぜThreat Huntingが重要か?

Threat Huntingが重要な理由は、昨今の攻撃手法は高度化してきており、既存の製品を導入していたとしても、攻撃を完全に防ぐことは困難な状況となっています。そのため、セキュリティ機器から通知されるアラートを待っているだけでは、攻撃者に既に社内に侵入されているにも関わらずその事実にすら気付かないという事態が発生してしまいます。

実際に少し前の記事ですが、FireEye 社の年次セキュリティレポート「M-Trends 2017」によると調査対象の組織がセキュリティ侵害を検知するまでグローバルで99 日、アジア太平洋地域に限定すると172 日間もの日数( 中央値) を要しています。これだけの長期間にわたり侵害に気付いていない状況であり、また、半数の組織は外部からの指摘で侵害が発覚したとされています。

Threat Hunting は、積極的に自社組織で侵害を検知することで、侵害から検知までの期間をできる限り短縮するために行われます。このような背景から、昨今、各セキュリティベンダがThreat Hunting という用語を使い出しているのです。

このブログでは、以前脅威に気付く検知レイヤーモデルとして紹介していますが、こうした活動を検知するためにはThreat Huntingは重要になると思います。
www.scientia-security.org

プロセス・モデル

Threat Huntingを行うプロセスについては、プロセス・モデルという形で概念化されています。ここでは、Sqrrl社の代表的なモデル``The Hunting Loop''を紹介します。このほかにも、Carbon Black社が提唱する『The Carbon Black Hunt Chain』モデルやCyberReason社『8 Steps To Start Threat Hunting』モデルなどがありますので、興味がある方は原文に当たってみてください。

www.carbonblack.com

www.cybereason.com

Sqrrl社によれば、Hunting Looとは、以下の通り4種類のフェーズにより構成されています。(図は、Sqrrl社のレポートから引用)

f:id:security_consultant:20170115130234p:plain

Step1. 仮説構築フェーズ(Hypothesis Generation)

Threat Huntingを行う上で一番最初にやるべき重要なフェーズとして、仮説の構築(Hypothesis Generation)が挙げられます。いきなり、「脅威を探し出す」といっても何を調べていいかわからないため、どんな脅威があるか仮説(Hypothesis)を構築し、その仮説を検証する形で脅威を探し出す流れとなります。仮説を構築することでTrailhead(調査の起点)を設定することができるようになります。

Threat Huntingの仮説を構築する際には、大きく2要素が重要となります。

  • 観察(Observation)に基づくこと
  • 検証可能(Testable)であり、検証に必要なデータにアクセスできること

まず第一要素である「観察」とは様々なことが含まれます。過去の経験や知識、あるいは脅威インテリジェンスで得られた知見や共有された情報、「なにか不審に見える挙動」など様々なものが該当し、これらに基づいて仮説を構築します。

また、第二要素で述べられている通り、これらは自分の環境において適切なログが取られており、検証可能でなければなりません。

SANSのホワイトペーパーによれば、仮説の構築方法は大きく3種類あると指摘しています。

Intelligence-Driven Hypotheses

Intelligence-Driven Hypothesesとは、サイバー脅威インテリジェンスチームの情報、すなわちマルウェア分析や脆弱性スキャンの結果、既知のIOCやTTP(Tactics, Technique, Procedure)などを元に仮説を構築する手法です。

インテリジェンスを活用した場合、以下のような仮説が一般的には構築されるはずです。

  • 某攻撃キャンペーンは、X国のインフラストラクチャよりフィッシングメールを送付している。そのため、もし自分の組織が攻撃されているのであれば、メールのログを分析し、送信元IPアドレスとしてX国のログがあるか分析してみる必要がある。
  • ある攻撃グループが利用するマルウェアは、1AM ~ 3AMの時間帯にY国所属のIPアドレスに対して」HTTPで疎通確認を行う傾向が存在する。そのため、もし自分の組織が攻撃されているのであれば、当該時間帯にY国のIPアドレスに対してHTTP通信が発生しているか、プロキシのログを分析する必要がある。

Intelligence-Driven Hypothesesでは、注意すべきことが2点あります。

第一に、「Pyramids of Painの下位にあるIOCsへの過剰な依存を避け、上位概念であるTTPsに焦点を当てる」という点です。マルウェアのハッシュ値やC2通信のIPアドレスなどのIOCsは膨大に存在し、その質も情報源や状況によりバラバラであるため、全部を検証するとほとんど合致せず、膨大な負荷に追われることになります。そのため、IOCsはあくまで素早く成果を出すために活用し、Pyramid of Painの一番上記概念であるTTPsに焦点を当てて分析を行うことに焦点を当てる必要があります。

第二に、このプロセスは動的なプロセスであるという点です。言い換えれば、調査過程で新しい仮説が出てきたり、複数の仮説が構築できる場合もあるという点です。一方、Threat Huntingやツールでは検知できない脅威を見つけるプロセスであるため、いくらでも時間は費やすことができます。そのため、時間に制約がある前提のもと、新しい仮説や複数の仮説が出てきた倍には、もともとの仮説をきちんと完了させることに焦点を当てる一方、新しい仮説はきちんと記録しておき将来のThreat Huntingのために活用することが重要となります。

Situational-Awareness

Situational-Awarenessとは、環境のベースラインをよく把握している環境において、その環境において発生した変化に気付き、仮説を構築する方法です。

ここで重要なことは、「当該環境のベースラインをよく知っていること」です。このとき、攻撃者は価値のある資産、もしくは一番リスクが高い場所から狙いを定めてくることが前提となることから、Crown Jewel analysisやリスク・アセスメントなどを事前にしておくことで集めるべき情報が明確になり、仮説が立てやすくなります。

大きなネットワークではマニュアルで対応することには限界があるため、自動化・リスクアルゴリズムなどAnalytics-Driven Approachを併用するように述べています。具体的には、UEBA・EDR・SIEMなどの各種分析ツール、もしくは機械学習など各種アルゴリズム分析によって抽出された結果をもとに分析を進めていく必要があります。

Domain Expertise

Domain Expertiseとは、過去の経験に基づく仮説です。具体的には、各アナリストは異なる経験を持っているために、文書化による情報共有をして、全員が同じ過去の事例を知っていることが重要だと指摘しています。また、過去の経験に基づく仮説は認知的バイアスにかかっている可能性があるため、その点についても注意する必要があります。

Step 2. 調査フェーズ(Tools and Technique Enabled Investigation)

調査フェーズとは、仮説を検証するためのツール・テクニックを利用して調査を行うフェーズです。テクニック自体は既存のインシデント・レスポンス技術、IOCを使った調査など様々あります。

Step 3. 発見フェーズ(Patterns & TTP Discovery)

発見フェーズとは、攻撃者の行動と攻撃的なTTPsについて発見するフェーズです。このフェーズが終わる時には、Huntingに必要な特徴を把握したことになります。

Step 4. 共有フェーズ(Automated Analytics)

共有フェーズとは、発見したTTP・パターンをIOCとして定義し、各種分析ツール・チームに共有するフェーズです。重要なことは、なるべく手動で同じ調査をすることを減らし、自動化することが重要となります。そのため、IOC化して以降自動検知できるようにする必要があります。

まとめ

 脅威ハンティングは、攻撃者の痕跡を能動的に見つけようという試みですが、常に新しい手法で攻撃者を見つけようとする探偵のような研究のような試みで知的好奇心をくすぐられますので、成熟した組織の方々はぜひご検討ください。(前に米国滞在中にまねごとみたいなことをやりましたが、非常に面白いです。ただ誤検知が多かったですが)

 

Cyber Deception技術とTime Based Security

Cyber Deceptionとは、組織のネットワークに対してDecoy(おとり)を仕掛けることにより、攻撃者のリソースを無駄遣いさせ、重要データに到達するまでの時間を稼ぎ、そして本来絶対にアクセスが発生しない端末・パラメータへのアクセスが発生した場合攻撃を検知する可能性を高める防御手法です。以前も同じ具体的な製品を通じて考察を行いましたが、今回はホワイトペーパーを利用してその考え方・有効性について検討してみたいと思います。

www.scientia-security.org

Cyber Deceptionとは?

サイバーデセプションとは、組織のネットワークに対してDecoy(おとり)を仕掛けることにより、攻撃者のリソースを無駄遣いさせ、重要データに到達するまでの時間を稼ぎ、そして本来絶対にアクセスが発生しない端末・パラメータへのアクセスが発生した場合攻撃を検知する可能性を高める防御手法です。

本論文によれば、この技術は、研究用に利用されたハニーポットの技術を応用したもので、この文献によれば「蜃気楼のネットワークを攻撃者に見せる技術」です。この技術ののアプローチは本来のセキュリティ統制がある程度聞いていることを前提としているため、上級者向けの方法です。

Cyber Deceptionの有効性

Cyber Deceptionの有効性は以下の通りです。

根拠1:攻撃の経済的コスト

 「攻撃の経済的コスト」とは、攻撃者が攻撃に成功するまでに投入する時間的リソースを意味します。サイバー・デセプション技術では、経済的コストを増加させて攻撃を諦
めさせることが目的です。この文献によれば、攻撃に成功するまでの時間がかかるほど、サイバー攻撃が減少すると報告します。

根拠2:Time Based Security

TBS(Time Based Security)は、1999 年にWinn Schwartau 氏が提案したセキュリティの防御システムの定量評価手法です。

  •  Pt > Dt + Rt
    • Pt :防御の仕組みが機能している時間
    • Dt :攻撃を検知するまでに必要な時間
    • Rt :攻撃に対応するために必要な時間

上記不等式が成立する限り、防御システムが有効だと判断できる。サイバー・デセプション技術は、Pt を増やし、Dt を減らす技術です。

Cyber Deceptionの種類

OSINT Layer Cyber Deception

OSINTに対するDeceptionとは、以下のアプローチが考えられます。

  • ダミーとなるネットワーク情報をこっそりインターネット上に公開する。
  • ダミーのプロファイルとメールアドレスをLinkedInへ公開し、当該メールやプロファイルにアクセスをもとに攻撃の兆候を検知する。
  • Deception Networkの存在を示し、本来のネットワークではないほうに誘導する。(ただし、ダミーのネットワーク図を公開すると、変なレピュテーションリスクが発生することもあるので、実施の有無は慎重にすることが望ましいといえます)

Network Layer Layer Cyber Deception

Network Layer Cyber Deceptionとは、Deception Networkを用意してそちらを攻撃させる方法が一般的で、以下の製品が有名でしょう。

www.illusivenetworks.com

cymmetria.com

一方、他の方法も多数存在します。

  • HoneyPot
    • ネットワーク、サーバ(Honey Server)、端末(Honey Endpoint)、アプリケーション(Honey Application)、テーブル(Honey Table)、サービス(Honey Port)などを装って攻撃者を検知する技術です。
  • Honey Data
    • Honey User:偽のユーザ情報
    • Honey Credentials:偽の認証情報
    • Hoeny Files:偽のファイル
  • Honey Tokens
    • Honey Tokensとは、偽の情報(認証・データレコード・特定の文字列)を正当なデータ群(ファイル・データベース・ソースコード・メールリスト)に挿入しておく方法です。
    • 例えば、SQLインジェクションの漏洩を検知するためにデータベース上にダミーの顧客リストテーブル(ACCOUNT_INFOテーブル)などを用意しておく。
  • Breadcrumbs
    • BreadCrumbs(パン粉)とは、Deceptionへ誘導するためにばらまく目印です。

より詳しい情報は以下を参照してください。

insightidr.help.rapid7.com

info.varmour.com

なお、Honeypotを検出するHoneypot Busterというツールも作成されているようなので、より巧妙なDeception Technologyを用意する必要があるかもしれません。

jblog.javelin-networks.com

Web Application Layer Cyber Deception

Web Application Layer Cyber Deceptionは、Web ApplicationにDeceptionを仕掛ける技術です。

  • /admin/ や .htaccess へアクセスした場合通信を遮断したり、逆に攻撃を仕掛けたりする。あるいは、こうしたファイルないに偽情報を流し、別のところに誘導する。
  • パラメータ名を毎回変化させ、攻撃を妨害する。
  • ダミーパラメータを用意し、その値が改竄された場合に攻撃と検知する。

まとめ

Deception Technologyは、攻撃者にアクティブに立ち向かう手法です。もちろん、こうした技術を活用するためには、基本的なセキュリティ対策がしっかりしている、またきちんとしたセキュリティ運用チームを持っているという前提になりますので、検討する際は注意する必要があります。

経営層のための脅威インテリジェンス(Strategic Intelligence)

以前紹介したSANSの"Cyber Threat Intelligence Consumption"では、Strategic Intelligenceとは、経営層に向けたインテリジェンスとされています。経営層(Senior Management)に対する脅威インテリジェンスについて考えてみたいと思います。

なぜ経営層にインテリジェンスが必要なのか?

前提として、組織とは「一定の共通目標を達成するために、成員間の役割や機能が分化・統合されている集団」と定義されています。経営層は、組織が持つ「一定の共通目標」を継続的に実現するために組織を運営しますが、その目的では決して組織のセキュリティレベルを上げることではなく、セキュリティは付随的な課題であるはずです。

最近では、経済産業省が公表した「サイバーセキュリティ経営ガイドライン」により、経営層のサイバーセキュリティへの意識・感度は高くなっている一方、やはりどこまで対策をすればよいのかわからないケースも多く、対策の検討が後回しになっている組織も多いと思います。

そのため、「経営層のためのインテリジェンス」とは、以下のように位置付けたいと思います。

攻撃者・脅威・外部環境に関する情報をもとにリスク管理戦略をを企画・立案し、セキュリティ投資を推進すること

つまり、「どんなセキュリティ戦略をとっていくべきなのか?」、「今後の経営戦略やセキュリティ投資をどうするべきか?」など経営層の意思決定に必要な情報を収集することが目的となります。

事例:NTTコミュニケーションズの事例

例えば、NTTコミュニケーションズは2013年7月にStruts2の脆弱性(S2-016)を悪用されて、IDに使われるメールアドレスと暗号化されたパスワードなど、最大約400万件が流出した可能性があるといわれていました。

この教訓を踏まえた対応として、2017年3月にStruts2の脆弱性(S2-045・S2-046)が公表された際に、同社は脆弱性情報公開日の翌日朝に、OCN配下のサービスを軒並み停止し、被害発生を防ぐという英断を行いました。脅威インテリジェンスを意識してか否かは不明ですが、主要サービスの停止という判断フローを組織内に組み込めたのは、経営層に脆弱性の影響や漏洩発生時に発生するコスト、他組織の動きやマスコミの動向など、様々な情報を経営層にインプットして、組織として業務プロセス等を見直したが故だと推測できます。

インセンティブの重要性

とはいえ、経営層にとってセキュリティは本来の目標ではないため、セキュリティに目を向けリスク管理戦略を推進するためのトリガー、インセンティブ(誘因)が重要となります。

インセンティブとは、経済学の概念で、「人々の意思決定や行動を変化させるような要因」と定義されます。言い換えれば、経営層の行動を変えセキュリティへの投資を積極的に行う動機付け・正当性を与えてあげることにより、経営層はリソースの一部を本来の組織目標からセキュリティへ割り当てるようになるといえます。過去ベストセラーとなった『ヤバい経済学』では、「経済学は突き詰めるとインセンティブの学問だ」と指摘しており、その種類として社会的・経済的・道徳的インセンティブの3種類を挙げていました。

PESTLE分析を応用する

セキュリティの場合、経営層にインセンティブを与える要因は主に外部要因になると思います。ここでは、マーケティングのフレームワークの一つであるPESTLE分析という外部環境分析フレームワークを拝借して考えていきたいと思います。これは、マーケティングを行う際に外部環境を分析する観点です。

なお、コンサルティングなどのビジネス分析の教科書にはこの原型であるPEST分析が有名ですが、ここではその拡張概念であるPESTLE分析を採用しています。それでは、この概念をもとに経営層が興味を持つインセンティブを検討していきましょう。(こうしたフレームワークはいくつも種類があり、他の有名なフレームワークとしてPERSIA[Political, Economic, Religious, Social, Intellectural, Area]などが挙げられます。自社が置かれている環境により考えるべき要素も異なるため、必要に応じて考える必要があります。)

P : Political(政治的要因)

この観点では、組織を脅かす政治的要因(訴訟・特定の組織・団体とのトラブル・政治的情勢)を分析し、脅威を分析する技術です。特に、脅威の構成要素の中でもHostile Intent(敵対的な意図)を持つ団体が存在しないか分析を行います。例えば、「特定の訴訟・対応が反発を招いていないか?」と「政治的情勢を鑑み、自社の情報・立場が狙われる可能性がないか?」という観点で、外部から自社を見て脅威を分析して行きます。ここで重要なことは、自社そのものが攻撃者の狙いでなくても、サプライチェーン攻撃の観点から攻撃者に狙われる「組織の特徴」をもっていないか検証することも重要です。 

E:Economical(経済的観点)

経営層が一般的に投資を決断する際には、セキュリティ投資をしない方が経済的に損失である、言い換えればセキュリティ投資の費用便益分析をした際に、便益の方が上回る必要があります。この観点では、経済合理性の観点から、現時点でのセキュリティレベルがより投資を促すべき状況であることを示し、経営層へのインセンティブを構築します。そのため、他社事例の被害額、自社データの価値などを算出しながら、投資を促すことが重要です。このような分野は「セキュリティ経済学」と呼ばれ、様々な分析が行われています。

S : Social(社会的要因)

社会的要因とは、セキュリティに対する世論の考え方・反応・意見、および同業他社・異業種の取り組みを参考にしながら、自社のセキュリティ状況と比較し、自社への投資判断を促す観点です。世論の考え方、同業他社の考え方は特に重要です。同じサービスレベル・金額であれば、セキュリティの高いほうを利用したいと思うのが一般的ですし、世論の意見もビジネスの継続性等に特に影響します。また、同業他社がやっているからやるというのも立派な要因となり得るでしょう。

日本年金機構が情報漏洩をした際に「通信の全遮断すべき」という意見がでて同じような対応を検討したり、シミュレーションを行った企業は多くと思いますが、このようなアクションも「経営層のためのインテリジェンス」の一つだといえます。(それが本質的な意味でよいかどうかは別の問題です。)

T : Technology(技術的要因)

新しい技術の台頭や、攻撃技術の進歩・トレンドの観点から、自社のセキュリティレベルを点検し、必要に応じてセキュリティ投資を促す観点です。

新しい技術の台頭とは、スマートフォンの登場やクラウドサービスの普及など、新しい技術の台頭・流行を意味します。新しい技術がでれば出るほど、新しいリスクが出てきます。そのため、経営層向けのインテリジェンスを扱う担当者は常にこの手の技術に敏感である必要があります。

一方、攻撃技術の進歩・トレンドの観点では、Opeartional Intelligenceで取得した攻撃トレンド・技術をもとに、自社のリスクを示し、経営者のセキュリティ投資判断を促します。そのためには、自社でリスク分析を行ったり、侵入テスト(Adversary Simulation)などを実施して自分の見解を裏付けることもあります。特に最近では、具体的な侵入手口をもとにリスク分析を行う「攻撃シナリオ分析」という手法も取り入れられ、具体的に投資すべき対象を明確化する手法も存在します。

L : Legal(法的要因)

この観点では法的要因、言い換えれば政府方針、業界団体による規制やガイドラインなどをトリガーにセキュリティ投資を促すもので、Regulation Securityとも呼ばれます。代表的な事例とすると、NY州金融サービス局が金融業界に発表した規制や、PCI-DSS、および金融庁の出す指針などが挙げられます。特にこの観点ではやらない場合のペナルティ等があるため、かなり強いインセンティブとなります。

E : Environment(環境的要因)

この観点は、他社攻撃事例により、セキュリティ投資を促します。言い換えれば、自社が攻撃者にどのように見えるか、それを説明することで投資のインセンティブを提示します。

まとめ

こうした経営層向けの脅威インテリジェンスは、経営層を説得する上で重要な要素です。もちろん、ホラー営業風になってはいけませんが、適切な脅威を紹介し、適切な条件を引き出すことは重要です(但し、投資した場合、その費用対効果は必ず後に問われます。そのため、きちんと運用することも重要となります)

「脅威」について考えてみる

2020/03/21に追記しました。

「サイバー脅威インテリジェンス」、あるいは「脅威ベースのペネトレーションテスト」など、セキュリティの世界では脅威(Threat)という概念が多数出てきます。しかし、脅威(Threat)について具体的な説明があまり知られていないため、この記事ではそのことについて考えてみたいと思います。

脅威の定義も多種多様に存在しまが、米国のセキュリティ研究教育機関SANSで紹介されている定義によれば、以下の3要素で決定するといわれています。以下の定義に従い、詳細を一つづつ見ていきましょう。

敵対的な意図(Hostile Intent) × 機会(Opportunity)× 能力(Capability)  

敵対的な意図(Hostile Intent)

敵対的な意図(Hostile Intent)とは、攻撃者が組織を狙う目的を意味します。そして、攻撃者の目的は以下の3要素により決定されると考えられます。

動機(Motivation)× 組織的資産( Organizational Asset)× 組織的特徴( Organizational Attribution) 

動機(Motivation)

動機(Motivation)とは「なぜ攻撃者は攻撃を行うか?」、背後にあるモチベーションを意味します。この分類には多数の分類がありますので、好みの分類方法を採用してください。例えば、セキュリティベンダーであるFORTINETの記事『Threat Intelligence – Understanding your Threat Actors 101』によれば、攻撃者の動機は大きく6種類に分類されると述べています。

  • 政府関与型(Government Sponsored)
  • 組織犯罪(Organized Crime)
  • ハクティビスト(Hacktivists)
  • 内部関係者による脅威(Insider Threat)
  • 日和見的攻撃(Opportunistic)
  • 内部ユーザのエラー(Internal User Error)

最近のほかの分類だと、Canadian Centre for Cyber Securityの分類が挙げられます。

 

組織的資産(Organizational Asset)

仮に攻撃者の「動機」が存在しても、攻撃によりその動機を満たせるだけの対象がないと意味がありません。例えば、「名声」が目的の攻撃者であればセキュリティ対策がほとんど行われていないスタートアップ企業を狙っても大して動機を満たすことはできないでしょう。「名声」を得るためにはセキュリティ企業や国防産業などセキュリティが特に重視される大企業を対象としないと意味がありません。一方、「金銭」目的の攻撃者にとって、お金や個人情報を取り扱わず、当別な知的財産をもたない企業を狙ってもその目的を満たすことはできないでしょう。

そのため、攻撃者の意図を考える上では、攻撃者の動機を満たすだけの「組織的資産」についても理解をする必要があります。「組織的資産」とは、企業が保有する情報・知的財産・ブランディングなど様々な価値・資産を意味し、これらを窃取して自らの利益に活用したり、破壊して対象組織に被害を与えたりします。

例えば、金銭目的の攻撃者は、これらの資産を盗み取り、自分たちの利益に活用しようするために攻撃を行います。銀行の場合、預金など多くの金融「資産」を持っており、バンキングマルウェアなどはその資産は狙うための意図(Intent)として作成されています。保険会社であれば医療情報・個人情報を持っており、これを狙う攻撃者もいるでしょう。あるいは製造業であれば、知的財産情報(Intellectual Property)や製品自体も立派な「資産」となり、攻撃者が「敵対的な意図」を向ける対象となりますし、企業ブランドも一つの大きな資産として狙われる可能性があります。

以下に、「組織的資産」が狙われた事例を示します。

米医療機器メーカ St. Jude Medical社

(厳密な意味で攻撃者と呼ぶかは議論の余地が残りますが)投資ファンドMuddy Waters Capital社の事例が挙げられます。Muddy Waters Capital社は、米医療機器メーカ St. Jude Medical社の「心臓除細動器にセキュリティ上の脆弱性がある」と発表しました。当該医療機器には、リモートからの任意のコード実行やシステムのクラッシュの可能性など、医療用機器としては致命的な脆弱性が存在していたため、市場も反応し、St. Jude Medical社の株価は急落し、取引停止になりました。

一方、Muddy Waters Capital社は脆弱性情報公開と並行して、同医療機器メーカの株を空売りして、巨額の利益を得ていることが判明しました。特に、Muddy Waters Capital社は脆弱性情報公開のプロモーションがうまく、レポートのみならず専用告知サイトを準備したり、プロの役者によるデモ動画を公開したりするなど、非常に巧妙な手口だと考えられます。

JP Morganの顧客資産を利用した風説の流布

2014年に、JP Morganから8300万件の顧客情報流出が発生しました。そして、2015年7月末に攻撃グループが逮捕され、犯罪の手口が明らかになりました。攻撃グループ得られた顧客リストを利用して、JP Morganの顧客に株に関する偽情報を流し、特定の株価を購入させるように誘導し、株価を釣り上げて売り抜ける手法(Pump & Dump)を実施していました当該攻撃グループは、この攻撃手口を利用して、3億円超の利益を得とされています。

組織的特徴(Organizational Attribution)

自分のところには攻撃者に狙われる重要な「資産」なんてないよ、と思われる方もいらっしゃるかもしれません。しかしながら、皆様にとっては何てこともない「組織的資産」も、「組織的特徴(Organizational  Attribution)」という特徴によっては狙われる要素になる可能性があります。

例えば、ソニーは「組織的特徴」の観点から、複数回攻撃を受けた経験があります。2011年に米国在住のエンジニア、ジョージ・ホッツ氏が、プレイステーション3(PS3)を改造し自作ソフトを動かせるソフト「ルートキー」をウェブ上で公表すると、ソニーは著作権法の侵害の疑いで訴訟を起こしました。このことに反発したハッカー集団、Anonymousなどがソニーを攻撃し、一連のサイバー攻撃騒動に発展した経緯があります 。この際に、Webサイトの改竄が多数行われましたが、客観的に見れば彼らの行った攻撃による金銭的影響は少ないといえますが、この「組織的特徴」が攻撃を引き起こしたといえるでしょう。

また、2013年にはソニーピクチャーズ社が北朝鮮を風刺したコメディー映画「ザ・インタビュー」の公開をうけて、関連があると思われる組織から攻撃を受け、情報漏洩をしたとされています。

あるいは、2018年には平昌オリンピックが行われましたが、ドーピングの疑いで出場停止となったロシアと関連するグループFancy Bearが国際オリンピック委員会と平昌オリンピック運営委員会を攻撃したという報道も話題になりました。

このような有名な事例でなくても、企業ブランド自体も「組織的特徴」の一つだと思います。例えば、攻撃者は軍需産業X社から情報を窃取することを狙っているとしましょう。その場合、その軍需産業に出入りしているベンダーZ社のネットワークやブランド、Z社の社員のメールアドレスは攻撃者にとって非常にとても有用な攻撃資源となります。例えば、当該ベンダーZ社のネットワークを掌握し、様々な情報を収集します。そして、現在動いているプロジェクトのメールを装い、メールアドレスを悪用して攻撃メールを送信します。すると、普段の仕事のやり取りだと思い、被害者となるX社の社員はより警戒感なく、簡単にメールを開いてしまうでしょう。

こういった攻撃は一般に、「サプライチェーン攻撃」と呼ばれます。攻撃者にとって本当に狙っている企業がセキュリティにきちんと投資して守りが固い場合、対象組織に関連のあり防御が手薄なグループ企業、出入りしているベンダー、顧客等を侵入口として、そこを足掛かりに標的となる企業に対して攻撃する手法です。この手法で重要なことは、その組織にとって価値がないものが、攻撃者にとっては狙うべき価値があると可能性があるということです。このようなものこそ、防御が甘くなり狙いやすい状況にあるため、サプライチェーン攻撃は有効なのです。このサプライチェーン攻撃自体は昔から提唱されている方法ですが、最近では有名な事例が出てきています。いかにその事例を示します。

ロッキード・マーティン社の事例

ロッキード・マーティン社は米大手防衛関連企業として知られていますが、2011年5月にサイバー攻撃を受け、内部に侵入をされました。その根本原因は、セキュア接続によく使われるハードウェアトークン「RSA SecurID」の電子鍵を複製して侵入したといわれています。攻撃グループは、ロッキード・マーティン社に侵入する前に、当該トークンを提供しているRSA 社(および親会社EMC)に標的型攻撃を行い、SecurID のトークン技術を盗みだし、それを活用して侵入したとされています。

ランサムウェアNyetya の配布

ランサムウェアNyetya は、2017 年7 月に流行したWannaCry の亜種、あるいは同じ脆弱性を活用しているとされていますが、Cisco のCyber Threat IntelligenceTeam であるTALOS によれば、初期感染経路はウクライナ製の税務会計ソフトウェア「MeDoc」が備えるソフトウェアアップデート機能の脆弱性が悪用されたと報告しています。言い換えれば、ランサムウェアの感染のために、まったく関係ない税務会計ソフトが狙われるサプライチェーン攻撃の典型例だと言えます。

「CCleaner」アップデートの悪用

Pirform 社のシステムクリーナーソフト「CCleaner」のアップデートにマルウェアが仕込まれていた問題が2017 年9 月に発覚した。Cisco の発表によれば、仕込まれていたマルウェアを解析すると、日本、台湾、英国、ドイツ、米国などの大手IT 企業・情報通信企業を狙ったAPT 攻撃である可能性が高いと分析しており、無差別型のマルウェア配布を装ったサプライチェーン攻撃型のAPT 攻撃だと考えられている。

機会(Opportunity)

第二にOpportunity (機会)とは、攻撃の実行を可能にする環境・条件が被害者側に整っていることを意味し、以下の二つに分類されます。

外部環境(External)× 内部環境(Internal)

外部環境

外部環境とは、「被害者が利用しているプロダクトにゼロデイ脆弱性が公開されている」、「確定申告の季節なので、税金がらみのやり取りが増える」、「連休なのでセキュリティ運用の手薄になっている」、「歴史的経緯から攻撃が増える時期である」など、外部要因で決まる攻撃の機会です。

内部環境

内部環境とは、例えば「Webサイトで利用しているプロダクトに脆弱性が公開された」、「メールでのやり取りが多く、ソーシャルエンジニアリング技術を使ってマルウェアを送付しやすい状況にある」など、被害者側の環境が攻撃を行うことに適していることを意味します。

ここで大事な点は、内部環境のみが防御側が唯一コントロールできるパラメータであるという点です。そのため、防御側はCJA(Crown Jewel Analysis)とCyber Hygine(サイバー衛生)の徹底が重要になります。

CJA(Crown Jewel Analysis)

CJA(Crown Jewel Analysis)とは、一言で言えば重要資産の特定です。詳しくは、MITRE社の『Crown Jewel Analysis』に委ねますが、「企業のミッションを達成するために重要なサイバー資産を洗い出す」ことを目的にしています。何をCrown Jewelと見るかは組織・産業によりますが、基本的には知的財産・個人情報(PII・PHI)などが該当するのではないかと思います。

Cyber Hygine(サイバー衛生)

Cyber Hygiene(サイバー衛生)とは公衆衛生学(健康の維持・増進、疾病の予防・発見を目的とする学問)の考え方を借りたもので、「サイバー空間を衛生的に保つため、基本動作の徹底する」という概念です。衛生学的な基本動作として、「定期的な手洗い・うがい」、「マスクの着用」「予防接種」などが挙げられますが、同様に「バッチ管理の徹底」、「最小特権原則の徹底」、「適切なセグメンテーション」、「多要素認証によるアクセス制御」、「暗号化」、「脆弱性スキャン」、「メール訓練」などを徹底し、そもそも感染する可能性(攻撃者にサーバを侵入される可能性)を減らそうとする考え方です。

Capability(能力)

最後にCapability(能力)とは、目的を達成するために必要な攻撃者の能力を意味します。攻撃者がゼロデイ攻撃を悪用するための攻撃コード(Exploit Code)を書いたり、ソーシャルエンジニアリング攻撃を仕掛けられる情報収集スキルがあるか、あるいは十分なリソース(金銭面・人材面・技術面)を保有しているか、などが挙げられます。わかりやすい例を挙げれば、Opportunity (機会)の面で被害者側が特定のプロダクトを利用しており、ゼロデイ脆弱性が公表されているとしましょう。しかし、(当該組織を攻撃しようと思う)攻撃者が攻撃コード(Exploit Code)を書くスキルがなければ、リスクは多少下がると考えられます(実際は、MetasploitやCobalt Strikeなど専用ツールもあるので考えづらいシナリオではあります)。

この攻撃者の能力を理解する上で重要なものとして、MITRE社のATT&CKが挙げられます。これは、Cyber Kill Chainの各フェーズに対するテクニックを解説したナレッジ集でこうしたテクニックを活用していくことを把握しておくことが重要となります。

attack.mitre.org

補足:Threat Actorとは?

ちなみにこういった脅威を考えるとき、攻撃者(Threat Actor・Adversary)をベースに考えることもあります。

以下のブログに丁寧にまとめてあるので、こちらを参照しましょう。

soji256.hatenablog.jp

また、Microsoft Threat Intelligence CenterにいたJohn Lambert氏は、Lambert Adversay Matrixという概念を提唱しています。*1

斜め軸(Axis of Access)が不正アクセス→正規のアクセスへのスペクトラムを示しており、攻撃者の手法が高度化するにつれて、正規のアクセスに近いアクセス手法で情報を盗みに来ます。(Spy lives hereと書かれていますが、スパイはほぼ正規のアクセスと同じ手法を駆使して侵入をするということを意味しています。)

一方、横軸が当該攻撃者を検知する手法(Countermeasure)、縦軸が当該攻撃者を捕まえるインセンティブ(Driver)を意味しています。

「Lamber Adversay matrix」の画像検索結果

補足:MOMモデル

脅威(Threat)をMOMモデルとして表現しているケースも存在します。

Method(能力)× Oppotunity(機会)× Motive(動機)

ja.coursera.org

まとめ

脅威(Threat)の要素のうち、Hostile Intent(敵対的な意図)とCapability(能力)は攻撃者に関する情報です。言い換えれば、Cyber Threat Intelligenceでは攻撃者(Threat Actor)に関する情報を集めないといけないことがわかります。また、Oppotunity(機会)とは攻撃者そのものの問題ではありませんが、脆弱性や攻撃手法のトレンドなど、攻撃者が悪用するポイントの分析になりますので、脆弱性管理チームなどと連携しながら情報を活用していく必要があると考えられます。

*1:元ネタとなるプレゼンテーションが見つからないのですが、Twitterで知ったため間違って理解しているかもしれません

Cyber Threat Attributionとは何か?(2019年度版)

(変更履歴)Political Attributionについて付け加えました。

Cyber Threat Attributionとは、攻撃主体の帰属を特定する技術です。

攻撃者も人間である以上、アイデンティティ(攻撃の目的)、動機、攻撃手口などを持っているはずです。それらを洗い出すことで、自分の組織が狙われないようにする、TTP(Tactics, Techniques, Procedures)を分析して防御に役立てるなど、様々な活用方法が考えられます。

この技術はThreat Intelligenceの中でもOperational Intelligenceのレベルで活用されることが一般的です。以前も講演をもとに攻撃パターン・メタデータ・攻撃リソースを分析する方法を紹介しましたが、少し新しい知見をもとに分析をしてみたいと思います。

www.scientia-security.org

Attributionを行う4つの方法

SANSでは、Robert M. Lee氏の研究に基づき、Attributionは4つの方法があると述べています。但し、この一つに頼ると誤った結論に達するケースが多いため、Intrusion Analysisとその他3つを組み合わせて正しいAttributionを行うべきと述べています。特にAdversary Admissionとして名乗っている組織が本当に攻撃を行っているかなどはわからないモノです。

  • Adversary Admission
    • これは、攻撃グループ自体が自分の犯行であることを認めている場合です。
  • Leaks / OPSEC Failures
    • これは、攻撃グループ内から情報が漏洩する場合です。Edward Snowden氏のように内部の人が情報を漏洩する場合もあれば、OPSEC(作戦行動中のセキュリティ)に漏れがあり、自分の行動がばれてしまうなどのケースも含まれます。
  • Direct Access
    • これは、Cyber HUMINTなどの観点から攻撃者と直接やり取りをして情報を取得する場合です。
  • Intrusion Analysis
    • これは侵入分析を行い、その過程からグループや攻撃キャンペーンについて分析を行うパターンです。この分析には、ACH(競合仮説分析)などを利用します。

 A Guide to Cyber Attribution

一方、ODNI(Office of The Director of National Intelligence)は、Cyber Attributionの短いガイド『A Guide to Cyber Attribution』を公開し、その手法について簡単ながら解説しています。この文書は、上でいう「OpSec Failure」と「Intrusion Analysis」に着目する点を述べていきます。

この文書によれば、注目すべき点は大きく5種類あると述べていますので少し解釈もつけながら説明していきます。

  • Tradecraft(=攻撃パターン)
    • 攻撃時の振る舞い、時間帯・利用する攻撃種類(Web攻撃・マルウェアの特徴)など、攻撃における習慣を意味しています。DNIの資料によれば、こうした習慣は技術的ツールよりもむしろ変更しづらいために、十四な指標だと述べています。但し、この情報は一度外部に出てしまうと、誰でもマネできてしまうため、価値が損なわれるとも書かれています。
  • Infrastructure(=攻撃リソース
    • 攻撃を行う上では、C2サーバなど攻撃の足掛かりとなる攻撃基盤が必要になるため、攻撃基盤の分析することを意味しています。
    • そのため、各種情報(Exploit Kitの種類・攻撃基盤の特徴・XaaSの利用状況・環境の成熟度・ドメイン・IPアドレス・メール・フリードメイン・SNSアカウント)などの情報を収集して分析を行います。
  • Malware(=メタデータ)
    • マルウェアは高度標的型攻撃で必ず登場するもので、エンドポイント(端末)に痕跡が残ります(最近では、ファイルレスマルウェアなどもありますが、とはいえ適切なセンサーがあれば記録は残ります)。そのため、マルウェアやそれに付随する情報(攻撃に利用された文言・特定の文字列・言語・メタデータ・ファイル命名則 etc.)を分析することにより、Attributionに貢献してくれます。
  • Intent(攻撃者の意図)
  • Indicators from External Source
    • 民間企業、メディア、学術界の知見を活用する方法です。

Political Attribution(追記)

LAC社のレポートに、Political Attribution(政治的アトリビューション)という用語が使われています。

今までの議論は、Technical Attribution(技術的なアトリビューション)を中心に議論されていますが、ここでいうPolitical Attributionとは、その当時の政治背景・情勢を踏まえて分析することを意味します。

特に、Technical Attributionは原則、残された痕跡に基づくファクトベースの判断のみになりますので、偽情報(False Flag)などが混在していた場合、誤った判断をする可能性があります。そのため、政治的背景を踏まえて攻撃グループ(Threat Actor)を分析する必要があるという考え方です。

www.lac.co.jp

実際、U.S. CISA(The Cybersecurity and Infrastructure Security Agency)のWebinarでは、中国からの攻撃事例について分析していますが、この中で五カ年計画との関係性を踏まえて分析しています。

www.youtube.com

まとめ

Cyber Threat Attribution技術は、実際にベンダー等のレポートを見ると、推理小説みたいで非常に面白い内容です。ただ、実際の分析で利用するまで成熟の高い企業は少ないとも言えるので、まずは基本に忠実にやることが重要とも言えるでしょう。