CIS Benchmarksから見る4大クラウドのIAM要件トップ10(1)

~AWS、Azure、GCP、OCIのアイデンティティ&アクセス管理~

セキュリティ

2022.12.02

近年、各企業においてクラウドサービスの利用が急速に普及してきています。一方で、「クラウド導入にあたってセキュリティは何をすれば良いのか?」、「うちのクラウドのセキュリティは大丈夫なのか?」といった声も多く聞かれます。
また、かつてはクラウドサービス、特にIaaSの代名詞と言えばAmazon Web Services(以下、AWS)でしたが、ここ最近Microsoft AzureやGoogle Cloud Platformなど他のサービスも広く知られるようになりました。
本コラムでは、セキュリティバイデザインの観点から、セキュリティ設定のベストプラクティスとして知られるCIS Benchmarksの記述からクラウドセキュリティの最も基本となるアイデンティティ&アクセス管理(以下、IAM)を対象にセキュリティ要件の本質を明らかにしてみたいと思います。

4大クラウドとCIS Benchmarks

4大クラウドとは?

一般的にクラウドサービスといえば、AWS、Azure、GCPが三大クラウドとして挙げられます。また、2022年6月の米国の調査会社Gartner社の発表によると、ワールドワイドにおける2021年のIaaSの市場シェアは、AWS、Azure、Alibaba Cloud、GCPの順となっています(Alibaba Cloudは中国をはじめとするアジア太平洋地域において高い市場シェアを占めています)。
しかし、2022年10月に日本のデジタル庁が発表したガバメントクラウド対象クラウドサービス一覧では、以下4つのクラウドサービスが明示されました。

  • Amazon Web Services(以下、AWS)
  • Google Cloud Platform(以下、GCP)
  • Microsoft Azure(以下、Azure)
  • Oracle Cloud Infrastructure(以下、OCI)

これによりOCIは、今後日本政府が利用を検討するクラウド基盤の一つと位置付けられ、日本国内でのさらなる普及・発展が予想されます。そのため、本コラムではAWS、Azure、GCPにOCIをあわせて4大クラウドと呼称します。

CIS Benchmarksとは?

CISとは、”Center for Internet Security”の略称で、米国のセキュリティ関係の非営利団体です。CISといえば最も有名なのがCIS Controlsでしょう。CIS Controlsとは、優先すべきシステムのセキュリティ要件を示した文書で、2022年11月現在、バージョン8が公開されています。
その同じCISから技術的なセキュリティ設定の推奨策(Recommendations)として公開されているのがCIS Benchmarksです。CIS Benchmarksは、実装レベルのセキュリティ対策のベストプラクティスを示した文書であり、さまざまなOSやミドルウェア、クラウドサービス、ネットワークデバイス、ソフトウェアを対象としています。
CIS Benchmarksの推奨策とはどのようなものでしょうか? 以下で簡単に見ていきましょう。

・推奨策(Recommendations)

CIS Benchmarksでは、推奨策は、例えば以下のように書かれています。

1.8 Ensure IAM password policy requires minimum length of 14 or greater
(1.8 IAMパスワードポリシーにおいて、最低14文字以上を要求することを確認する)

  • CIS Amazon Web Services Foundations Benchmark v1.5.0から引用

これら推奨策には、それぞれに対して実機における確認方法(Audit)や修正方法(Remediation)なども記載されています。また、推奨策にはその属性としてプロファイルや評価ステータスがあります。

◦プロファイル(Profile)

プロファイルとは、各推奨策が目指すセキュリティレベルです。レベル1およびレベル2があり、レベル1が基本的対策で、レベル2がそれを拡張した強化策です。CIS Benchmarksでは以下の説明が記載されています(文章は著者意訳)。

レベル1(Level1)

このプロファイルでは、以下の点を推奨しています。

  • 実用的および慎重であること。
  • セキュリティに重点を置いた技術的強化策のベストプラクティスを提供すること。
  • 許容可能な範囲を超えて技術の有用性を阻害しないこと。

レベル2(Level2)

このプロファイルでは、レベル1のプロファイルに加え、次のうち1つ以上を含むよう推奨しています。

  • 管理性や使いやすさよりも、セキュリティが重要な環境またはユースケースを対象としている。
  • 多層防御の手段として機能する。
  • 技術の有用性またはパフォーマンスに影響を与える可能性がある。
  • 追加のライセンス、コスト、またはサードパーティ製ソフトウェアの追加が含まれる場合がある。
