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

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

Cyber Attributionに対抗するCyber Disinformation技術

先日参加したShmooConで、Threat Intelligenceの面白い講演があったので共有します。

www.scientia-security.org

Leveraging Threat Intel Disinformation Campaigns

Synack社のCTOであるMark Kuhr氏はNSAの勤務経験もあり、Threat Intelligenceの専門家です。その中で彼はCyber Attributionに関する難しさについて議論していました。

そもそもAttributionとは?

攻撃者も人であるため、アイデンティティ・動機・犯罪の手口(modus operandi)があり、それを特定することがCyber Attributionという技術になります。この技術を応用することで、攻撃者の動向・攻撃の背景・次の攻撃などをつかむことがThreat Intelligence分野には重要な要素になります。特にNation-State Sponsored Hackerが攻撃をしてくるであろう金融・インフラ・軍事産業などでは非常に重要な技術となります。

Anti-Attributionとは?

しかし、情報戦のでは別の誰かが攻撃したように思わせる技術、Anti-Attribution Techniqueも多数存在すると述べています。攻殻機動隊のアニメでよく出てくる台詞「あるいは、我々にそう思わせたい第三者の意図が介在している」ってケースです。

具体的な技術として以下を挙げています。

  • 複数の地理的拠点を経由して攻撃する
  • 異なるインフラストラクチャから攻撃を行う
  • カウンター・インテリジェンス
  • アンチ・フォレンジック技術
  • 偽情報(Disinformation)

Disinformationとオペレーション・フロー

前の章にでてきたDisinformation技術とは、意図的に広められる虚偽・不正確な情報を意味します。要するに、偽の情報を流すことで異なる攻撃者がやったように思わせる技術です。

Mark氏はDisinformationの技術を中心にAnti-Attributionを実現しながら攻撃を行うオペレーション・フローとして以下を紹介しています。

  1. Target Recon
  2. Select Actor to Mimic
  3. Setup Attaack Infrastructure of Mimic
  4. Taint OSINT
  5. Launch Attack
  6. Leak Data & Frame the Mimic
Target Recon

まず、Target Reconフェーズで攻撃対象者に関する情報、それに伴う政治的・社会的・経済的関係を分析します。また同時に、攻撃の容疑を擦り付ける相手(Mimic)に関する情報も収集します。

Select Actor to Mimic

その後、Attribution分析をしたときに、その対象がMimicにいくように仕向けます。例えば、以下の技術が紹介されていました。

  • C&CサーバをMimicの国のIPアドレスを使う
  • ファイル名・パスワードにMimicを示唆する文字列を入れる
  • バイナリファイル・マルウェアの中に、Mimicを示唆する特定の文字列を入れる。言語IDを入れておく。(例えば、アジア関連諸国をMimicにする場合は漢字コードを入れておくなど)
  • HTranやPoisonIvyを利用する
  • Mimicを推測させるドメインを利用する
  • 他の関連するリソースなど(QQ・163.comなど特定の国でよく使われているサービスを含めてみる)など
Setup Attaack Infrastructure of Mimic

その後、Mimic用の攻撃インフラストラクチャを構築します。スピーカーは中国をMimicとする事例を挙げていましたが、その場合は以下のようなことをするそうです。

  1. BAIGE VPNのアカウントを購入
  2. キーボードをセットして、簡易中国語を含むメタデータをコンピュータに設定する
  3. 前段階で取得したドメインをMimicのActor・場所に紐付ける
  4. 当該国から通信が出入りするよう、C2サーバを当該国のVPSに設置する
  5. 163.comにメールアドレスを登録して、フィッシング攻撃を行えるようにする
Taint OSINT(OSINT情報の汚染)

