クラウド環境においてSysdig Windowsエージェントが重要な理由

By 清水 孝郎 - OCTOBER 15, 2024

SHARE:

本文の内容は、2024年10月10日に Nigel Douglas が投稿したブログ(https://sysdig.com/blog/why-the-sysdig-windows-agent-matters-in-the-cloud/)を元に日本語に翻訳・再構成した内容となっております。

Sysdig Windows エージェントは、特にKubernetes 環境での Windows コンテナのセキュリティ保護に関しては、クラウドインフラストラクチャーにとって画期的なものです。多くのエンドポイント保護エージェントは従来の Windows ホストにセキュリティを提供するように設計されていますが、Sysdig は Kubernetes 固有のコンテキストをシステムイントロスペクションに組み込むことでさらに一歩進んでいます。企業がハイブリッド クラウドとコンテナ化されたインフラストラクチャーを採用するケースが増え、Kubernetes 内で Linux と Windows の両方のワークロードを保護することが必要になっているため、この統合は非常に重要です。

Sysdig Windows エージェントとは?

Windows システムは、ルーブル美術館のような貴重な遺物を所蔵する厳重なセキュリティを備えた博物館です。弊社のエージェントは専門の警備員チームで、ホールを常に巡回し、来場者が遺物に触れないようにし、全員が厳格なルールに従って宝物を安全に保管するようにします。エージェントはオープンソースの Falcoの力を活用し、予期しない振る舞いを検知し、コンプライアンスポリシーを適用することで、堅牢なワークロード セキュリティを確保します。 

Sysdig のアプローチがユニークなのは、Linux ノードで実行されている Kubernetes ポッドで従来見られたのと同じ可視性とセキュリティを、Windows サーバーで実行されているワークロードにもたらしていることです。

Sysdig Windows エージェントがモダンなクラウド環境にとって重要な理由

クラウドネイティブの世界では、組織はすでに Kubernetes とコンテナを急速に導入して、アプリケーションとサービスを拡張しています。クラウド環境では Linux が主流ですが、Windows ワークロードは多くの企業にとって依然として重要なコンポーネントであり、特にWindows および Linux のコンテナ化されたワークロードとホストをホストするイパーコンバージド インフラストラクチャー(HCI) ソリューションを使用してレガシー アプリケーションや特定のエンタープライズ サービスを実行する場合、その重要性は増すばかりです。

Sysdig Windows エージェントを使用すると、企業は Kubernetes 環境で実行されている Windows ワークロードの可視性とセキュリティを獲得し、セキュリティ ポリシーがすべてのワークロードに均一に適用されることを保証できます。この一貫性は、PCI、GDPR、HIPAA などの規制へのコンプライアンスを維持するために不可欠であり、Windows ワークロードがセキュリティ体制の弱点にならないようにするためにも重要です。

さらに、Sysdig のバックエンドと統合することで、Windows エージェントはデータをシームレスに収集および分析し、不正アクセス、ファイルの改ざん、ランタイム異常などの悪意のあるアクティビティをリアルタイムで検出して防止できるようになります。

Sysdig Windows エージェントと一般的な EDR エージェントの違いは何ですか?

1. ネイティブ Kubernetes サポート: Sysdig Windows エージェントの際立った機能の 1 つは、Kubernetes でネイティブに実行できることです。この機能は、スタンドアロンの Windows システムのみに焦点を当てている可能性のある市場の他の Windows エンドポイント保護エージェントとの差別化要因です。エージェントは Kubernetes ノード内で直接動作することで、ポッドメタデータなどの Kubernetes 固有のコンテキストを収集し、Windows コンテナをより詳細に可視化できます。

2. 複数のクラウドにわたる統一された検出ルール セマンティクス:この機能は、Linux と Windows のコンテナを組み合わせた複雑なマルチクラウドまたはハイブリッド環境を運用している企業にとって非常に重要です。Sysdig を使用すると、組織は、同じ Kubernetes クラスター内の Linux または Windows で実行されているかどうかに関係なく、さまざまなワークロードにわたって一貫した検知ルールを確保できます。

3. ETW による非侵入型インストルメンテーション:最後に、Sysdig エージェントはWindows カーネルとのインターフェイスに非侵入型の方法で Windowsイベント トレーシング(ETW) を活用し、テレメトリ データを収集するための追加のカーネルプローブやドライバーの必要性を排除します。ETW API は、ユーザー モード アプリとカーネル モード ドライバーの両方によって生成されたイベントをトレースおよびログに記録する方法を提供します。Windows OS に直接統合された ETW は、開発者に Windows の検出と応答に対する高速で柔軟なアプローチを提供します。

Sysdig Windows エージェントの前提条件とインストール

Sysdig Windows エージェントは現在、最新の Windows ビルドをサポートしており、Windows Server 2019 以上が最低限必要なバージョンです。これは、スタンドアロンの Windows サーバー デプロイメントと、Helm を使用した Kubernetes ベースのデプロイメントの両方に適用されます。

CLI 経由で Sysdig Windows エージェントをインストールする

コマンドラインを好む人にとって、インストール プロセスは簡単です。次のコマンドラインまたは PowerShell コマンドを使用して、Sysdig Windows エージェントをサイレント モードでインストールできます。

msiexec /i sysdig-agent.msi COLLECTOR_URL=<COLLECTOR> COLLECTOR_PORT=6443 ACCESS_KEY=<AGENT_ACCESS_KEY> ACCEPT_TERMS_CONDITIONS=True /qn

このコマンドでは、

  • <COLLECTOR>をあなたのSysdig コレクターの URL に置き換えます。
  • <AGENT_ACCESS_KEY>をあなたのSysdig アクセス キーに置き換えます。

Helm 経由で Kubernetes に Sysdig Windows エージェントをインストールする

Kubernetes ユーザー向けに、Sysdig はClusterShieldを有効にした Windows エージェントのインストールを可能にするHelm チャートを提供しています。ClusterShield は Kubernetes メタデータの強化を強化し、ワークロードに関するより詳細な情報を提供します。

Sysdig Windows エージェントをインストールするための Helm コマンドは次のとおりです。

helm repo add sysdig https://charts.sysdig.com

helm install sysdig-agent --namespace sysdig-agent --create-namespace \

--set global.sysdig.accessKey=<ACCESS_KEY> \

--set global.sysdig.region=<SAAS_REGION> \

--set nodeAnalyzer.enabled=false \

--set global.clusterConfig.name=<CLUSTER_NAME> \

--set agent.windows.enabled=true \

--set clusterShield.enabled=true \

--set clusterShield.cluster_shield.log_level=warn \

--set clusterShield.cluster_shield.features.kubernetes_metadata.enabled=true \

sysdig/sysdig-deploy

主要なHelm フラグ

set global.sysdig.accessKey=<ACCESS_KEY>
このフラグは Sysdig アクセス キーを指定します。

set global.clusterConfig.name=<CLUSTER_NAME>
これにより、Kubernetes クラスターの名前が設定されます。

set agent.windows.enabled=true
これにより、Sysdig Windows エージェントが有効になります。

set clusterShield.enabled=true
セキュリティを強化するために ClusterShield 機能を有効にします。

set clusterShield.cluster_shield.log_level=warn
ログ レベルを「warn」に設定します。つまり、警告と重大な問題のみがログに記録されます。

set clusterShield.cluster_shield.features.kubernetes_metadata.enabled=true
これにより、Kubernetes メタデータの強化が可能になり、Windows ノードで実行されている Kubernetes ワークロードの詳細なコンテキストが提供されます。

Windows 用の検知ルールの作成

Sysdig CNAPPプラットフォームは、コンテナとホストのアクティビティをカバーする、Windows ワークロード向けにカスタマイズされたマネージド Falco ルールを提供します。これらのマネージド ルールは、MITRE ATT&CKなどの確立されたセキュリティ フレームワークと連携しており、より堅牢なサイバーセキュリティ アプローチを実現します。Sysdig では、すぐに使用できる事前構成済みのルールが用意されているため、ユーザーは Windows システムで効果的な脅威検知を迅速に実装できます。

Falcoに基づく検知ルール

DevOps エンジニアリング チームは、システムコール監視によるリアルタイムの脅威検出に使用されるCNCF グラデュエートプロジェクトである Falco をすでによく知っています。新しいソリューションを作成する代わりに、クラウドネイティブ コミュニティが信頼している同じテクノロジーを活用する方が効率的です。Windows 検出ルールはYAMLで記述され、オープンソースの Falco プロジェクトと同じ抽象化に従うため、チームのプロセスが合理化されます。この一貫性により、セキュリティ チームは Linux と Windows の両方のワークロードの検出ルールを迅速に開発でき、独自の検出ロジックをさらに学習する必要がなくなります。

以下は、ポッド内で実行されたコマンド シェル プロセスを検知するためのFalco ルールの基本的な例です。

- rule: Windows Shell Spawned Inside Container

  desc: Detects when the command shell is spawned inside a container.

  condition: >-

    process_execute and container_windows and proc.name in

    (windows_shell_binaries)

  output: >-

    Shell Spawned in Container (evt.type=%evt.type evt.args=%evt.args

    proc.name=%proc.name proc.pname=%proc.pname gparent=%proc.aname[2]

    ggparent=%proc.aname[3] ggparent=%proc.aname[4] container.id=%container.id

    container.name=%container.name container.image=%container.image)

  priority: critical

  tags:

  - Windows

  - Container

  - MITRE_TA0002_execution

  source: windows

Falco ルールでは、リストリソースを参照して監視する Windows シェル バイナリを指定し、検知するプロセス名の範囲を設定できます。

- list: windows_shell_binaries

  items: [cmd.exe, powershell.exe, putty.exe, git-cmd.exe, pwsh.exe]

ルールがトリガーされると、プロセスツリーイベントを通じて親子関係を調べることができます。これにより、Windows コンテナ内で実行されたプロセスと、それに関連付けられたコマンドライン引数を確認できます。さらに、関連する特定のシステムコール イベントタイプに関する詳細な情報を取得できます。


Kubernetes 環境での効果的なインシデント対応には、DevSecOps エンジニアがプロセスとコンテナのアクティビティを、ポッド、ノード、デプロイメント、ネームスペース、クラスター名などの Kubernetes メタデータと関連付ける必要があります。この統合されたコンテキストにより、セキュリティ チームは、プロセスからKubernetes 抽象化までの情報を手動でつなぎ合わせることなく、Windows システムでのインシデントに対応できます。この合理化されたアプローチにより、脅威への対応の速度と精度が大幅に向上します。

Windows ワークロードにおける Kubernetes コンテキストの利点

Sysdig Windows エージェントは、Kubernetes でネイティブに実行することで、いくつかの利点を提供します。

  1. 強化された可視性:エージェントは、ポッドやコンテナの情報を含む詳細な Kubernetes メタデータをキャプチャし、より広範な Kubernetes 環境内で Windows ワークロードがどのように動作しているかを理解しやすくなります。
  2. 統合セキュリティ体制:ワークロードが Linux 上にあるか Windows 上にあるかに関係なく、Sysdig は同じポリシーと保護を適用し、検出と対応の取り組みの一貫性を保証します。
  3. スケーラビリティ: Sysdig のアーキテクチャーは、Kubernetes 環境に合わせて拡張できるように設計されています。つまり、ノードとワークロードを追加すると、Sysdig は自動的に調整され、Runtime Insightsを通じて継続的なCDR保護が提供されます。

まとめ

組織がハイブリッドおよびマルチクラウド環境に移行するにつれて、クロスプラットフォーム、クラウドネイティブ、オンプレミスのセキュリティを提供するツールが不可欠になります。Sysdig Windows Agent は、Sysdig のすでに堅牢なセキュリティ機能を Windows ワークロード、特に Kubernetes 環境に拡張します。Kubernetes 固有のコンテキストを収集し、Sysdig プラットフォームとシームレスに統合することで、Windows Agent は Linux または Windows のすべてのワークロードが保護され、準拠し、潜在的な脅威が監視されることを実現ます。

厳格なセキュリティ標準を維持しながらクラウドインフラストラクチャーを最新化したいと考えている企業にとって、Sysdig Windows Agent は既存のセキュリティツールセットへの重要な追加となります。従来の Windows アプリケーションを実行している場合でも、最新のマイクロサービスを実行している場合でも、Sysdig Windows Agent は、ますます複雑化するサイバー脅威の状況において Windows ワークロードが脆弱にならないようにします。Kubernetes で Windows コンテナを実行するという概念を初めて知る場合は、公式のKubernetes ユーザー ガイドを確認してください。