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

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

『The Sliding Scale of Cyber Security』を再考する

The Sliding Scale of Cyber Security』とは、Robert M. Leeにより提唱された概念で、サイバーセキュリティ態勢の成熟度を表すモデルです。このモデルによると、サイバーセキュリティの成熟度を脅威対応の観点からみて、5段階(Architecture・Passive Defense・Active Defense・Intelligence・Offense)に分類を行っています。

 

f:id:security_consultant:20190209121259p:plain

以前、「脅威の検知レイヤーモデル」という概念を考えましたが、基本的な考え方は同じだと思うので、その考え方も踏まえていきたいと思います。

www.scientia-security.org

その内容を具体的に見ていきましょう。

Architecture

Architectureとは、「セキュリティを念頭において、システムの計画・構築・維持を行うこと」と定義されています。例を挙げれば、適切にネットワークをセグメンテーション(分割)する、各サーバの設定にハードニングの考え方を導入する、などが挙げられます。筆者の考えでは、セキュリティのガイドラインに従って計画・実装を行うという議論に近いと思います。実際、このホワイトペーパーでは、参考になるモデルとして、NIST SP-800シリーズやPCI-DSSを参照すべきと書かれています。

Passive Defense

アメリカ統合参謀本部の資料『DOD Dictionary of Military and Associated Terms』(2019年02月版)では、Passive Defenseは以下のように定義されています。

passive defense - Measures taken to reduce the probability of and to minimize the effects of damage caused by hostile action without the intention of taking the initiative.

 

(筆者簡易訳)

受動的防御 - 主導権を取る意図はなく、敵対的行動によって引き起こされる被害の可能性を低減し、影響を最小限にするための対策

攻撃者は脅威の条件がそろえば、上記のArchitectureをすり抜けようと攻撃を仕掛けてきます。そのため、被害の発生確率を低減し、影響を最小限に押させる対策が必要となります。

サイバーセキュリティの文脈に置き換えれば、セキュリティ製品、例えばウイルス対策ソフト、ファイアウォール、IDSなどの伝統的なツールを導入して被害を防ぐことを意味します。この文脈から、本モデルの提案者は、「人間の継続的な関与なく、攻撃者に対して一貫性のある防御を提供するため、Architectureに追加されたシステム」と定義しています。言い換えれば、シグニチャベースの検知が基本となり、基本的には伝統的かつ汎用的な攻撃への対処を行うレベルです。その代わり、非常に早く対応できるレベルでもあります。

このホワイトペーパーでは、参考になるモデルとして、Defense-In-Depth(多層防御)、NIST SP-800シリーズ、NIST Cybersecurity Frameworkなどを挙げています。

Active Defense

Passive Defenseでは、多くの資金・リソース・能力を持つ高度な攻撃者には対抗できなくなります。そこででてきるのが、Active Defenseです。以前Active Defenseに関する定義に関する記事を書きましたが、ここでは、以下の定義を使っていきます。

アメリカ統合参謀本部の資料『DOD Dictionary of Military and Associated Terms』(2019年02月版)では、Passive Defenseは以下のように定義されています。

active defense — The employment of limited offensive action and counterattacks to deny a contested area or position to the enemy.

 

(筆者簡易訳)

能動的防御 - 限定的な攻撃的活動と反撃の一部を行い、攻撃者に略奪された地域・位置を否定すること

 本ホワイトペーパーでは、「アナリストがネットワーク内部に潜む脅威を監視し、対応し、学び、自分の知識を応用するプロセス」と定義されています。そのため、検知をツール任せにするのではなく、ログを分析したり、ツールで検知された内容を分析していくレベルです。

ここからはホワイトペーパーからは異なりますが、このActive Defenseにはレベルが3種類あると考えています。ここでは、以前提唱した「脅威の検知レイヤーモデル」をもとに考えてみましょう。

f:id:security_consultant:20190317173248p:plain

  • レイヤー1:振る舞い検知型
  • レイヤー2:サイバー脅威インテリジェンス型
  • レイヤー3:脅威ハンティング型
  • レイヤー4:Offensive Countermeasure(上記に記載なし)

このモデルは、レイヤーが大きくなればなるほど高度な脅威に対応できる一方、時間やリソースが必要になります。

第一のレイヤーは、振る舞い検知型です。これは、アノマリー型検知ツールから出てきた結果をログなどを分析して検知する方法です。この方法は、半分ツールベース、半分人間ベースの方法です。

