Sysdigのサーバーレスエージェントでオーケストレータエージェントが不要になりました!

Sysdigのサーバーレスエージェントでオーケストレータエージェントが不要になりました!

Sysdigのサーバーレスエージェントでオーケストレータエージェントが不要になるという激アツアップデートを紹介します!
Clock Icon2025.01.27

お疲れさまです。とーちです。

私はつい最近知ったのですが、昨年の12月にSysdigのサーバーレスエージェントでオーケストレータエージェントが不要になるという激アツアップデートがありました!

Serverless Agent Release Notes | Sysdig Docs

Sysdig サーバーレスエージェントとは

Sysdigは、クラウド環境でのセキュリティ監視を行うためのサービスです。その中でもサーバーレスエージェントは、主にAWS ECS FargateやGoogle Cloud Runなどのサーバーレス環境での実行時セキュリティ監視を提供します。

とりあえずまとめ

  • アップデートによりSysdig Serverless Agent 5.3.0以上のバージョンからはオーケストレータエージェントが不要になった
  • オーケストレータエージェントは次のメジャーリリースで廃止する予定とのことなので移行はお早めに(ご参考
  • NLBとECSで構成されていたオーケストレータエージェントが不要になることでコスト削減が可能に
  • 移行は環境変数の変更だけで完了できる

どのように変わった?

従来のSysdigサーバーレスエージェントでは、以下の図のようにオーケストレータエージェントという形でNLBとECSを使った構成が必要でした。NLBとECSの月額費用が余計にかかるので気になっていた方もいたのではないでしょうか?
新しい構成では以下の図のようにオーケストレーターの部分が丸々不要となりました!

image.png

オーケストレータエージェント構成から新しい構成に移行してみた

既存環境の確認

ここからは従来のオーケストレータエージェント構成から新しいオーケストレータエージェント不要な構成への移行をやってみたので紹介します。

既存のオーケストレータエージェント構成を作成するTerraformコードを以下のGitHubリポジトリに置きました。このコードを使ってまずは既存の構成を作ってみます。なお、今回のコードはこちらのGitHubのコードを参考にさせて頂きました。

https://github.com/ice1203/blog-sysdig-Agent-migration/tree/dev

Terraformの構成は大まかに以下のようになっています

  • main.tf:VPCとオーケストレータエージェント作成
  • workload-security-playground.tf:脅威検知動作確認用のsecurity-playgroundというコンテナを実行するECSリソース一式

念の為、この構成で脅威検知できることを確認しましたが、問題なく脅威検知できています。

image.png

新構成への移行

移行の流れは大きく以下の2ステップです

  1. Sysdigを使用して監視したいECSタスクの環境変数を変更
  2. オーケストレータエージェントの削除

1. 環境変数の変更

オーケストレータ構成からの移行については以下ドキュメントに記載があります。

https://docs.sysdig.com/en/docs/sysdig-secure/install-agent-components/linux-on-serverless/ecs-fargate/#migrating-from-orchestrator

こちらのドキュメントによると移行するにはECSタスクに指定する環境変数を以下のように書き換えれば良いようです。

変更前:

SYSDIG_ORCHESTRATOR
SYSDIG_ORCHESTRATOR_PORT

変更後:

SYSDIG_COLLECTOR
SYSDIG_COLLECTOR_PORT

具体的には上記Terraformコードの以下の部分を変更しました。

https://github.com/ice1203/blog-sysdig-Agent-migration/blob/8c6dcfb3bfcfcf5e57a943cb2ffddb83c4aded25/workload-security-playground.tf#L32-L36

2. オーケストレータエージェントの削除

環境変数の変更が完了したら、オーケストレータエージェント関連のリソースを削除します。以下のようにざっくりと消してしまいます。

https://github.com/ice1203/blog-sysdig-Agent-migration/blob/8c6dcfb3bfcfcf5e57a943cb2ffddb83c4aded25/main.tf#L26-L47

さて、ここまで変更したらデプロイをしてみます。正常にデプロイが完了し、以下のようにオーケストレータエージェントが綺麗サッパリなくなりました。

image.png

動作確認

続いて脅威検知できるか動作確認してみましょう。

今回はSysdigで監視しているECSタスクに、security-playgroundというテスト用の脆弱なWebサーバーコンテナを使用して動作確認を行いました。

このイメージは以下のような特徴を持っています

  • HTTP Webサーバーを展開
  • 外部からファイルの読み取りや書き込みが可能な脆弱な構成

このイメージが起動されたECSタスクに対してVPC接続したCloudShellを使って、curlでファイル読み取り、書き込みをしてみます

  1. /etc/shadowの読み取り: curl http://172.18.1.129:8080/etc/shadow
  2. /bin/helloに書き込み: curl -X POST http://172.18.1.129:8080/bin/hello -d 'content=hello-world'

すると以下のように見事にSysdigで検知されました。

image.png

Read sensitive file untrustedが上記の1に対応する検知で、Write below binary dirが上記の2に対応するイベントになります。

まとめ

Sysdigのサーバーレスエージェントでオーケストレータエージェントが不要になるという激アツアップデートの紹介でした。
ECS FargateでよりSysdigが使いやすくなりましたね、オーケストレータエージェントが省略できることでコスト面の改善も嬉しいところです

以上とーちでした。

参考にさせていただいた記事

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.