Dome9で継続的なセキュリティチェックを実行する
はじめに
中山(順)です。
AWSを利用するにあたりセキュリティの観点も含めてシステム設計を行うと思いますが、それが維持できていることをどうやって担保しますか? そもそも、設計で考慮した要素だけで十分だと自信をもって言えますか?
Dome9では様々な第三者認証の監査項目に基づいたチェックを定期的に実行してくれます。 セキュリティに関する要件が高度な場合/PCI DSSなどの第三者認証の取得を検討している場合には良いサービスなのではないかと思いますのでご紹介します。
Compliance and Governance
Dome9では、既定および独自定義の評価ルールを用いてAWSアカウントの状態を評価できます。
既定のルールですが、以下の第三者認証をベースに定義されています。(AWSの場合)
- CIS
- NIST 800-53
- PCI-DSS 3.2
- HIPAA
- GDPR
- ISO27001
Compliance Engine Bundles & Rules
PCI DSSおよびCISについては以下のドキュメントにより詳細な説明があります。 何を評価できるかはよく確認しましょう。
CIS AWS Foundations Benchmarks
独自定義のルールは、GSLという独自の文法で記述する必要があります。 独自の文法ではありますが、自然言語に近い表現であるため、比較的習得しやすい印象です。
Continuous Compliance
AWSリソースはAWSの運用に関わるメンバーが日々変更を加えます。 マネージメントコンソールであろうがCloudFormationであろうが、セキュリティ的に問題のある設定をしてしまうことはあり得ます。 そのため、継続的に評価することが重要です。
Dome9では評価ルールによる評価を定期的に実行することができます。
やってみた
今回は既定のルールを利用して継続的な評価を行うまでの流れを確認していきます。
Dome9にAWSアカウントを登録済みであることを前提として説明します。
既定のバンドル
既定では非常に多くのルールが事前定義されています。 これらのルールは、バンドルとしてグループ化されています。 まずはどんなバンドルが存在するか確認してみましょう。
既定で大量のバンドルが提供されています(画面左側)。一部は日本語化されているようですし、AzureやGCP用のバンドルも提供されています。
バンドルに含まれるルールを確認してみましょう。 画像はPCI DSSのバンドルに含まれるルールで、"Ensure S3 bucket access logging is enabled on the CloudTrail S3 bucket"というものです。 ルールの概要とGSLで定義された評価式を確認できます。 論理式がわかれば、GSLの文法を知らなくてもなんとなく読めますね。 また、下部にはPCI DSSのどの要求事項に関連しているかも確認できます。
試しに評価を実行してみましょう。 右上部の「評価を実行」をクリックし、対象のAWSアカウント/リージョン/VPCを選択して実行します。
完了すると、以下のような画面が表示されます。
先ほど確認した"Ensure S3 bucket access logging is enabled on the CloudTrail S3 bucket"を準拠していたか確認してみます。 55の評価対象(存在するS3バケット全て)に対して評価式を適用し、うち15がCloudTrailから出力されるログを保存するS3バケットと判断され、そのうち全てのS3バケットがルールに準拠できていないことがわかります。 展開すると、具体的なリソース名なども確認できますが、ここでは割愛します。
継続的な評価
それでは、このバンドルを利用して継続的にAWSアカウントを評価できるよう設定してみます。
まずは通知設定を定義します。 "Manage Notifications"をクリックします。
通知先や通知スケジュール、レポートの種類などを指定できます。
通知設定を定義したら、バンドルと関連付けます。 「評価したいAWSアカウント」の部分にある"Attach compliance bundles"をクリックします。
評価で利用したいバンドルと通知設定をアタッチします。
一覧に表示されれば設定は完了です。
レポートの確認
通知設定で指定したメールアドレスに送られたレポートを確認してみます。 以下のようなイメージのレポートが受信できました。
まとめ
このようにセキュリティ上のリスクがないかを第三者認証の要求事項に基づいて定義されたルールで定期的にチェックすることが可能です。 この結果に基づいて準拠する割合を高めていくことでセキュリティ上のリスクを緩和できることがわかると思います。 ただし、中には非常に高度な/対応に大きなコストを要するルールもあるかもしれません。 そのルールに準拠する必要があるのかは事業の特定やリスクに応じて判断しましょう。
AWSの「設定」はAWSの利用者の責任でセキュリティを担保する必要があります。 しかし、これを完全に独力で対応するのは難しいケースもあるかと思います。 セキュリティを理解したメンバーがいなかったり、金銭的なコストをかけることができないなどの理由があると思います。 Dome9も安いツールではありませんが、セキュリティインシデントが事業にどのようなインパクトを与えるかによっては利用してみる価値はあるのではないかと思います。
現場からは以上です。