◦評価ステータス(Assessment Status)

評価ステータスとは、推奨策の評価方法または実装方法です。推奨策の評価または実装が、自動化できるか手動のひと手間が必要かを示します。 CIS Benchmarksでは以下の説明が記載されています。

自動化(Automated)

技術的コントロールの評価を完全に自動化し、合格/不合格の状態に検証できる推奨策を示す。 推奨策には、自動化を実装するために必要な情報が含まれる。

手動(Manual)

技術的コントロールの評価を完全に自動化できず、構成された状態が期待どおりに設定されていることを検証するために全部または一部の手動の手順が必要な推奨策を示す。 期待される状態は、環境によって異なる場合がある。

本コラムでは4大クラウドのCIS Benchmarksとして以下の文書を対象とします。

  • CIS Amazon Web Services Foundations Benchmark v1.5.0(2022年8月12日公開)
  • CIS Microsoft Azure Foundations Benchmark v1.5.0(2022年8月16日公開)
  • CIS Google Cloud Platform Foundation Benchmark v1.3.0(2022年3月31日公開)
  • CIS Oracle Cloud Infrastructure Foundations Benchmark v1.2.0(2022年4月14日公開)

これらCIS Benchmarks やCIS Controlsは、NISC(内閣サイバーセキュリティセンター)「情報システムに係る政府調達におけるセキュリティ要件策定マニュアル 別冊」や、総務省「クラウドサービス利用・提供における適切な設定のためのガイドライン」などでも言及されており、日本国内でも年々知名度が向上しています。

参考:CIS Controlsについて

CIS Controlsとは、組織のサイバーセキュリティを対象に優先すべきセキュリティ要件を示したもので、2022年11月現在では、バージョン8が公開されており、18のコントロールおよび153の保護策(Safeguards)が示されています。

CIS Controls Version8における18のコントロール
CIS Controls Version8における18のコントロール

4大クラウドのアイデンティティ&アクセス管理(IAM)とは?

CIS Benchmarksのカテゴリーとアイデンティティ&アクセス管理(IAM)

CIS Benchmarksでは、AWS、Azure、GCP、OCIのそれぞれの推奨策は、ほぼ同じようなカテゴリーで構成されています。中でもアイデンティティ&アクセス管理(Identity and Access Management。以下、IAM)は、どのクラウドサービスにも存在する最もベースとなるクラウドセキュリティのカテゴリーです。IAMとは、簡単にいうとアカウント管理およびアクセス管理のことです(よくアイアムと呼称されます)。

4大クラウドのCIS Benchmarksにおけるカテゴリー
4大クラウドのCIS Benchmarksにおけるカテゴリー

CIS BenchmarksでAWS、Azure、GCP、OCIについてどのようなIAM推奨策があるのかを概要レベルで見ていきましょう。IAMの数と特徴を見ると、各クラウドサービスの仕組みや機能がそのままIAM推奨策の数や内容に反映されていることがわかります。また、これはCIS Benchmarks執筆チームの考え方の違いや執筆・公開時期の違いも関係していると思われます。
最もIAM推奨策が多いクラウドサービスはAzureですが、機能の違いがあるのでCIS Benchmarksにおける推奨策が多ければセキュアなクラウドだとは単純に判断できません。ただし、多くの推奨策を見ることは多くのセキュリティ観点に触れられるということになります。

4大クラウドのIAM推奨策の数および特徴
4大クラウドのIAM推奨策の数および特徴

4大クラウドのIAM推奨策

4大クラウドのIAMに関する用語の概要

AWS、Azure、GCP、OCIは、それぞれクラウドサービスとしての仕組みが似ていますが、その名称や内容に少しずつ違いがあります。4大クラウドのIAMの各要素における名称は以下の通りです。

  • これらの内容には厳密には補足説明が必要ですが、ここでは分かりやすさを重視して簡略化させていただきます。

4大クラウドの主なIAMの要素
4大クラウドの主なIAMの要素

4大クラウドのIAM要件トップ10

それでは、AWS、Azure、GCP、OCIのIAM推奨策は何を要件として求めているのでしょうか?4大クラウドに求められているCIS BenchmarksのIAM推奨策から、共通的なものをグルーピングし、数が多い上位10の要件を抽象化しました。
その結果、以下の要件がIAM要件のトップ10でした。

4大クラウドのIAM要件トップ10
4大クラウドのIAM要件トップ10

