【レポート】AWS security services for container threat detection #reInvent2022 #SEC329-R

AWS re:Invent 2022で行われたBreakout Session "AWS security services for container threat detection" のレポートです。EKS環境のコンテナセキュリティについて深く学べました。
2022.11.29

こんにちは!AWS事業本部コンサルティング部のたかくに(@takakuni_)です。

本記事はAWS re:Invent 2022のセッション「AWS security services for container threat detection」のセッションレポートです。

本記事では、ラスベガス現地から参加した際の写真を掲載しているため、スライド画像などが少し粗くなってしまっておりますが、なんとなく現地の雰囲気が伝われば幸いです。

セッション概要

Containers are a cornerstone of many AWS customers’ application modernization strategies. The increased dependence on containers in production environments requires threat detection that is designed for container workloads. To help meet the container security and visibility needs of security and DevOps teams, new container-specific security capabilities have recently been added to Amazon GuardDuty, Amazon Inspector, and Amazon Detective. In this session, learn about these new capabilities and the deployment and operationalization best practices that can help you scale your AWS container workloads. Additionally, the head of cloud security at HBO Max shares container security monitoring best practices.

動画

※公開され次第、更新します。

アジェンダ

Amazon GuardDuty

EKS Protection

EKS環境を利用している場合、Amazon GuardDutyをお勧めしている。

EKS Protectionは「Kubernetes audit logs」と呼ばれる機能を利用してデータの収集を行なっている。

Kubernetes audit logsでは、コントロールプレーンのAPIサーバーからkubernetes APIの収集を行ない、何がどこでいつ起こっているかなどのAPIの詳細を辿ることができる。

また、以下のスライドのように、AWS Organizationsと連携して管理することができる。

Malware Protection

マルウェアプロテクションはどのように検知するのか。

  1. GuardDuty ServiceアカウントでService Rinked Role経由でEBSで利用しているKMSを共有する
  2. GuardDutyで検知された際に、GuardDuty Serviceアカウントでマルウェアのスキャンを行う
  3. 検出結果を顧客アカウント内のGuardDutyに表示する

Amazon Detective

GuardDutyで収集したイベントは、Detectiveで確認することが勧められている

Amazon EKSでは次のユースケースで利用される

  • 根本原因の特定
  • シナリオがどのように起こったかを特定する
  • 影響度を特定する

Amazon Detective for Amazon EKSを利用すると、「ポッドの情報」や「API呼び出しの履歴」などを可視化できる機能となっている。

Amazon EKSで可視化できる情報は以下の通り

Amazon Inspector

Image Scanning

ECRへの拡張イメージスキャンを提供している。

拡張イメージスキャンは以下のステップで行われる。

  1. ECRからコンテナイメージを取得する
  2. コンテナイメージの各レイヤーを抽出する
  3. OSと各レイヤーでインストールされたパッケージの脆弱性を確認する
  4. ファイルシステムからファイル情報を取得する
  5. 脆弱性DBと比較して脆弱性スキャンを行う

CI/CDパイプライン内で、イメージスキャンを組み込むことで、作業漏れをなくす。

詳細な実装方法は以下の部録に記載されている。

まとめ

本セッションでは、EKS環境を利用した場合のコンテナセキュリティについて大変学びの多いセッションでした。

最後の拡張スキャンのパイプライン部分は、ECS on Fargate環境でも取り入れることができるためぜひ実践してみようと思います。

以上、AWS事業本部コンサルティング部のたかくに(@takakuni_)でした!