すごく進化した Datadog の CSPM で俺のクラウド管理ポータルの設定不備を全部検出してみる
第1回は CSPM の役割を確認した。ここでは Datadog での CSPM 初期設定を確認していく。
3.初期設定(Datadog CSPM)
前提として AWS, Azure は Datadog とのインテグレーションが完了していること。あと、今回検証したクラウドは AWS Security Hub やら Azure Security Senter やらは有効化していません。どうやら Datadog だけでかなりのセキュリティ対策のベストプラクティスを網羅できるようです。
手順1.監視対象とする AWS アカウントを選び CSPM を有効化する
[Security] > [Setup & Configuration]
なお AWS に Datadog インテグレーションした時の datadog 用IAMロールに ポリシー「Security Audit」の追加が必要です。
手順2.監視対象とする Azure アカウントを選び CSPM を有効化する
[Security] > [Setup & Configuration]
手順3.ぱすちゃ管理のデータが集まるのを待つだけ
徐々にデータが集まってきます。スキャンされたリソースは 20 個と表示されているようです。
深夜1時を過ぎていたので、ひと晩待ちました。朝の集計ではスキャンされたリソースは 403 個でした。
4.検出したルールを読む(サマリー)
評価結果は「Evaluation Trend, 適合 397個、不適合 16個、合計 413個」。そして重要度は「Severity Trend, 致命的 5個、続く3段階で高12個、中398個、低3個、合計418個」5つほど数が合わないな...。クラウド別では「AWS 19個、Azure 381個、合計400個」のリソースのうち、不適合が「AWS 10個、Azure 6個」。
ルール別には「CIS-AWSで不適合 11個」「CIS-Azureで不適合 10個」そしてなんと「SOC2では不適合 57個」なぜ50個以上もの不適合なのか該当ルールを見るとユーザーアクセス権における作成/削除などの操作ログひとつずつカウントされているようだ。例えば「ストレージアカウントが削除されたらログアラートが通知されるように設定すること」「仮想マシンが電源OFFされたらアラート通知されるように設定されていること」これで2個。このような操作ログがずらーっと不適合[FAIL]になっている。
5.検出されたルールのサンプルを読む
クリティカルなルールが2つ該当している。これらを是正してみる。
- ひとつめは「S3 bucket is publicly accessible (via policy)」S3バケットをインターネットに公開するときは制限すること
- ふたつめが「SSH access is restricted from Internet」インターネットからSSHにアクセス制限すること
一旦まとめ
Datadog の CSPM 初期設定について確認した。何か設定したっけ? [CSPM ENABLED]のトグルスイッチを有効にしただけだよね。こんなに簡単なら一度は試して自分のセキュリティ設定を確認することをお勧めします。とてもたくさんの指摘がされて面倒かもしれないけれど、クラウドサービスでのベストプラクティスを知るよい機会になると思う。