CodeBuildに関するルール
- [CodeBuild.3]:CodeBuild S3ログは暗号化してください
CodeBuildはプログラムコードのビルド環境を提供するマネージドサービスです。ソフトウェアのビルドの用途だけではなく、Dockerイメージのビルドなどの用途でも利用されることもあるかと思います。継続的インテグレーションを実現するうえで、なくてはならないサービスかと思います。
今回追加されたルールは、CodeBuildの実行ログを保管するS3バケットに暗号化設定が入っているかを確認します。S3はさまざまなAWSサービスのログ保管先として利用されることが多く、多種多様な情報が保管されることになり、適切なアクセス権限管理は欠かせません。暗号化設定を行っておくことで、S3バケットへのアクセス権限がある、かつ暗号化キーへのアクセス権限がある人しかログを参照できなくなるため、セキュリティレベルの向上が見込めます。
EC2に関するルール
- [EC2.25]:EC2起動テンプレートがネットワークインターフェイスにパブリックIPを割り当てないようにしてください
EC2は仮想マシンを稼働させることができるサービスです。AWS利用者のほとんどがまず利用するサービスになるかと思います。
今回追加されたルールは、EC2の周辺機能であるEC2 Auto Scaling Groupに関するものです。EC2 Auto Scaling GroupとはEC2の集合を定義できる機能で、負荷に応じて、動的にEC2に数を増減させるなどのユースケースで利用されます。EC2 Auto Scaling Groupでは、事前にテンプレートとなるEC2を起動テンプレートとして定義します。今回追加されたルールは、その起動テンプレートにて、パブリックIPを付与する設定となっていないかを確認します。昨今ではEC2に直接パブリックIPを付与するのではなく、その前段にロードバランサーサービスを立て、そこにパブリックIPを付与する構成が一般的となっています。EC2にパブリックIPが付与されてしまうと、悪意のある第三者からの攻撃を受ける可能性が高まりますので、意図せずその状態となっていないかを確認する必要があります。
SageMakerに関するルール
- [SageMaker.2]:SageMakerノートブックインスタンスはカスタムVPCで起動してください
- [SageMaker.3]:ユーザーにSageMakerノートブックインスタンスへのルートアクセス権を付与しないようにしてください
SageMakerは機械学習モデルの構築を実現できるマネージドサービスです。さまざまな機械学習用のフレームワークがプリセットされており、効率的に機械学習を行うことができます。
今回追加されたルールは、SageMakerのネットワーク周りの設定および特権に関する設定を確認するものです。SageMakerではノートブックインスタンスと呼ばれるコンピュートリソースを用意することで、機械学習の計算を行います。このコンピュートリソースは、EC2のようにVPCに所属させることができます。
[SageMaker.2]は、自身が用意したVPCにノートブックインスタンスが所属しているかを確認します。これにより通信経路やルールを把握しやすくなり、想定外のアクセスを防ぐ効果があると考えられます。
[SageMaker.3]は、ノートブックインスタンスへログイン可能なユーザに特権を付与しているかを確認します。機械学習に必要なパッケージのインストールなどのタスクが終わった場合でも、特権を有したユーザのままだと、同一インスタンスを利用するユーザの情報を参照/変更することが可能となり、セキュリティレベルが低下します。そのため、特権操作が必要なくなったタイミングで、ユーザへの特権付与を無効化することが推奨されています。
AWS WAFに関するルール
- [WAF.10]:AWS WAFv2ウェブACLに少なくとも1つのルールまたはルールグループを用意してください
AWS WAFは、ウェブアプリケーションを悪意のある攻撃から保護するサービスです。前述したCloudFrontやロードバランサーサービスであるElastic Load Balancerに設定することが可能です。
今回追加されたルールは、AWS WAFに何らかのチェックルールの設定がされているかを確認します。なんのチェックルールも含まれていないのであれば、それは誤設定の可能性が高いと想定され、状況を確認すべきです。
おわりに
今回は、「AWS Security Hub」のルールセットに関して、セキュリティの標準的なベストプラクティスである「AWS Foundational Security Best Practices 標準」に含まれる新しい9つのルールと、その概要を解説しました。今回紹介したルールは、AWS Security Hubを活用する際はもちろん、セキュアなAWSサービスを構築するためのチェック観点としても役立つはずです。ぜひ本記事をAWSシステムのセキュリティ向上にお役立てください。