SlideShare une entreprise Scribd logo
1  sur  11
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Web Service Japan K.K.
Specialist Solutions Architect, Containers
林 政利
コンテナセキュリティ⼊⾨
AWS Black Belt Online Seminar
2021/10
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アジェンダ
• イメージの開発とビルド
• サプライチェーン
• オーケストレータの保護
• ホストのセキュリティ
• 実⾏時のセキュリティ
ソースコード
Dockerfile
イメージのビルド
レジストリ
(Amazon ECR)
Hypervisor
Kernel
VM
Container
Container
Container
オーケストレータ
(ECS / k8s / etc)
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サプライチェーンの保護
イメージレジストリの保護
イメージレジストリを不正なアクセスから保護する
イメージレジストリのホワイトリスト化
安全なイメージレジストリのみを使う
安全なイメージを安全な経路でコンテナとして届ける
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
コンテナレジストリのアクセス保護
アカウント内の運⽤で、特定のチームのみECRリポジトリアクセスを許可する例
https://aws.github.io/aws-eks-best-practices/security/docs/image/#create-iam-policies-for-ecr-repositories
{
"Statement": [{
"Sid": "AllowPushPull",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123456789012:role/<team_a_role_name>"
},
"Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage",...],
"Resource": [ "arn:aws:ecr:region:123456789012:repository/team-a/*"
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
コンテナレジストリのホワイトリスト化
信頼できるレジストリのみを使う
レジストリに安全なイメージを登録しても、そ
のイメージが使われなければ意味がない
悪意あるイメージによる侵害例
CVE-2019-5736 (runc 権限昇格 脆弱性)
悪意あるコンテナイメージの実⾏により侵害
コンテナ実⾏定義をチェックする
AWS Config による ECS タスク定義のチェック
Kyverno や Open Policy Agent で Kubernetes の
マニフェストをチェック
レジストリ
(Amazon ECR)
Hypervisor
Kernel
VM
Container
Container
Container
オーケストレータ
(ECS / k8s / etc)
レジストリ
(︖︖︖)
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アジェンダ
• イメージの開発とビルド
• サプライチェーン
• オーケストレータの保護
• ホストのセキュリティ
• 実⾏時のセキュリティ
ソースコード
Dockerfile
イメージのビルド
レジストリ
(Amazon ECR)
Hypervisor
Kernel
VM
Container
Container
Container
オーケストレータ
(ECS / k8s / etc)
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
オーケストレータの保護
ネットワークの制限
許可したネットワークからのみアクセスする
ユーザーの管理
アクセスできるユーザーを適切に割り当てる
SSO などでユーザー管理を簡素化する
権限の管理
ユーザーに与える権限を絞る
Hypervisor
Kernel
VM
Container
Container
Container
オーケストレータへの管理アクセスの保護
オーケストレータ
(ECS / k8s / etc)
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
起動するコンテナの設定: root 権限
• ⼀般的に USER 未指定の場合はデフォルトで root 権限がコンテナプロセスの実⾏に利⽤される
• root で動くようになっているコンテナイメージは多い
• 特権ポートを使うためなど(nginx, postfix, etc.)
• オーケストレータで特権ポートを使う必要性は少ない
• コンテナで root は必要になるケースは少ない
• カーネルを変更
• 実⾏中にパッケージをインストール
• ホストパスのマウント(fluentd など)
オーケストレータがコンテナを実⾏する際の実⾏ユーザーについて
Hypervisor
Kernel
VM
Container
Container
Container
Load
Balancer
Port: 80
Port:
32342
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
起動するコンテナの設定: Privileged、特権コンテナ
• コンテナ内のプロセスは Linux Capabilities が制限
• 脆弱性がなければコンテナから
ホストを攻撃されることはない
• 特権コンテナ
• 全ての Linux Capabilities が有効になっている
• コンテナからホストに root でアクセスできる
• ホストのデバイスをコンテナにマウントなど
• 必要な Capabilities だけを有効化する
特権コンテナ ≠ root で稼働するコンテナ
kind: Pod
spec:
containers:
- image: busybox
...
securityContext:
privileged: true
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセッションで扱うこと・学べること
コンテナについての⼀般的なセキュリティの考え⽅
サプライチェーン、オーケストレーターの保護
© 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Specialist Solutions Architect, Containers
本セッションの担当: 林 政利
SIer
フリーランス
受託開発
Web系企業
サービス開発・運⽤
外資ベンダー
コンテナ担当SA・
サポートエンジニア
AWS Japan
コンテナ担当SA
好きなサービス
Amazon Elastic Kubernetes Service (Amazon EKS)
AWS Certificate Manager

Contenu connexe

Plus de Amazon Web Services Japan

202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...Amazon Web Services Japan
 
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operationsAmazon Web Services Japan
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報Amazon Web Services Japan
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをなAmazon Web Services Japan
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPNAmazon Web Services Japan
 
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)Amazon Web Services Japan
 
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)Amazon Web Services Japan
 
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)Amazon Web Services Japan
 
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法Amazon Web Services Japan
 
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤Amazon Web Services Japan
 
01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデートAmazon Web Services Japan
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)Tealium+AWS Analytics サービスで実現する Customer Experience(CX)
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)Amazon Web Services Japan
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介Amazon Web Services Japan
 
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAmazon Web Services Japan
 

Plus de Amazon Web Services Japan (20)

202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
 
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
 
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
 
