ネクストモードブログ

【Netskope】【CrowdStrike】NetskopeとCrowdStrikeの競合を防ぐプロセスの相互除外手順|Nextmode Blog

作成者: sobar|26/01/19 0:00

はじめに

こんにちは、 ネクストモード株式会社 の sobar です。Netskope&CrowdStrike の運用に役立つTipsをご紹介します。

NetskopeとCrowdStrike を同時に利用の際、互いの動作に干渉せず安定稼働させるための相互除外(Interoperability)する設定方法をご紹介いたします。

相互運用性の構成について

以下、Netskopeテナント、CrowdStrikeテナントのそれぞれの設定により、いずれかのアプリケーションからのプロセスまたはトラフィックがブロックされず、安定した通信を確保するよう設​​定できます。

  • 1. NetskopeテナントでCrowdStrike を証明書固定アプリケーションとして追加
  • 2. CrowdStrikeテナントでのNetskopeプロセス除外対応

※CrowdStrike側でのNetskopeプロセス除外対応について、Netskopeドキュメント上では『CrowdStrikeのDLLのインジェクションにより、不安定性や予期せぬ動作が発生する場合があり、トラブルシューティングのためにCrowdStrikeの設定でNetskopeクライアントのプロセスをホワイトリストに追加することでこの問題を解決できる場合がある』といった記載がありますが、以下の理由よりあらかじめ除外設定を行っておくことが推奨されます。

  • 競合は設定変更やアップデートで突然発生する
    NetskopeとCrowdStrikeは、共にOSの深部(カーネルモードやAPIフック)で動作します。現時点で競合していなくても、エージェントの自動アップデートや検知ロジックの変更により、ある日突然フック処理が衝突し、OSのフリーズやBSoD(ブルースクリーン)を引き起こすリスクがあります。

  • パフォーマンス(動作の軽快さ)の確保
    CrowdStrikeがNetskopeのプロセス(stAgentSvc.exe等)を監視対象とした場合、Netskopeが通信処理を行うたびにCrowdStrikeによる検査が発生します。これによりCPU使用率の上昇や通信遅延(レイテンシ)が発生しユーザー体験を損なう可能性があります。
  • セキュリティベンダー間の「相互不可侵」はベストプラクティス
    異なるEDRやEPP、SASEエージェントを同居させる場合、互いのプロセスを監視対象から外す(相互除外)ことは、セキュリティ業界の一般常識としてほぼ必須のベストプラクティスとされています。Netskopeは信頼できるアプリケーションであるため、CrowdStrikeがその内部メモリや挙動を厳密に監視する必要性は低いと想定されます。したがって、除外設定をすることはセキュリティレベルを下げることにはならず、むしろ「可用性(止まらないこと)」を守るために必要な設定と言えます。

1. NetskopeテナントでCrowdStrike を証明書固定アプリケーションとして追加

Netskope UI で CrowdStrikeプロセスを証明書固定アプリケーションとして通信除外(Bypass)する設定有無を確認します。 Settings > Security Cloud Platform > Steering Configuration > 使用しているConfiguration選択 > Exceptionsタブ  より、Certificate Pinned Apps = CrowdStrike Falcon で検索します。Exceptions にCrowdStrike Falcon のBypass 設定があればOKです。

上記が存在しない場合、Netskope テナントより Settings > Security Cloud Platform > Steering Configuration > 使用しているConfiguration選択 > Exceptionsタブ  > New Exception ボタンのCertificate Pinned Applications をクリック。


以下のようにCrowdStrike Falconを選択しCustom App Domainsに以下を入力して追加します。

  • Certificate Pinned App = CrowdStrike Falcon
  • Custom App Domains:cloudsink.net,crowdstrike.com,falcon.crowdstrike.com
  • Windows&Mac:Bypass

補足)事前定義された証明書固定アプリにはそれぞれ以下のプロセスが含まれています。

  • Windows 用のプロセス
    • CSFalconService.exe
    • system
    • CSFalconContainer.exe
  • macOS 用のプロセス
    • falcond
    • com.crowdstrike.falcon.agent

2. CrowdStrikeテナントでのNetskopeプロセス除外対応

CrowdStrike は、API レベルでアクティビティを監視するために、以下のような DLL を Netskope クライアントプロセスメモリに挿入します。

  • C:\Windows\System32\umppcXXXXXX.dll
  • C:\Windows\System32\ScriptControlXX_XXXXX.dll

※わたしの端末上では以下のように表示されています。

以下より、CrowdStrike コンソールで次のプロセスを除外して、クライアントプロセス実行可能ファイルが DLL によって挿入されるのを禁止します。

  • stAgentSvc.exe

  • stAgentUI.exe

  • nsdiag.exe

エンドポイントセキュリティ > 除外 > センサーの可視性から除外 > 除外を作成 をクリックします。


対象範囲にするホストを選択(今回はホストグループを選択)し次へをクリック


以下3つの除外パターンをそれぞれ別に入力、除外をそれぞれ個別に作成します。

  • C:\Program Files (x86)\Netskope\STAgent\stAgentSvc.exe
  • C:\Program Files (x86)\Netskope\STAgent\stAgentUI.exe
  • C:\Program Files (x86)\Netskope\STAgent\nsdiag.exe

※環境に合わせてパスはご確認ください。

3つそれぞれ作成されていることを確認します。


※以下のようなglob構文を用いてNetskopeフォルダ(STAgent)配下の.exe ファイルすべてに対しての除外とすることもできますが、そこはドキュメントに沿ったかたち(記載されているプロセスに絞ったかたち)で記載いたしました。

  • C:\Program Files (x86)\Netskope\STAgent\*.exe

相互運用性の検証

Netskopeクライアント機能検証

前項の証明書固定アプリ例外設定実施により基本的にはNetskopeクライアント機能は動作します。業務で利用するインターネット通信が問題無いことや、Netskope SWG・CASB機能として通信が問題ことを必要に応じて確認ください。必要に応じて検証済みユースケースのリストもご照ください

CrowdStrike 検証

CrowdStrike Falcon Sensor の動作を確認するには、コマンド プロンプト (cmd.exe) で、次のCrowdStrikeの検知テストコマンドを実行し、検知が実施されることを確認します。
choice /M crowdstrike_sample_detection

これにより検出がトリガーされ、Falcon コンソールでエンドポイントセキュリティ > エンドポイント検知にて該当の検出を確認し、新しいアラートが検出できれば問題ありません。

参考

さいごに

今回はNetskopeとCrowdStrike を同時に利用の際、それぞれがお互いの動作に干渉しないようにするための設定方法をご紹介いたしました。

この記事によってなにか新たな気づきがあり、皆さまの Netskope運用の一助となれば幸いです。

Netskope・CrowdStrike についてのお問い合わせ

Netskope、CrowdStrike の導入、実践的な活用方法、ライセンス体系や価格についてさらに詳しく知りたい方は、ぜひ弊社窓口までお気軽にお問い合わせください。