第二のレイヤーは、サイバー脅威インテリジェンス型です。これは、外部から取得した脅威インテリジェンス(IoC)をもとに分析する方法です。脅威インテリジェンスは、基本的にはツールのシグニチャにはなっていない最先端のIoCが共有されるものになりますので、ツールでは検知できない内容ばかりです。

第三のレイヤーは、脅威ハンティング型です。これは、サイバー脅威インテリジェンスの情報や自分の経験から、Aという攻撃手法が脅威インテリジェンスで共有されているのであれば、Bという攻撃手法があるのではないか?などを考えて新しい脅威を見つける方法です。より詳細な考え方については、こちらの記事をご覧ください。

www.scientia-security.org

第四のレイヤーは、Offensive Countermeasureと呼ばれる手法です。この手法は、日本では推奨されていませんが、考え方としては知っておく必要があります。

www.scientia-security.org

Intelligence

 Active DefenseとIntelligenceの違いは分かりづらいと思います。

Active Defenseができたとしても場当たり的であったり、一過性の対応では意味がありません。Intelligenceとは、Active Defenseで作成された結果をもとに、脅威インテリジェンスを作成し、共有したり、次の脅威ハンティングに活用できるレベル、つまり再現性をもって取り組める状態を意味します。

このActive Defense、Intelligenceの状態をうまく表現したモデルとして、Active Cyber Defense CycleとF3EADモデルが挙げられます。

Active Cyber Defense Cycle

Active Cyber Defense Cycleは、4つのフェーズで構成されているモデルです。

f:id:security_consultant:20180207214711p:plain

Phase 1 : Threat Intelligence Consumption

このフェーズでは、組織の目的を正確に理解し、それに関連する脅威インテリジェンスを収集します。その後、Blue Teamがすぐに活用できるように、脅威インテリジェンスを取捨選別し、IoCのような形に情報を翻訳して挙げる必要があります。

Phase 2 : Network Security Monitoring(= Threat Hunting)

Phase 1の情報をもとに、脅威ハンティングを行うフェーズです。具体的には、収集、検知、分析の3フェーズによって構成されており、データを分析しながら攻撃の兆候を見つける脅威インテリジェンスを行うフェーズです。

Phase 3 : Incident Response

脅威インテリジェンスで見つけられた脅威について、封じ込め、脅威の排除などを行うインシデント対応プロセスです。

Phase 4 : Threat and Environment Manipulation

インシデント対応プロセスで収集できた脅威情報をもとに、改善を行うパートです。脅威情報をより深く知るため、フォレンジック、ログ分析、マルウェア解析などいろいろな手法で分析し、よりよいIoCを作成する、あるいは環境を変更してより安全なシステム構成を作成するプロセスです。

F3EAD

F3EADモデルは、以下の6つのフェーズが挙げられます。

  1. Find:調査フェーズ
  2. Fix:決定フェーズ
  3. Finish:完了フェーズ
  4. Exploit:活用フェーズ
  5. Analyze:分析フェーズ
  6. Disseminate:配布フェーズ

詳しい内容はこちらの本をご参照ください。

インテリジェンス駆動型インシデントレスポンス ―攻撃者を出し抜くサイバー脅威インテリジェンスの実践的活用法

インテリジェンス駆動型インシデントレスポンス ―攻撃者を出し抜くサイバー脅威インテリジェンスの実践的活用法

  • 作者: Scott J. Roberts,Rebekah Brown,石川朝久
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/12/26
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る
 

Offense

Offenseとは、Legal CountermeasureやHack-Backを行うという方法です。残念ながら基本的にはこれは推奨できず、基本的には法的に許可された国家レベルの対応になるので、ここまで考える必要はありません。

まとめ

この記事では、Sliding Scale of Cyber Securityについて解説をしました。こうしたフレームワークを知っておくことで、自分の組織がどこにあるのか、何を目指せばよいのか知ることができます。もちろん、ベンダーの態勢評価でも組織の状態は把握できますが、大局的な観点で理解しておくことも重要でしょう。

Anti-Intelligence技術について考えてみる

(変更履歴)ある目的で執筆していたのですが、諸般の事情で執筆を中断したので、ブログに投稿しました。

攻撃者(Adversary)や脅威を理解する上でインテリジェンス技術の幅は様々であり、OSINTやAttributionなどの技術的分析手法や、ダイアモンドモデルなどの情報整理技術などが挙げられます。

一方、インテリジェンス技術に対抗する技術(Anti-Intelligence手法)、言い換えれば「インテリジェンス調査により情報が露呈させないための技術」も少しづつ発達しています。インテリジェンス技術自体は、攻撃者・防御者それぞれの立場で使うことができますが、活用の具体的手法が異なります。本ポストでは、攻撃者・防御者それぞれの目線から、Anti-Intelligence技術について考えて行きたいと思います。

