Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コンテナセキュリティ関連OSSの紹介〜今すぐ始める無料の脆弱性検査〜
Search
濱田孝治
July 16, 2019
Technology
8
17k
コンテナセキュリティ関連OSSの紹介〜今すぐ始める無料の脆弱性検査〜
濱田孝治
July 16, 2019
Tweet
Share
More Decks by 濱田孝治
See All by 濱田孝治
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
1.5k
GuadDutyによるコンテナランタイム脅威検知にすべて〜その凄さと設定注意点と検知の様子をまるっとお届け〜
hamadakoji
2
1.1k
re:Invent2023で体験したIoT面白ワークショップ〜お絵描き2Dロボットの構築〜
hamadakoji
0
640
今改めて見直してみるラズパイの真価
hamadakoji
1
550
40分1本勝負 VPoE ハマコーvs20人の悩めるエンジニアリングマネージャー
hamadakoji
0
43
AWSの次世代プロセッサ Graviton2(Arm64)をLambdaとFargateで使うために考えるべきこと
hamadakoji
3
1.5k
エンジニアリングマネージャーの理想と現実
hamadakoji
13
8.2k
JAWS-UGコンテナ支部22回進行用資料
hamadakoji
0
470
Other Decks in Technology
See All in Technology
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
160
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
エンジニア向け会社紹介資料
caddi_eng
14
230k
Git 研修 Advanced【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
200
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
720
シフトレフトで挑む セキュリティの生産性向上
sekido
PRO
0
270
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
1
150
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
160
VPoEの視点から見た、ヘンリーがサーバーサイドKotlinを使う理由 / Why Server-side Kotlin 2024
cho0o0
1
420
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
357
18k
Music & Morning Musume
bryan
43
5.9k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.5k
Practical Orchestrator
shlominoach
185
10k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
In The Pink: A Labor of Love
frogandcode
139
22k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.8k
Making Projects Easy
brettharned
111
5.7k
Designing for Performance
lara
604
67k
Rails Girls Zürich Keynote
gr2m
93
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
Transcript
コンテナセキュリティ 関連OSSの紹介 今すぐ始める 無料の脆弱性検査
スライドは後で⼊⼿することが出来ますので 発表中の内容をメモする必要はありません。 写真撮影をする場合は フラッシュ・シャッター⾳が出ないようにご配慮ください Attention
3 ⾃⼰紹介 濱⽥孝治(ハマコー) •AWS事業本部コンサルティング部 シニアソリューションアーキテクト •好きなAWSサービス •Fargate、ECS、EKS •@hamako9999
4 ここしばらくの業務 • ECS(⾃社メディアサイトのマイクロサービス化) • ECS(⾃動⾞向けコネクテッドサービスのECS構 築) • ECS(Docker運⽤店舗向けサービスのマルチテ ナント→ECS化)
• EKS(位置情報分析サービスのEKS化) • ECS(⾃社運⽤k8sからECSへの移⾏)
5 ここしばらくは コンテナまみれ
6 コンテナジャーニー
7 コンテナ環境徹底⽐較
8 皆さん コンテナを運⽤する上でセキュリティ上の 不安を感じていることと思います
9 コンテナセキュリティについて 具体的な対策を⽴てている⽅は︖
10 有⼒解 10
11 こう思っている⽅は︖ 実際試してみるにしても なんか⼤変そう…
12 私が今⽇お伝えしたいこと まずは気軽に試してみることで コンテナセキュリティの必要性を 肌で感じてもらいたい
13 本⽇紹介するもの • ドキュメント • Google Cloud コンテナセキュリティ • NIST
Application Container Security Guide • CIS Docker Benchmarks • OSS • aqua MicroScanner • Clair • Trivy • Dockle • aqua kube-hunter
14 何故ドキュメントを読んだほうが良いか︖ 各コンテナセキュリティ製品やOSSが できることできないことの 全体を把握するため
15 ドキュメント編
16 Google Cloud コンテナセキュリティ https://cloud.google.com/containers/security/?hl=ja
17 Google Cloud コンテナセキュリティ • Google Cloudが提唱するコンテナ環境を保護するための 考え⽅の概要をまとめたもの • コンテナ実⾏時は、根本的に異なるセキュリティモデルが
必要 • 以下の3つの分野で、それぞれどういった対処が必要か 紹介されている • インフラストラクチャのセキュリティ • ソフトウェアのサプライチェーン • ラインタイムセキュリティ コンテナ環境において、セキュリティの考慮事項が コンパクトにまとめられている
18 (参考)Google Cloud コンテナセキュリティ
19 NIST Application Container Security Guide https://www.nist.gov/publications/application-container-security-guide
20 NIST Application Container Security Guide • NISTがまとめた、アプリケーションコンテナテクノロジのセキュ リティ上の問題に関する報告書 •
全63ページ、英語 • 抜け⽳を回避するためにセキュリティ対策を実施すべき領域として 5つの分野を指摘、それぞれの対応策も提⽰ • イメージリスク • レジストリリスク • オーケストレーターリスク • コンテナリスク • ホストOSリスク ベンダーニュートラルなコンテナセキュリティ対応の 原理原則を幅広く俯瞰するのに良い
21 (参考)NIST Application Container Security Guide
22 (参考)NIST Application Container Security Guide
23 CIS Docker Benchmarks https://www.cisecurity.org/benchmark/docker/
24 CIS Docker Benchmarks • Dockerについてのセキュリティ診断を実施する 「Docker Bench for Security」の診断項⽬のド
キュメント • 診断項⽬はおおよそ70項⽬ • Docker社から公式提供されているセキュリティ診断 ツールの解説となるもの • 実際のセキュリティ診断はツールを使って実施 ホストOSにおけるDocker環境の診断ツールとして利⽤可能
25 (参考)CIS Docker BenchMarks
26 OSS編
27 aqua MicroScanner https://github.com/aquasecurity/microscanner
28 aqua MicroScanner • aqua社が提供するOSSのコンテナイメージ静的脆弱性診 断ツール • 利⽤は簡単 • Dockerワンライナーで利⽤に必要なトークンを取得
• Dockerfileに4⾏追加(脆弱性スキャン⽤バイナリを取得 して実⾏) • Dockerfileを書き換える必要があるので、⽇常的なス キャン設定やCI/CDパイプラインへの組込は不適 ⼀回試してみるには良いが定期的なスキャンの実⾏を 組み込むのは難しい
29 (参考)aqua MicroScanner https://dev.classmethod.jp/tool/docker/microscanner/
30 Clair https://github.com/coreos/clair
31 Clair • CoreOS社開発のコンテナイメージ脆弱性スキャンツー ル • ビルトインデータソースが豊富 • Debian Security
Bug Tracker, Ubuntu CVE Tracker, Red Hat Security Data, Oracle Linux Security Data, Amazon Linux Security Advisories, SUSE OVAL Descriptions, Alpine SecDB, NIST NVD • Driverの追加も可能 • 別途脆弱性情報格納⽤にDB(PostgreSQL)が必要 ある程度本格的な脆弱性スキャン実⾏が可能 その分導⼊のハードルが⾼い
32 (参考)Clair https://github.com/jawsug-container/scan-image-vulnerabilities JAWS-UGコンテナ⽀部の 超丁寧なハンズオン
33 (参考)Clair https://aws.amazon.com/jp/blogs/publicsector/detect-vulnerabilities-in- the-docker-images-in-your-applications/ • AWS環境上で脆弱性診断環境⼀式を構築するOSS • Terraformで環境⼀式を構築 • Dockerイメージ格納︓ECR
• 脆弱性データベース︓RDS(PostgreSQL) • 中間処理データの格納︓DynamoDB • ECRプッシュのイベント検知︓CloudTrail、CloudWatch • レポートの作成︓AWS Glue、Athena、S3
34 Trivy https://github.com/knqyf263/trivy
35 Trivy • シンプルで実⾏が簡単なイメージの脆弱性スキャン ツール • インストール、脆弱性スキャン共にワンライナーで 実⾏可能 • $
trivy <your_container_image> • Clairと同様、多様な脆弱性データベースに対応 • OS packages, Application dependencies ワンライナーで実⾏可能、かつ対応データベースが豊富なため ⾮常にオススメ
36 (参考)Trivy https://dev.classmethod.jp/etc/trivy_poc/
37 (参考)Trivy https://github.com/jawsug-container/scan-image-vulnerabilities JAWS-UGコンテナ⽀部の 超丁寧なハンズオン
38 dockle https://github.com/goodwithtech/dockle
39 dockle • イメージ名指定だけで脆弱性検出が可能なOSS • 作者は @tomoyamachi さん • プライベートレジストリのスキャンにも対応
• Docker Bench for Security、Dockerfileベストプ ラクティスに対応 ワンライナーで実⾏可能なためこちらも⾮常にオススメ (パッケージ脆弱性診断のTrivyとの併⽤が良い)
40 (参考)dockle https://qiita.com/tomoyamachi/items/bb6ac5788bb734c91282 • CIS Benchmarkに 対応しているのが特 徴
41 (参考)dockle https://qiita.com/tomoyamachi/items/e0e69da521505e73237b • DockerHub上位800個に対 して実施した脆弱性試験の 結果の⼀覧 • dockleとTrivyそれぞれでの 診断結果を全て視認可能
42 aqua kube-hunter https://github.com/aquasecurity/kube-hunter
43 aqua kube-hunter • kubernetes環境の脆弱性試験ツール • kubernetesクラスターやワーカーノードに対して、 ワンライナーで30項⽬以上の脆弱性試験が可能 ⾃前でKubernetes環境を構築したり、ワーカーノードを作成 している場合に、⾮常にオススメ
44 (参考)aqua kube-hunter https://dev.classmethod.jp/cloud/aws/kube-hunter/
45 最後に これらのツールだけで あなたのコンテナワークロードの全てを 守ることができるでしょうか︖
46 まとめ • コンテナの脆弱性の考慮範囲は多岐におよぶ • OSSのツールも⾮常に充実してきている • 組織として本番運⽤するときに、不⾜項⽬はないか を必ず考える •
まずは、TrivyやDockleなどを利⽤して、⾝近なイ メージに含まれる脆弱性の有無を検知するところか ら始めてみる
47 コンテナを楽しく使いましょう 濱⽥孝治(ハマコー) @hamako9999