次の段階として、Cyber AttributionではOSINT技術が使われますが、そこで誤った情報に誘導されるようにインターネット上の情報に汚染された情報を流していきます。そのため、前段階でセットアップした新しいインフラをMimicと紐付けていき、最終的にはOSINT分析者が利用しているThreat Intelligence Feed(VirusTotal・AlianVault・OpenPhish)にも汚染されるような状態までの状態を目指します。(例えば、まずは偽装円ウェアを作成して、VirusTotalにアップロードしてMimicにつながるようになどです。

Launch Attack

準備が終わったら、攻撃を実施します。(例えば、標的型攻撃メールを送るなど)

Leak Data & Frame the Mimic

最後の段階として、Mimicに非難が集中するように仕向けます。

  1. 何も認めず、全てを否定し、逆告発をする
  2. Plausible Deniabilityを利用する
  3. Mimicとなる国を非難するよにシフトする
  4. 望むべき結論がでるよう、「独立性のある」第三者と協力する
  5. 全てのインフラストラクチャを削除する

結論...

最後にMark氏はこのように述べています。

  • Attributionは、抑止力のための基礎であり、正しいAttributionなしに抑止力はなしえない。
  • Disinformationは、Threat Intelligenceにおいて大きな問題を投げかけており、間違ったAttributionをもとに特定の国に攻撃的な態度をとった場合、政治的にも大きな問題になりえる。
  • Attributionの正確さを確かめるためには、物理的に攻撃者のマシンを調べるほかにはなく、それ以外の分析は全て"ベストエフォートによる推測"に過ぎず、「大筋正しい」という結論でしかない。そのため、ソースの正確性については常に気をつける必要がある。

まとめ・所感

まるでスパイ映画を見ているような話で非常に面白い話でした。

Cyber AttributionはThreat Intelligenceとあわせて有名になっている技術ですが、やはりNation-Stateレベルの攻撃を警戒する技術であり、成熟度の高い企業、もしくは国家的にも大きな損害をこうむる組織は身につけるべき技術だと思います。

ただ、Cyber Attributionには実は反対意見もあり、「誰が攻撃してきたところで実際に攻撃を防ぐ技術はかわらない」とCyber Attributionの意義を否定する専門家も存在します。

少なくても今後追いかけていくべき技術であるため、今後も紹介していきたいと思います。

ShmooConに参加してきた!!

2017/01/18 一部記事を追加しました。

ShmooConというカンファレンスにいってきました!!

ShmooConはもともとあまり日本であまり有名なカンファレンスではありませんでしたが、以下の記事を見て比較的評判がよいと知り参加した経緯があります。

www.concise-courses.com

今回受けた中で比較的面白かったThreat Intelligence関連の話について、報告したいと思います。

Leveraging Threat Intel Disinformation Campaigns

一つ目は、Cyber Attributionに対抗するCyber Disinformation技術に関する話です。

スピーカーは、Synack社のCTOであるMark Kuhr氏です。彼は、NSAの勤務経験もあり、Threat Intelligenceの専門家です。その中で彼はCyber Attributionに関する難しさについて議論していました。

以下講演内容メモをまとめましたのでご参照ください。

www.scientia-security.org

Does a BEAR Leak in the Woods?

もうひとつの講演が、ThreatConnect社のResearch DirectorToni Gidwani女史の講演です。ThreatConnectのプラットフォームを使ってDemocratic National Committeeに対するFancy Bear(APT28)・Cozy Bear(APT29)のAttribution分析について話をしていました。

非常に面白い分析なので、Threat Intelligence関連に興味がある人は閲覧をお勧めします。(ただ、一番の驚きなのは対して自分とは年齢が離れていないだろうこの人がこれだけのプレゼンテーションをでき、Research Directorとして活躍していることだという事実...)

www.youtube.com

まとめ

全体を通じて見ると比較的アカデミックなカンファレンスを目指している傾向にあると思われますが、全体を通じて理論的な発表が多かった印象です。そのため、明日からすぐに使える話は比較的少なかったように見受けられ、前評判に影響されていたこともあり、個人的には少し期待はずれでした。

Threat Huntingとは何か?(その4)

前回は、Trailhead & Hypothesisについて取り上げました。

www.scientia-security.org

Sqrrl社はThreat Huntingについては様々なことを提唱していますが、"A Framework of Cyber Threat Hunting"というレポートの中で、Threat Hunting Reference Model(Threat Hunting参照モデル)という考え方を提示しており、この分野で重要となる3種類の考え方を提示しています。

  • The Hunting Maturity Model(HMM)
  • The Hunting Loop
  • The Hunt Matrix

今回は、その中からHunting Loopを取り上げてみたいと思います。

なお、以前にAPD(Advanced Persistent Defense)フレームワーク というものを紹介しましたが、現在のSqrrl社はこちらのHunting Loopのほうをよく紹介しています。

www.scientia-security.org

キーワード5:The Hunting Loop

Hunting Loopとは、以下のようなループです。(図は、Sqrrl社のレポートから引用)

f:id:security_consultant:20170115130234p:plain

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

仮説構築フェーズは、前回取り上げたのでそちらを参照してください。

www.scientia-security.org

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

調査フェーズとは、仮説を検証するためのツール・テクニックを利用して調査を行うフェーズです。テクニック自体は既存のインシデント・レスポンス技術、IOCを使った調査など様々ありますが、レポートでは、Link Data Analysisという手法や、分析技術についても言及しています。この手法については、長くなるので別途紹介します。

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

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

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

共有フェーズとは、発見したTTP・パターンをIOCとして定義し、各種分析ツール・チームに共有するフェーズです。重要なことは、なるべく手動で同じ調査をすることを減らし、自動化することが重要となります。やり方としては、Apache SparkやRを使って統計的に分析するなど様々なやり方が存在します。

まとめ

今回は、Threat Hunting Loopを解説しました。このステップはThreat Huntingの重要な要素になるため、知っておいて損はないと思います。

Threat Huntingとは何か?(その3)

先日は、APDフレームワークについて取り上げました。

www.scientia-security.org

今回は、Trailheadというキーワードとその背後にある仮説構築について、ホワイトペーパーを読み解きながらまとめていきたいと思います。

キーワード4:Trailhead & Hypothesis

Trailhead(調査の起点)とは、Threat Huntingに関するプロセスを開始するトリガーのことです。Threat Huntingで分析担当者の重要な役割のひとつに、どんな脅威を捕捉したいのか、どのような方法で見つけられるのか、といった課題設定が挙げられます。この課題設定を「仮説」(Hypothesis)と呼んでいます。つまり、Trailheadとは「設定した仮説」のことを意味します。

それでは、仮説が持つべき要素、仮説を構築する方法論とはどのようなものでしょうか?

仮説が持つべき要素

Threat Huntingの文脈における仮説とは以下の2要素を兼ね備えている必要があります。

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

3つの仮説のタイプ

なお、Sqrrl社によれば、仮説の構築方法は大きく3種類あるとしています。

  • Intelligence-Driven Hypotheses
  • Situational-Awareness
  • Domain Expertise
 Intelligence-Driven Hypotheses

Intelligence-Driven Hypothesesとは、Cyber Threat Intelligenceチームの情報、マルウェア分析や脆弱性スキャンの結果、既知のIOC(Indicator of Compromise)やTTP(Tactics, Technique, Procedure)などを元に仮説を構築する手法です。IOCなどをもとに仮説を構築する手法は一般的な仮説構築手法だといえます。

Situational-Awareness

Situational-Awareness Driven Hypothesisとは、環境におきた変化に気付き、仮説を構築する方法で、ベースラインをよく知っていることが条件となります。このとき、攻撃者は価値のある資産、もしくは一番リスクが高い場所から狙いを定めてくることが前提となることから、Crown Jewel analysisやリスク・アセスメントなどを事前にしておくことで集めるべき情報が明確になり、仮説が立てやすくなります。

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

Domain Expertise

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

まとめ

仮説構築については、いかがだったでしょうか。Cyber Threat Intelligenceの授業でもこれらのことについて触れられます。次は、この仮説を基にした、Threat Hunting Loopについて解説をしたいと思います。

Threat Huntingとは何か?(その2)

先日、Threat Huntingについて、IOCとPyramid of Painについてまとめました。 

www.scientia-security.org

第2回目は、引き続きSqrrl社の記事を元に、別のキーワードを取り上げます。

キーワード3:APDフレームワーク

APD(Advanced Persistent Defense)フレームワークとは、Sqrrl社のセキュリティ・アーキテクトであるDavid Biancoが提唱した標的型攻撃に対する防御フレームワークThe Defense Chainを精緻化したモデルです。

一般に、標的型攻撃への対応フレームワークとして、Cyber Kill Chainというモデルが有名ですが、よりそれをアクティブに対応できるようにしたフレームワークだと述べています。APDフレームワークの最終的なゴールは、Pyramid of Painで提唱されていたように、一番強力なIOCであるTTP(Tactics, Technique, Procedure)を利用して高度な対応をすることにあります。

APDフレームワークは大きく3種類のフェーズ(Intelligence → HuntingResponse)で構成されており、これらを継続的に実施していうことでTPPを効率的に発見し、適用していくことを推奨しています。また、各フェーズごとに実施すべきサイクルが定義されています。(図は、Sqrrl社のブログより引用)

 

f:id:security_consultant:20170114153027p:plain

Intelligence Cycle

Intelligence Cycleとは、方針(Direct)→ 収集(Collect)→ 分析(Analyze)→ 配信(Disseminate)という情報分析のサイクルです。Cyber Threat Intelligenceの講義などでは、以下のようなインテリジェンス・サイクルという分析フローを学びますが、基本的には同じ考えかたです。

インテリジェンス・サイクル - Wikipedia

Hunting Cycle

Hunting Cycleとは、ネットワーク・システム内に隠れている高度な脅威を検出するために、データを積極的かつ反復的に検索することに重点を置いたサイクルです。こちらも、情勢判断(Orient)→ 検索(Query)→ 分析(Analyze)→ 修正(Revise)という4ステップで構築されています。情勢判断フェーズは、Intelligence Cycleによってもたらされたtrailhead(調査の起点)を把握するフェーズです。また、検索・分析フェーズではLinked Data Analysis(リンクデータ分析)という手法が活用されます。この手法については、別途解説します。

Response Cycle

Response Cycleとは、封じ込め(Contain)→ 調査(Investigate)→ 影響緩和(Remediate)という3つのステップで構成されています。各内容はインシデント・レスポンスで一般的な内容かと思いますので省略します。

まとめ

今回は、APD(Advanced Persistent Defense)フレームワークを紹介しましたが、いかがだったでしょうか。APT(Advanced Persistent Threat)に対してどう対応していくべきかわかりやすいグラフになっています。ただ、Sqrrl社はThreat Hunting参照モデルという概念モデルを提唱しており、そこで提唱されているThreat Hunting Loopはもっと簡素化されたモデルとなっています。このモデルについては別の機会に紹介しようと思います。