Anti-Intelligence技術とは?

Anti-Intelligence技術とは、インテリジェンス技術に対抗する技術、言い換えればインテリジェンス調査により情報が露呈させない技術の総称です。インテリジェンス技術は攻撃者や防御者の情報を可視化する強力な手法である一方、その技術を応用される立場とすれば、当然不要な情報は露呈しないように対抗したいと考えるようになります。軍関係では、このような情報をOpSec(Opeartional Security)とよんだりすることもあります。逆に、OpSecの失敗は、Cyber Threat Attributionを行う際の一つのきっかけにもなってしまいます。

www.scientia-security.org

Anti-Intelligence技術は、こうしたインテリジェンス調査に対抗する技術として開発された手法です。この手法、攻撃者、防御者それぞれが活用できる技術である一方、その立場により応用する具体的手法は異なります。本章では、それぞれの立場からAnti-Intelligenceについて検討してみたいと思います。

攻撃者目線でのAnti-Intelligence技術

攻撃者側(Adversary)から見れば、インテリジェンス調査で自分たちに関する情報が露呈することは決して好ましいことではありませんし、できる限りその姿を隠したいと考えるのが一般的です。Hactivistのような特定の主張を行う団体でも、その団体の存在意義については露呈したいと考える一方、実際の攻撃手法を隠したいと考えます(実際の攻撃手法が露呈し対抗されてしまえば、Hactivistとしてインパクトを与えられないからです)。そのため、攻撃者(Adversary)が自分たちの脅威やTTPを漏らさないために、自分たちの情報を隠したり、露呈しないようにする技術を開発し、応用するようになりました。

インテリジェンス工作技術の一つとして、外部からの情報収集を困難にさせるフレームワーク「D&D理論」(Denial & Deception - 拒否・欺瞞)がありますが、ここではこの枠組を応用してAnti-Attribution技術を整理したいと思います。

アプローチ1:Denial(拒否)

このアプローチの目的は「敵側の情報収集能力を知ることにより、それに対してカモフラージュ等によって情報へのアクセスや収集を制限すること」です。基本的には、攻撃者が持つ脅威要素・属性情報(Attribution)・TTPを露呈しないために、インテリジェンスによる情報収集・分析をしづらくして情報を秘匿するアプローチです。具体的考え方として以下が挙げられます。

Anti-Forensic

フォレンジック調査によりIOCを作成したり、攻撃手口・目的を特定されないようにするため、フォレンジック調査を妨害する技術をAnti-Forensicと呼びます。この技術を利用することで、攻撃の痕跡を残さない、あるいは調査を妨害し、混乱に落とし入れることが行われます。例えば、マルウェアを難読化して分析をしづらくする、sdeleteを利用して悪性ファイルを復元できないように削除する、ログを改竄して時系列分析ができないようにする、Metasploit Timestompを使ってタイムスタンプ情報を改竄する等の手法が考えられます。

Anti-Attribution

Anti-Attributionとは、攻撃者の属性や攻撃基盤や地理的拠点、あるいは攻撃手法(TTP)を特定されないようにする技術です。具体的には、「利用するマルウェア・攻撃ツールを毎回変更する」、「複数の地理的拠点や踏み台を経由して攻撃する」、「攻撃インフラを定期的に変更する」などの方法が考えられます。昔のスパイ映画では、電話を逆探知する際にあちこちの交換台を経由して発信元にたどり着くまでの時間を稼ぐシーンがよくあると思いますが、これも一つのAnti-Attribution技術です。そのほかにも、「本来の攻撃とは別に、DDoS攻撃など目立つ攻撃を仕掛ける」ことでで本来の攻撃に気付かせないようにする「Loud & Silent」というアプローチなどもここに分類されます。

Anti-OSINT

OSINTで本来の情報にたどれないようにする技術を、Anti-OSINTと呼びます。具体的には、「そもそもOSINTによる情報収集がされないように痕跡を消す」アプローチ以外にも、「まったく関係のないゴミ情報をたくさん発信する」ことにより本来たどり着いてほしくない情報にたどり着きにくくする方法などが存在します。

アプローチ2:Deception(欺瞞)

