世界的に普及しているクラウドプラットフォーム「AWS」には、サイバー攻撃や不正アクセスからシステムを守るため、強固なセキュリティ体制が整備されています。本記事ではAWSのセキュリティの特徴やメリットとリスク、サービス内容、AWSにおけるセキュリティ対策の注意点などについて解説します。
AWSのセキュリティ
AWS(Amazon Web Services)は世界190カ国で導入実績を持つクラウドプラットフォームです。数百万のユーザーを抱え、多くの企業でも採用されている理由のひとつは、堅牢なセキュリティにあります。セキュリティに関する主だった国際規格・基準を満たし、情報セキュリティマネジメントシステム(ISMS)に関する国際規格として知られるISO27001にも準拠しています。
AWS独自のネットワークインフラ設計により、サーバーは安全性の高い世界各国のデータセンターに分散して設置されており、類を見ない高いレベルのセキュリティを確保しています。AWSは、近年増加傾向にあるサイバー攻撃手法のひとつ、サプライチェーン攻撃からデータを守るために高い機密性・整合性・可用性を実現し、セキュアな環境を提供するサードパーティプラットフォームとして評価されています。
AWSを利用すれば、安全なデータ保存と適切なアクセス管理を維持しながら、クラウドネットワークを拡大することが可能です。監視などのセキュリティタスクは自動化され、ヒューマンエラーを減少させています。これにより安全性を高め、ネットワーク運用の効率化を図っています。
AWSは運用責任をユーザーと共有
AWSのセキュリティが他のサービスに比べて高い信頼を得ていることは導入先を見ればわかります。国内では金融業や官公庁での導入実績が増えており、総務省ではプラットフォームの基盤にAWSを利用しているほどです。その結果、AWSは世界のパブリッククラウド市場の3割、国内市場の4割を占めるにいたっています。ただし、AWSはクラウドサービスを提供するIaaS(Infrastructure as a Service)型のプラットフォームであり、OSやソフトウェアはユーザーが構築する必要があります。
AWSでは、自社の提供するクラウドサービスに対して、責任範囲を明確に区分する「責任共有モデル」を提唱しています。責任共有モデルでは、クラウドを構成するインフラのセキュリティ責任はAWSが負い、クラウドサービスを利用する際のセキュリティ責任はユーザーが負うと考えます。企業でAWSを導入するのであれば、OSの管理・運用やネットワークの設定などは担当者の責任において行う必要があります。
AWSのセキュリティのメリット
AWSには、クラウドプラットフォームを利用する際に必要なセキュリティ対策サービスが豊富に用意されています。アカウント対策、情報漏えいの防止、日々新たに発生する不正アクセスやサイバー攻撃に対処するための対策メニューもそろっています。セキュリティアップデートの適用やバージョン管理も万全で、インシデントが発生すれば、自動的に対策が実行されます。このため企業のシステム担当者にかかる脆弱性対策などの労力はかなり軽減されます。
セキュリティの状況は常時監視され、可視化されています。例えば不正アクセスが発生した場合にはアラートで通知され、当該アクセスは自動ブロックされます。AWSでは、トラブル発生時に迅速にネットワークインフラを保護し、問題を修復する仕組みが整っており、企業のBCP対策としても効果的です。常に自然災害のリスクを抱えているわが国の企業にとってAWSは利点の多い、安心して利用できるクラウドサービスです。
AWSのセキュリティのリスク
AWSの運用で注意したいのは、セキュリティ対策を責任共有モデルで行っている点です。AWSがシステムすべてのセキュリティの責任を負うわけではなく、OSのバージョンアップやアクセス管理など、運用にともなう責任はユーザー(企業)側が負わなければなりません。自社に適したセキュリティ体制の構築や管理はAWSの責任範囲でなく、システム担当者の業務です。
外部からの侵入者が、不正アクセスでデータを搾取したり、認証情報を盗み出してサービスを悪用したり、特定のシステムに悪影響を与えたりする可能性もあります。さまざまなデバイスでアクセスされることにより、ネットワーク内部の思わぬところに脆弱性が発生し、不正アクセスが行われるかもしれません。ソフトウェアの脆弱性やWebページへの出力処理のトラブルから攻撃を受けるリスクもあります。不正アクセスや情報漏えい、アカウントの乗っ取り(と多額請求)などにはユーザー(企業)側が注意を払い、対策する必要があります。
AWSのセキュリティサービス
AWSのメリットを最大限活かすためには、どのようなセキュリティサービスが用意されているのかを押さえておくことが重要です。おすすめのセキュリティサービスを紹介します。
ID管理とアクセス管理
世界中からアクセスされるクラウドプラットフォームであるAWSには、「どのユーザーがどのサービスにアクセスしてよいのか」を大規模かつスピーディに管理する仕組みが用意されています。
IAM(Identity and Access Management)では、クラウドリソースにアクセスする際の認証と権限を設定できます。AWSアカウントとは別に、メンバーとID情報などが登録されたIAMユーザーを作成できるようになっています。IAMユーザーは付与されるAWSサービスへのアクセス権限単位でグループを構成します。IAMユーザーは同時に10個までのグループのメンバーになることができます。IAMユーザーのAWSに対する利用履歴はAWS Cloud Trailによって記録されます。AWS Cloud Trailでは、ユーザーのアクティビティとAPI使用ログの追跡などを行えます。
脅威の検出
世界中から常に脅威にさらされているクラウドプラットフォームには、不正行為の兆候を見逃さないためにも、脅威と判断する機能やシステムに対する動作をモニタリングする機能が必要です。AWSはさまざまな監視ツールを備え、クラウドリソースの稼働状況やソフトウェアの脆弱性などを管理・監視できます。
AIや機械学習で脅威を検出し、アカウントを保護するAmazon GuardDutyは、過去の不正アクセスや外部からの脅威の情報を収集・分析することにより、未知の脅威に備えます。Amazon InspectorはAWSのシステム負荷を継続的にスキャンし、ソフトウェアの脆弱性や外部からの侵入者がクラウドネットワークにアクセスできるようなバグを自動検出してくれる脆弱性診断サービスです。Amazon InspectorはAWSのEC2インスタンス向けに提供されています。
ネットワークとアプリケーションの保護
AWSでは、ホストレベル、ネットワークレベル、アプリケーションレベルの境界での不正なリソースアクセスをトラフィックの検査およびフィルタリングによって防止しています。例えばネットワークレベルでは、ファイアウォールやシールド、VPC(Amazon Virtual Private Cloud:Amazon仮想プライベートネットワーク)で脅威となるDNSトラフィックをブロックする機能などが効果的です。
アプリケーションを狙った攻撃もファイアウォールやシールドで防ぎます。AWSのクラウドリソースに直接、接続できるDirect Connectはインターネットを経由しないため、ユーザー(企業)からAWSまでの間に予期せぬボトルネックが発生するようなことはありません。AWSへの安定した接続を高セキュリティ・低コストで実現しています。そのほかにもAWS内のアカウントおよびアプリケーション全体でファイアウォールルールを一元管理するFirewall Manager、クラウドリソースの設定を記録して評価するConfigもネットワークやアプリケーションの保護に有効です。
データの保護
企業の機密情報や顧客データなどを外部に漏えいさせないためのセキュリティ対策も重要です。AWSのデータ保護では、前述したAWS Identity and Access Management(IAM)やAWS CloudTrailが機能するほか、AWS内に保存された機密情報を自動的に発見し、通知・保護してくれるAmazon Macieといったサービスも用意されています。SSLのプライベート証明書を簡単に発行・更新できるAWS Certificate Manager(ACM)では、データを暗号化して第三者による読み取りを防止し、外部からの不正アクセスによる脅威を無効化します。さらにACMを利用することにより、プライベート証明書のライフサイクルを監視して、AWS内リソースの利用状況を一元管理することも可能です。
社内リソースとAWS間のデータ通信を保護するには、データを暗号化・復号化のための鍵やデジタル署名の作成・管理を行えるKey Management Serviceが有効です。さらに専用のハードウェア上で暗号化・復号化鍵を管理できるCloudHSMを利用すれば、セキュリティはより高まります(ただし、そのぶんKey Management Serviceよりコストはかかります)。
インシデントの対応
クラウドサービスに限らず、ネットワークのセキュリティ管理ではインシデント対応が欠かせません。AWSではインシデントが発生すると、復旧を迅速にサポートし、再発の防止に努めます。AWSでは、アプリケーションの復旧は低コストで行えます。Amazon Detectiveはセキュリティ上の問題が発生した場合、原因の調査・分析を効率的に行えるサービスです。クラウドリソースからCloudTrailやGuardDutyなどのログを自動収集し、機械学習や統計分析などを用いてリンクされたデータセットを構築して、効率的な調査を行えるようにします。
Elastic Disaster Recoveryはオンプレミスおよびクラウドのアプリケーション復旧サービスです。災害対策に特化したクラウドサービスであるCloudEndure Disaster Recoveryをベースに、最小限の計算処理・伝達・保存機能と、バックアップ中にDBサーバーを復元できるポイントインタイムリカバリを組み合わせて、アプリケーションをスピーディかつ確実に復旧します。業務に支障が及ぶダウンタイムを最短にし、経営リスクとなるデータ損失を極力抑えます。
AWSのセキュリティグループ
パブリッククラウドサービスであるAWSは、独自のセキュリティグループでファイアウォール機能を構成しています。AWSのセキュリティグループについて解説します。
AWSのセキュリティグループとは仮想ファイアウォールのこと
AWSのセキュリティグループは、Amazonの仮想プライベートネットワークであるVPC上で通信をコントロールする仮想ファイアウォール機能のことを指します。AWSアカウント内にAmazon専用ネットワークを構築し、EC2などクラウドリソースを設置することが可能です。HTTPSやFTPなどのファイル転送プロトコル、TCPやUDPなどの通信プロトコル、利用するポート番号、IPアドレスなどのソースを設定することにより、仮想的なファイアウォールを構築できます。
セキュリティグループの設定は、サーバーが受信する通信(インバウンド)と、サーバーが発信する通信(アウトバウンド)に分けて行う必要があります。セキュリティグループではホワイトリスト方式が採用され、指定した通信のみが許可されます(デフォルトではすべて拒否)。アウトバウンドでは自動的にデフォルトの設定(すべて許可)が適用されます。IPとプロトコル、ポート範囲との組み合わせによって通信の許可または拒否をコントロールします。IPを使用せず、セキュリティグループのIDを使用することも可能です。数に制限はありますが、サーバーは複数の仮想ファイアウォールに対応できます。
ネットワークACLとの違い
セキュリティグループと同じく、VPCを使用するのがネットワークACLです。どちらもセキュリティ設定の目的で利用しますが、設定方法や影響範囲などが異なります。セキュリティグループはEC2の実体ごとに動作しますが、ネットワークACLはサブネットワーク単位となるため、設定内容によっては影響が大きくなります。
また、セキュリティグループとネットワークACLとでは設定方法も異なります。前述の通り、セキュリティグループではデフォルトがインバウンドはすべて拒否、アウトバウンドはすべて許可です。一方、ネットワークACLではデフォルトがインバウンド、アウトバウンドともにすべて許可です。ネットワークACLはブラックリスト方式を採用し、指定した通信のみが拒否される仕組みです。そのほかネットワークACLにはルールに優先順位があり、セキュリティグループのID指定ができないなど制約が多く、設定の難易度が高くなります。セキュリティグループの方が細かく柔軟な設定ができます。
AWSにおけるセキュリティ対策の注意点
AWSを快適に利用するために、注意すべきセキュリティポイントについて解説します。
パスワードでの認証
AWSアカウントはメールアドレスとパスワードを使用し、アクセス権を最大に行使できるルートアカウントです。ルートアカウント情報が流出して悪用されると、セキュリティが機能しなくなってしまいます。アカウント情報の漏えいを防ぐには、別途ポリシーを設定し、パスワードを複雑にする方法があります。また、パスワード以外の情報を設定する多要素認証を使用し、スマートフォンなどのデバイスと連携したワンタイムパスワードも有効です。
セキュリティを高めるには、IAMユーザーを作成し、ルートアカウントを最初から使用しないことが望ましい方法です。パスワード認証に頼らず、AWSとユーザーが共有するキーによって公開認証する方式も有効です。
ポートを必要最小限のみ開放
ポートの設定はまず、サーバーが受信を許可するポートのみにするなど、必要なポートだけを開放します。また、設定したポートを開放した状態にしないことが重要です。パブリッククラウドプラットフォームであるAWSは、インターネットからの攻撃を常に受けやすいことを頭に入れておく必要があります。
開放したままのポートは不正アクセスを招く結果となり、AWSの仮想ファイアウォールから侵入されると、内部システムにまで脅威が及びます。ポートはサーバーとの送受信時など必要最小限で開放し、通信に使用しないときは常に閉じておくことです。
最新のセキュリティに更新
AWSは仮想サーバーを使用するため、サーバーイメージをコピーするだけで新しいサーバーを構築できます。このためバックアップや類似したクラウド環境からの再構築を効率的に行える利点があります。ただし、単にコピーしただけではセキュリティ状態は古いままです。セキュリティホールを見逃してしまい、脆弱なシステムになるリスクが高いです。サーバーイメージをコピーする際は、セキュリティを最新の状態に更新する必要があります。
また、イメージ参照元の設定を間違えると、コピーしたサーバーからアカウントやデータ情報が漏えいしてしまうリスクがあります。簡単にサーバーが複製できるのは便利ですが、参照元の設定は注意深く行いましょう。
テンプレートを必須で使用
セキュリティレベルを高めるためにシステムの企画・設計時にセキュリティ対策を組み込む、セキュリティ設計(SbD:Security by Design)という方法があります。セキュリティ設計は、セキュリティルールの把握、ルールに基づいた環境の構築、テンプレート使用の強制、アクティビティの検証のステップで行います。このうち、テンプレート使用はセキュリティレベルを保つために必須です。
セキュリティルールを逸脱した環境に移行し、システムの安全性が脅かされないために、テンプレートが自動的にリアルタイムで監査します。テンプレートはAWS Service Catalogを有効にし、カタログ内のテンプレート使用を強制すると安全性を確保しやすくなります。
まとめ
AWSが世界中で導入されている大きな理由は、主要な国際規格・基準を満たす堅牢なセキュリティにあります。データセンターを各国に分散設置し、AWS独自のネットワークインフラ設計により、類を見ない高いレベルの安全性を実現しています。ID管理とアクセス管理、脅威の検出、ネットワークとアプリケーションの保護、データ保護、インシデント対応それぞれにセキュリティサービスのラインナップが豊富です。
独自のセキュリティグループで仮想ファイアウォールを構成し、ネットワークACLよりも柔軟に細かく設定できます。AWSは責任共有モデルで運用責任をユーザーと共有しており、注意すべきセキュリティポイントを押さえておくことで、安全でセキュアなクラウド環境を実現できます。
- カテゴリ:
- クラウド
- キーワード:
- インフラ設計