AWSでのコンテナセキュリティ対策とは?各リスクへの対策になるサービスを紹介

ナレッジ「AWSでのコンテナセキュリティ対策とは?各リスクへの対策になるサービスを紹介」のイメージ画像

本コラムでは、そもそもコンテナ型仮想化とは何か?からコンテナセキュリティの必要性とリスクの分類、AWSサービスを用いたコンテナセキュリティ対策などを詳しく解説します。

コンテナ技術の普及とそのメリット

IDC Japanが2021年2月に発表した調査によると、コンテナを本番環境で利用している日本企業は16.9%あまりでした。しかし日本経済新聞が2023年9月に行った調査では、日本における約3割の企業がコンテナを導入しているという結果を得られています。
仮想化技術の一部であるコンテナは、起動までの効率が良く、開発効率・運用効率・信頼性の向上に寄与するメリットを持つことから、普及が進んでいるということです。

コンテナ化とは

コンテナとは、Container(容器)を意味する単語が語源です。IT分野における「コンテナ」とはホストOS上でアプリケーションを起動するために必要な「アプリケーション本体」「設定ファイル」「ライブラリ」などを1つにまとめたものを指しています。
アプリケーションを「コンテナ」と呼ばれる環境にパッケージ化し、「コンテナエンジン」上で動かす仮想化技術の1つですが、VMなどのホストOS型仮想化と比べ、コンテナホストOSを共有するため、アプリケーションを高速かつ軽量に起動することができます。また、コンテナエンジンがインストールされた環境であればどのような環境でも同じように動くので、場所を選ばずにアプリケーションを稼働することができます。これらのメリットにより、開発サイクルの高速化が見込めます。

コンテナ型仮想化と従来のホストOS型仮想化との違い

VMなどの従来のホストOS型仮想化では、仮想マシン上でゲスト OS を起動します。しかしコンテナではゲスト OS を起動せずにアプリケーションの実行環境を構築できます。ゲストOSの起動が不要となった結果として、「CPUやメモリなどのリソースを節約できる」「起動が早くなる」という2つのメリットを享受できるようになります。
そのためコンテナは仮想化と比較し CPU やメモリなどのリソースを節約できるので、アプリケーションを高速かつ軽く起動できるようになります。

セキュリティの重要性

コンテナ型仮想化では、複数のコンテナが特定の OS 上で動作します。そこで、ホストOS上に不具合が生じた場合には、すべてのコンテナに影響が出ることになります。またコンテナであっても、他の仮想化技術と同様にセキュリティリスクが存在し、重大なインシデントを引き起こす危険があります。コンテナセキュリティへの対策は重要だといえます。
近年、コンテナへの移行が進むにつれて、コンテナセキュリティの重要性が高まっています。ただコンテナの内部処理は把握しにくいので、コンテナをデプロイした後にコンテナセキュリティツールを導入することは難しいものがあります。

そこで、大規模なインシデントに発展する前の段階で、コンテナセキュリティを実装しておくことが大切です。

コンテナのセキュリティのライフサイクルに応じた分類とリスク

コンテナセキュリティは、コンテナの実行環境だけでなく、開発、ビルド、オーケストレーションツールや関連するセキュリティポリシーに及びます。そこで、動作しているコンテナだけではなく、コンテナイメージ、レジストリ、オーケストレーター、ホスト、コンテナランタイムなど、コンテナのライフサイクルを考慮したセキュリティが求められます。
コンテナのライフサイクルに応じた分類とリスクを考えていきましょう。

コンテナイメージへのリスク

Web上のコンテナイメージを取得して実行することや、自社の仕様に合わせカスタマイズして利用するケースがあります。このようなコンテナイメージを利用するとき、そのイメージ内にマルウェアが含まれていることや、イメージ内のアプリケーション自体の脆弱性を狙った攻撃をされるリスクが存在します。

コンテナレジストリへのリスク

コンテナレジストリは、コンテナイメージを保管し組織内外で共有するときなどに利用され、他の組織が作成したイメージを活用することができす。そこで、コンテナレジストリに不正アクセスされてイメージを上書きされるリスクの可能性が存在します。
そのため、コンテナレジストリに保存されているコンテナイメージにマルウェアが含まれていないかイメージスキャンしたり、不十分な認証経路による不正イメージの混入がないことを確かめる必要があります。

コンテナオーケストレーターへのリスク

管理対象のコンテナの数が増えていくと、その運用・管理が複雑で手間がかかるようになります。そこでコンテナ化されたアプリケーションのデプロイやスケーリング、管理などが自動的にできるコンテナオーケストレーターを導入することで、その課題は解決できるようになります。