欺瞞(Deception)とは、「発信する情報の内容を操作することによって、情報収集側の分析者及びユーザの考えをコントロールする工作技術」を意味します。簡単に言えば、意図的に広められる虚偽・不正確な情報(False Flag) を残し、脅威インテリジェンスがその偽情報を追跡する、あるいは別の攻撃者が攻撃したように誘導することでAttributionを避ける攻撃的なアプローチで、Disinformation(偽情報)工作とも呼ばれます。その意味では、攻殻機動隊でよく出てくるセリフのように、「あるいは、我々にそう思わせたい第三者の意図が介在している」を実践でいく技術だといえます。

Disinformation技術については、以下の情報を参照してください。

www.scientia-security.org

防御者目線でのAnti-Intelligence技術

次に、防御者の観点からAnti-Intelligence技術を検討してみたいと思います。

攻撃者側もこうしたインテリジェンス技術の一部を活用して、攻撃対象に対して入念な調査を行っていることが一般的になっています(攻撃モデルのCyber Kill Chainにおいて、最初の第一段階が偵察(Reconnaissance)といわれ、必ず様々な調査を使って調査を着てきます)。そのため、防御者(Defenders)の立場からすれば、攻撃者のこうした「偵察フェーズへの対抗技術」としてAnti-Intelligence技術を応用したいと考えることが重要です。ちなみに、伝統的なインテリジェンスでは、こうした「攻撃側のインテリジェンスへの対抗技術」のことをCounter-Intelligenceとよんでいます。実際に、CIAの公開資料では、以下のように定義されています。

www.cia.gov

More specifically, it is the job of US counterintelligence to identify, assess, neutralize and exploit the intelligence activities of foreign powers, terrorist groups, and other entities that seek to harm us. 

 

(筆者簡易訳)

特に、米国の対抗諜報の役割は、外国勢力、テロリスト集団、その他我々に危害を与えようとする集団の諜報活動を特定・評価し、無効化し、利用することである。

そのため、Cyber Intelligenceの文献でも、最近ではCyber Counter-Intelligenceという概念が登場していますが、主に攻撃者の「偵察フェーズに対抗する具体的手法」として理解することがわかりやすいかと考えられます。こちらの具体的手法についても、「D&D理論」の枠組で整理していきましょう。

アプローチ1:Denial(拒否)

このアプローチの目的は、すでに述べた通り「カモフラージュ等によって情報へのアクセスや収集を制限すること」にあります。そのため、基本的には攻撃者から見て情報が取れないような状態を作り上げることが重要だといえます。

Cyber Hygine

第一に、Cyber Hygine(サイバー衛生)と呼ばれるような攻撃者に付け入る隙を与えない、パッチ管理などのセキュリティの基本動作を徹底することが重要だといえます。

Red Team Operation

また、Tripwire社はブログポストにおいてこのアプローチの重要な要として、セキュリティ診断とレッドチーム診断を挙げています。既に説明した通り、レッドチームは攻撃者のTTPに熟知しているため、この目線でシステムやネットワークのセキュリティレベルをチェックすることでアクセスや収集を制限することが可能となります。

www.tripwire.com

Anti-OSINT

Anti-OSINTと呼ばれる、OSINTで本来の情報にたどれないようにする技術も有効です。具体的なアプローチとして、第三者のコンサルティング会社等に依頼してOSINT調査をいてもらい露呈した情報を洗い出し、削除するというのが一般的アプローチです。

アプローチ2:Deception(欺瞞)

前述でも記載した通り、このアプローチでは「発信する情報の内容を操作することによって、情報収集側の分析者及びユーザの考えをコントロールする」ことを目的としています。

この技術は、Cyber Deceptionと呼ばれ、SNS、ネットワーク、アプリケーション、データベース上などにDecoy(おとり)を仕掛けることにより、攻撃者のリソースを無駄遣いさせたり、Decoyに攻撃を行わせることにより時間を稼いだり、あるいは本来絶対にアクセスが発生しない端末・パラメータへのアクセスが発生したことにより攻撃を検知するなど、様々なベネフィットが存在します。

より詳しくは、以下の記事をご覧ください。

www.scientia-security.org

まとめ

 今回は、脅威インテリジェンス収集に対抗する技術として、攻撃側・防御側それぞれの目線でのどのような活用がされるか記載しました。基本的に、ANti-Intelligence技術は防御・攻撃にもどちらにも利用される技術であるため、攻撃側サービス(Red Team Operation)を行う担当者も防御側を担当する人も知っておくべき技術となります。特に、企業のセキュリティ担当者は自社を攻撃されるリスクを低減するため、Anti-OSINT技術などから初めてみるのがよいのではないでしょうか?

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(環境的要因)

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

まとめ

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