Sysdig Secureでは、AWS CloudTrailのログをFalcoプラグインを使用してモニタリングすることにより、クラウドの設定ミスによる脅威をほぼ リアルタイム で検知することができます。これにより、定期的にクラウド設定のチェックをかける従来の静的CSPM(クラウドセキュリティポスチャーマネジメント)の弱点であった「リアルタイム性の欠如」を補完することが可能です。
従来は、AWS CloudTrailのログをFalcoプラグインを使用してモニタリングするために、Cloud ConnectorというコンピュートインスタンスをECSタスクもしくはAppRunnerとしてお客様のAWS環境上にデプロイする必要がありました。
https://github.com/sysdiglabs/terraform-aws-secure-for-cloud/tree/master/examples/single-account-ecs/
今回、このFalcoプラグインをSysdig SaaSバックエンド側(図の右下)で稼働させることにより、お客様のAWS環境にCloud Connectorをデプロイすることなくエージェントレスで、AWS CloudTrailのログをモニタリングすることが可能になりました。これにより、クラウド脅威検知のために必要となるお客様側での準備の手間とリソースが大幅に削減されます。
今回は、Falco Cloudによるエージェントレスでのクラウド脅威検知のインストール手順をご紹介していきます。本機能は現在プレビュー版として提供されています。詳細はドキュメントをご参照ください。
https://docs.sysdig.com/en/docs/installation/sysdig-secure/connect-cloud-accounts/aws/agentless-install/
クラウド脅威検知のインストール
- Sysdig UIにログインし、Integrations > Data Sources > Cloud Accounts に移動します。
- 画面右上の Connect Account ボタンをクリックします。
-
AWS をクリックします。
-
Threat Detection を選択し、Next をクリックします。
クラウドセキュリティポスチャーマネジメント(CSPM) のみインストールする場合や、 クラウドセキュリティポスチャーマネジメント(CSPM) + クラウド脅威検知 の両方をインストールする場合も、エージェントレスで可能です。
クラウド基盤権限管理(CIEM) 機能を使用する場合は、従来どおり Cloud Connectorのインストールが必要 になります。
5. 今回はAWSシングルアカウントにインストールするので、Single を選択し、Next をクリックします。
6. 今回はTerraformを使ってインストールするので、Terraform を選択します。
7. 記載されている、クラウド脅威検知をデプロイするための前提条件を確認します。
前提条件
- 対象のAWSアカウントに アクティブなCloudTrailが存在 すること。
- インストールコードをデプロイするマシンに Terraform (version 1.3.1+ ) がインストールされていること。
- Terraform AWS ProviderがAWSの Admin権限 を使用するように設定されていること。
CloudTrail はクラウド脅威検知を Terraformでデプロイする前 に存在している必要があります。デプロイ後にCloudTrailを作成してもイベント検知できないのでご注意ください。
8. Instrumented AWS Regions で、イベントの送信元となるAWSリージョンを選択します(複数選択可)。
9. 表示されたTerraformコードをコピーし、main.tf
として保存します。
provider "aws" {
region = "ap-northeast-1"
}
module "single-account-threat-detection" {
source = "draios/secure-for-cloud/aws//modules/services/event-bridge"
target_event_bus_arn = "<省略>"
trusted_identity = "<省略>"
external_id = "<省略>"
name = "sysdig-secure-cloudtrail-8tvj"
deploy_global_resources = true
}
10. 下記コマンドでTerraformを実行し、Sysdig UI上で Next をクリックします。
terraform init && terraform apply
以下のリソースが作成されます。
resource "aws_cloudwatch_event_rule" "sysdig"
resource "aws_cloudwatch_event_target" "sysdig"
resource "aws_iam_role" "event_bus_invoke_remote_event_bus"
11. 自身の AWSアカウントID を入力して Complete をクリックします。
12. 自身のAWSアカウントが登録されていることを確認します。
13. AWSマネージメントコンソールにログインし、Amazon EventBridge に移動します。
14. クラウド脅威検知用の EventBridgeルール が作成されていることを確認します。
クラウド脅威検知テスト
今回は、S3バケットのブロックパブリックアクセス設定が削除されたことを検知できるかをテストします。
- Sysdig UIにログインし、Policies > Threat Detection > Runtime Policies に移動します。
- Sysdig AWS Notable Events ポリシーが有効になっていることを確認します。
AWS CloudTrail用ポリシーのカテゴリが2つありますが、赤いロゴがFalco Cloud(エージェントレス)用 で、黒いロゴが従来のCloud Connector用のポリシーになります。今回は赤いロゴのPolicyを使用します。
Sysdig AWS Notable Events ポリシーは、S3バケットのブロックパブリックアクセスが削除されたことを検知するFalcoルールを含んだポリシーになります。
3. AWSマネージメントコンソールから、S3バケットをデフォルト設定で作成します。
4. 作成したS3バケットのブロックパブリックアクセスを削除します。
5. Sysdig UIにログインし、Events > Events Feed ページに移動します。
6. Delete Bucket Public Access Block イベントが検知されていることを確認します。
通常、CloudTrail は、API 呼び出しから5分以内にイベントを送信するので、S3設定変更からイベント検知まで5分程度のタイムラグが生じることがあります。これはAWS側の仕様によるものです。
https://aws.amazon.com/jp/cloudtrail/faqs/#:~:text=Q%3A%C2%A0How%20often%20will%20CloudTrail%20deliver%20log%20files%20to%20my%20Amazon%20S3%20bucket%3F
まとめ
Sysdig SecureのFalco Cloudによって、エージェントレスでのほぼリアルタイムのクラウド脅威検知が簡単に実現できることを確認できました。