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 濱田孝治
製造現場のデジタル化における課題とPLC Data to Cloudによる新しいアプローチ
hamadakoji
0
270
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
3
1.1k
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
2.4k
GuadDutyによるコンテナランタイム脅威検知にすべて〜その凄さと設定注意点と検知の様子をまるっとお届け〜
hamadakoji
3
1.3k
re:Invent2023で体験したIoT面白ワークショップ〜お絵描き2Dロボットの構築〜
hamadakoji
0
720
今改めて見直してみるラズパイの真価
hamadakoji
1
610
40分1本勝負 VPoE ハマコーvs20人の悩めるエンジニアリングマネージャー
hamadakoji
0
64
AWSの次世代プロセッサ Graviton2(Arm64)をLambdaとFargateで使うために考えるべきこと
hamadakoji
3
1.9k
エンジニアリングマネージャーの理想と現実
hamadakoji
13
8.5k
Other Decks in Technology
See All in Technology
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
Application Development WG Intro at AppDeveloperCon
salaboy
0
190
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
フルカイテン株式会社 採用資料
fullkaiten
0
40k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
220
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
310
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
7
820
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
A Philosophy of Restraint
colly
203
16k
Typedesign – Prime Four
hannesfritz
40
2.4k
Making Projects Easy
brettharned
115
5.9k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Bash Introduction
62gerente
608
210k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Building an army of robots
kneath
302
43k
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