20211109 bleaの使い方(基本編)
20211109 bleaの使い方(基本編)20211109 bleaの使い方(基本編)
20211109 bleaの使い方(基本編)
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 
AWS の IoT 向けサービス
AWS の IoT 向けサービスAWS の IoT 向けサービス
AWS の IoT 向けサービス
 
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
 
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)
AWS IoT SiteWise のご紹介 (AWS IoT Deep Dive #5)
 
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)
製造装置データ収集の選択肢 (AWS IoT Deep Dive #5)
 
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法
IoT@Loft#20 - IoTプラットフォームを進化さ せるAWSの活用方法
 
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
 
03_AWS IoTのDRを考える
03_AWS IoTのDRを考える03_AWS IoTのDRを考える
03_AWS IoTのDRを考える
 
02B_AWS IoT Core for LoRaWANのご紹介
02B_AWS IoT Core for LoRaWANのご紹介02B_AWS IoT Core for LoRaWANのご紹介
02B_AWS IoT Core for LoRaWANのご紹介
 
01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)Tealium+AWS Analytics サービスで実現する Customer Experience(CX)
Tealium+AWS Analytics サービスで実現する Customer Experience(CX)
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介
 
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティスAWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティス
 

Dernier

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 

Dernier (12)

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 

202110 AWS Black Belt Online Seminar コンテナセキュリティ入門 Part.2

  • 1. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Web Service Japan K.K. Specialist Solutions Architect, Containers 林 政利 コンテナセキュリティ⼊⾨ AWS Black Belt Online Seminar 2021/10
  • 2. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アジェンダ • イメージの開発とビルド • サプライチェーン • オーケストレータの保護 • ホストのセキュリティ • 実⾏時のセキュリティ ソースコード Dockerfile イメージのビルド レジストリ (Amazon ECR) Hypervisor Kernel VM Container Container Container オーケストレータ (ECS / k8s / etc)
  • 3. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サプライチェーンの保護 イメージレジストリの保護 イメージレジストリを不正なアクセスから保護する イメージレジストリのホワイトリスト化 安全なイメージレジストリのみを使う 安全なイメージを安全な経路でコンテナとして届ける
  • 4. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. コンテナレジストリのアクセス保護 アカウント内の運⽤で、特定のチームのみECRリポジトリアクセスを許可する例 https://aws.github.io/aws-eks-best-practices/security/docs/image/#create-iam-policies-for-ecr-repositories { "Statement": [{ "Sid": "AllowPushPull", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/<team_a_role_name>" }, "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage",...], "Resource": [ "arn:aws:ecr:region:123456789012:repository/team-a/*"
  • 5. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. コンテナレジストリのホワイトリスト化 信頼できるレジストリのみを使う レジストリに安全なイメージを登録しても、そ のイメージが使われなければ意味がない 悪意あるイメージによる侵害例 CVE-2019-5736 (runc 権限昇格 脆弱性) 悪意あるコンテナイメージの実⾏により侵害 コンテナ実⾏定義をチェックする AWS Config による ECS タスク定義のチェック Kyverno や Open Policy Agent で Kubernetes の マニフェストをチェック レジストリ (Amazon ECR) Hypervisor Kernel VM Container Container Container オーケストレータ (ECS / k8s / etc) レジストリ (︖︖︖)
  • 6. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アジェンダ • イメージの開発とビルド • サプライチェーン • オーケストレータの保護 • ホストのセキュリティ • 実⾏時のセキュリティ ソースコード Dockerfile イメージのビルド レジストリ (Amazon ECR) Hypervisor Kernel VM Container Container Container オーケストレータ (ECS / k8s / etc)
  • 7. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. オーケストレータの保護 ネットワークの制限 許可したネットワークからのみアクセスする ユーザーの管理 アクセスできるユーザーを適切に割り当てる SSO などでユーザー管理を簡素化する 権限の管理 ユーザーに与える権限を絞る Hypervisor Kernel VM Container Container Container オーケストレータへの管理アクセスの保護 オーケストレータ (ECS / k8s / etc)
  • 8. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 起動するコンテナの設定: root 権限 • ⼀般的に USER 未指定の場合はデフォルトで root 権限がコンテナプロセスの実⾏に利⽤される • root で動くようになっているコンテナイメージは多い • 特権ポートを使うためなど(nginx, postfix, etc.) • オーケストレータで特権ポートを使う必要性は少ない • コンテナで root は必要になるケースは少ない • カーネルを変更 • 実⾏中にパッケージをインストール • ホストパスのマウント(fluentd など) オーケストレータがコンテナを実⾏する際の実⾏ユーザーについて Hypervisor Kernel VM Container Container Container Load Balancer Port: 80 Port: 32342
  • 9. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 起動するコンテナの設定: Privileged、特権コンテナ • コンテナ内のプロセスは Linux Capabilities が制限 • 脆弱性がなければコンテナから ホストを攻撃されることはない • 特権コンテナ • 全ての Linux Capabilities が有効になっている • コンテナからホストに root でアクセスできる • ホストのデバイスをコンテナにマウントなど • 必要な Capabilities だけを有効化する 特権コンテナ ≠ root で稼働するコンテナ kind: Pod spec: containers: - image: busybox ... securityContext: privileged: true
  • 10. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセッションで扱うこと・学べること コンテナについての⼀般的なセキュリティの考え⽅ サプライチェーン、オーケストレーターの保護
  • 11. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Specialist Solutions Architect, Containers 本セッションの担当: 林 政利 SIer フリーランス 受託開発 Web系企業 サービス開発・運⽤ 外資ベンダー コンテナ担当SA・ サポートエンジニア AWS Japan コンテナ担当SA 好きなサービス Amazon Elastic Kubernetes Service (Amazon EKS) AWS Certificate Manager