これらは具体的にはどのような推奨策に基づくものなのか、サブ要件もあわせて見ていきましょう。今回は長くなってしまうため、No.1について詳しく見ていきたいと思います(No.2~10については次回解説します)。

  • プロファイルがレベル2の要件が一つでも存在する場合、サブ要件の末尾に追記します。

No.1 多要素認証の導入

最も多かったのは多要素認証に関する推奨策でした。4大クラウドのすべてで多要素認証がIAM推奨策に書かれています。また、管理者だけではなくすべてのクラウドユーザーに多要素認証を推奨しています。

多要素認証の導入

細かくは以下のサブ要件に分類されます。

  • 管理者アカウントの多要素認証
  • 管理者アカウントのハードウェア多要素認証(※レベル2)
  • 全ユーザーの多要素認証(※一部レベル2)
  • 管理作業への多要素認証
  • デバイス上の確実な多要素認証の実施
  • 危険なサインインへの多要素認証

CIS Benchmarksにおける推奨策は以下の通りです(末尾にプロファイル・評価ステータスも記載)。

サブ要件 IAM推奨策
管理者アカウントの多要素認証 AWS 1.5 rootユーザーアカウントで多要素認証が有効になっていることを確認する(レベル1・自動化)
Azure 1.1.2 すべての特権ユーザーに対して「多要素認証ステータス」が「有効」になっていることを確認する(レベル1・手動)
Azure 1.2.3 管理者グループに多要素認証ポリシーが存在することを確認する(レベル1・手動)
管理者アカウントのハードウェア多要素認証 AWS 1.6 rootユーザーアカウントでハードウェア多要素認証が有効になっていることを確認する(レベル2・自動化)
GCP 1.3 すべての管理者アカウントでセキュリティキーの適用が有効になっていることを確認する(レベル2・手動)
全ユーザーの多要素認証 AWS 1.1 コンソールパスワードを持つすべてのIAMユーザーに対して多要素認証が有効になっていることを確認する(レベル1・自動化)
Azure 1.1.3 特権を持たないすべてのユーザーに対して「多要素認証ステータス」が「有効」になっていることを確認する(レベル2・手動)
Azure 1.2.4 すべてのユーザーに対して多要素認証ポリシーが存在することを確認する(レベル1・手動)
GCP 1.2 サービスアカウント以外のすべてのアカウントで多要素認証が「有効」になっていることを確認する(レベル1・手動)
OCI 1.7 コンソールパスワードを持つすべてのユーザーに対して多要素認証が有効になっていることを確認する(レベル1・自動化)
管理作業への多要素認証 Azure 1.2.6 Azureの管理には多要素認証が要求されるようにする(レベル1・手動)
Azure 1.22 [Azure ADにデバイスを登録または参加するために多要素認証が必要]が[はい]に設定されていることを確認する(レベル1・手動)
デバイス上の確実な多要素認証の実施 Azure 1.1.4 「記憶されているすべてのデバイスで多要素認証を復元する」が有効になっていることを確認する(レベル1・手動)
Azure 1.5 [ユーザーが信頼するデバイスで多要素認証を記憶できるようにする] が [無効] になっていることを確認する(レベル1・手動)。
危険なサインインへの多要素認証 Azure 1.2.5 危険なサインインには多要素認証が要求されるようにする(レベル1・手動)

まとめ

今回はIAMトップ10のうち、No.1を解説しました。一見、抽象化した要件だけを見るとそれほど特殊なことが書かれているようには見えません。しかし、それを実装における推奨策と合わせて見てみると、どう具体的にセキュリティ設計を行えばよいのか、より理解が深まります。
次回は残りのNo.2~10について解説します。

補足

これら4大クラウドのCIS Benchmarksに記載の推奨策には、それぞれにひもづくCIS Controlsのコントロール番号が記載されています(例えば、「5.4 管理者権限を専用の管理者アカウントに制限する」など)。そのため、シンプルに考えれば同じ目的の推奨策は、同じCIS Controlsのコントロール番号でグルーピングするのが適切です。
しかし、実際には類似の推奨策であっても、コントロール番号が異なっているケースや複数のコントロール番号にまたがっているケースがあり、単純なグルーピングには適していません。これは、CIS Benchmarksの執筆メンバーの考え方によって記載内容に違いが出ているためと推察されます。

参考資料

※文章中の商品名、会社名、団体名は、各社の商標または登録商標です。

CIS Benchmarksから見る4大クラウドのIAM要件トップ10(1)