一方で、コンテナオーケストレーターが不正利用されてしまうと、予期しないコンテナの起動や停止が行われるといった問題が発生します。これを防ぐため、コンテナオーケストレーターへのアクセス経路や利用者の権限を正しく設定する必要があります。

ホストへのリスク

ホストOSへのパッチ適用を怠ると、脆弱性を悪用した攻撃者がコンテナが動作するホストマシンに侵入する可能性があります。また、ホストマシンのネットワーク設定を監視し不正なトラフィックを検出する必要があります。

ランタイムへのリスク

コンテナに内在する脆弱性を狙った攻撃もあります。ランタイムやミドルウェア、ライブラリといったコンテナ内部で動作するソフトウェアの脆弱性を突かれてコンテナに不正アクセスされ、仮想通貨マイニングに利用されるといった事例がよく知られています。こうしたリスクを防ぐため、コンテナのふるまいから不正なアクティビティを早期に検知したり、動作中のコンテナイメージを脆弱性の含まれない最新のものに更新する、といった対策が必要です。

AWSを用いたコンテナセキュリティ対策

AWSでは、以下のようなコンテナセキュリティ機能を提供しています。

コンテナイメージやコンテナレジストリへのリスク対策として→Amazon ECR(Elastic Container Registry)

「Amazon ECR」はAWSが提供しているコンテナレジストリサービスです。その機能の1つである「イメージスキャン」を利用することで、コンテナイメージ内のソフトウェアをスキャンして脆弱性を特定できます。また、 AWSリソースへのアクセスを安全に管理するためのサービスである「AWS IAM(Identity and Access Management)」を「Amazon ECR」で使用することで、レジストリにアクセスするユーザーやグループの権限を一元管理できるようになります。

コンテナオーケストレーターへのリスク対策として→AWS Security Hub

「AWS Security Hub」は、AWS上のリソース設定がセキュリティのベストプラクティスから逸脱していないかを自動で調査・検知する機能を持ちます。「AWS Security Hub」を有効化することで、AWSが提供するコンテナオーケストレーターである「Amazon ECS」や「Amazon EKS」の設定を継続的にチェックし、セキュアでない設定が行われた際に検知することが可能です。

ホストへのリスク対策として→Amazon Inspector、AWS Fargate

「Amazon Inspector」を利用することで、ホストマシンに含まれるソフトウェアの脆弱性や意図せぬネットワークの露出がないかをスキャンできます。コンテナを起動するホストに対して「Amazon Inspector」によるスキャンを実行することで、こうしたリスクに早期に気づくことができます。また、データプレーンにAWS Fargateを採用すればホストの管理をAWSに任せることができるため、自身でリスク対策を行う必要はありません。

コンテナランタイムへのリスク対策として→Amazon GuardDuty

AWSアカウントとワークロードを継続的にモニタリングする脅威検出サービスが「Amazon GuardDuty」です。その機能の1つである「ランタイムモニタリング」を利用することで、「Amazon ECS」によって起動されたコンテナを監視し、仮想通貨マイニングなどの悪意のあるアクティビティを検知できます。検知されたら対象のコンテナを停止する、などの対応を取りましょう。

コンテナセキュリティ対策の現状を可視化

コンテナの利用は開発や運用の効率と柔軟性を向上させますが、セキュリティへの取り組みが不可欠です。コンテナセキュリティは継続的な努力と、最新のベストプラクティスの適用が必要となります。

クラスメソッドでは、AWSが提供するセキュリティ成熟度モデルを活用しお客様の組織やプロジェクトのセキュリティをアセスメントし、結果をもとに最適なセキュリティ対策を提案・実施するサービスであるAWSセキュリティ強化プログラムサービス資料を用意しています。

本サービスは、セキュリティ対策をどこからやればいいかわからない方、コスト効率の高いセキュリティ対策を実施したい方、現在のセキュリティ対策が適切かどうかを知りたい方におすすめです。

AWSセキュリティ強化プログラムサービス資料

AWSセキュリティ強化プログラムとは、AWSが提供するセキュリティ成熟度モデルを活用しお客様の組織やプロジェクトのセキュリティをアセスメントし、結果をもとに最適なセキュリティ対策を提案・実施するサービスです。これによりお客様のAWS環境のセキュリティレベルを総合的に上げることを支援します。

資料をダウンロードする

AWSセキュリティ強化プログラムとは

こんなお悩みを解決します

  • セキュリティ対策をどこからやればいいかわからない
  • コスト効率の高いセキュリティ対策を実施したい
  • 現在のセキュリティ対策が適切かどうかを知りたい
解決方法を見る
資料請求
クラスメソッドのことが
よくわかる資料を紹介します
0120-991-668 平日9:30〜18:30 お問い合わせ