コンテナセキュリティ関連OSSの紹介〜今すぐ始める無料の脆弱性検査〜

 コンテナセキュリティ関連OSSの紹介〜今すぐ始める無料の脆弱性検査〜

C47bda32c8455a59471cd7e19c32c074?s=128

濱田孝治

July 16, 2019
Tweet

Transcript

  1. コンテナセキュリティ 関連OSSの紹介 今すぐ始める 無料の脆弱性検査

  2. スライドは後で⼊⼿することが出来ますので 発表中の内容をメモする必要はありません。 写真撮影をする場合は フラッシュ・シャッター⾳が出ないようにご配慮ください Attention

  3. 3 ⾃⼰紹介 濱⽥孝治(ハマコー) •AWS事業本部コンサルティング部 シニアソリューションアーキテクト •好きなAWSサービス •Fargate、ECS、EKS •@hamako9999

  4. 4 ここしばらくの業務 • ECS(⾃社メディアサイトのマイクロサービス化) • ECS(⾃動⾞向けコネクテッドサービスのECS構 築) • ECS(Docker運⽤店舗向けサービスのマルチテ ナント→ECS化)

    • EKS(位置情報分析サービスのEKS化) • ECS(⾃社運⽤k8sからECSへの移⾏)
  5. 5 ここしばらくは コンテナまみれ

  6. 6 コンテナジャーニー

  7. 7 コンテナ環境徹底⽐較

  8. 8 皆さん コンテナを運⽤する上でセキュリティ上の 不安を感じていることと思います

  9. 9 コンテナセキュリティについて 具体的な対策を⽴てている⽅は︖

  10. 10 有⼒解 10

  11. 11 こう思っている⽅は︖ 実際試してみるにしても なんか⼤変そう…

  12. 12 私が今⽇お伝えしたいこと まずは気軽に試してみることで コンテナセキュリティの必要性を 肌で感じてもらいたい

  13. 13 本⽇紹介するもの • ドキュメント • Google Cloud コンテナセキュリティ • NIST

    Application Container Security Guide • CIS Docker Benchmarks • OSS • aqua MicroScanner • Clair • Trivy • Dockle • aqua kube-hunter
  14. 14 何故ドキュメントを読んだほうが良いか︖ 各コンテナセキュリティ製品やOSSが できることできないことの 全体を把握するため

  15. 15 ドキュメント編

  16. 16 Google Cloud コンテナセキュリティ https://cloud.google.com/containers/security/?hl=ja

  17. 17 Google Cloud コンテナセキュリティ • Google Cloudが提唱するコンテナ環境を保護するための 考え⽅の概要をまとめたもの • コンテナ実⾏時は、根本的に異なるセキュリティモデルが

    必要 • 以下の3つの分野で、それぞれどういった対処が必要か 紹介されている • インフラストラクチャのセキュリティ • ソフトウェアのサプライチェーン • ラインタイムセキュリティ コンテナ環境において、セキュリティの考慮事項が コンパクトにまとめられている
  18. 18 (参考)Google Cloud コンテナセキュリティ

  19. 19 NIST Application Container Security Guide https://www.nist.gov/publications/application-container-security-guide

  20. 20 NIST Application Container Security Guide • NISTがまとめた、アプリケーションコンテナテクノロジのセキュ リティ上の問題に関する報告書 •

    全63ページ、英語 • 抜け⽳を回避するためにセキュリティ対策を実施すべき領域として 5つの分野を指摘、それぞれの対応策も提⽰ • イメージリスク • レジストリリスク • オーケストレーターリスク • コンテナリスク • ホストOSリスク ベンダーニュートラルなコンテナセキュリティ対応の 原理原則を幅広く俯瞰するのに良い
  21. 21 (参考)NIST Application Container Security Guide

  22. 22 (参考)NIST Application Container Security Guide

  23. 23 CIS Docker Benchmarks https://www.cisecurity.org/benchmark/docker/

  24. 24 CIS Docker Benchmarks • Dockerについてのセキュリティ診断を実施する 「Docker Bench for Security」の診断項⽬のド

    キュメント • 診断項⽬はおおよそ70項⽬ • Docker社から公式提供されているセキュリティ診断 ツールの解説となるもの • 実際のセキュリティ診断はツールを使って実施 ホストOSにおけるDocker環境の診断ツールとして利⽤可能
  25. 25 (参考)CIS Docker BenchMarks

  26. 26 OSS編

  27. 27 aqua MicroScanner https://github.com/aquasecurity/microscanner

  28. 28 aqua MicroScanner • aqua社が提供するOSSのコンテナイメージ静的脆弱性診 断ツール • 利⽤は簡単 • Dockerワンライナーで利⽤に必要なトークンを取得

    • Dockerfileに4⾏追加(脆弱性スキャン⽤バイナリを取得 して実⾏) • Dockerfileを書き換える必要があるので、⽇常的なス キャン設定やCI/CDパイプラインへの組込は不適 ⼀回試してみるには良いが定期的なスキャンの実⾏を 組み込むのは難しい
  29. 29 (参考)aqua MicroScanner https://dev.classmethod.jp/tool/docker/microscanner/

  30. 30 Clair https://github.com/coreos/clair

  31. 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. 32 (参考)Clair https://github.com/jawsug-container/scan-image-vulnerabilities JAWS-UGコンテナ⽀部の 超丁寧なハンズオン

  33. 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. 34 Trivy https://github.com/knqyf263/trivy

  35. 35 Trivy • シンプルで実⾏が簡単なイメージの脆弱性スキャン ツール • インストール、脆弱性スキャン共にワンライナーで 実⾏可能 • $

    trivy <your_container_image> • Clairと同様、多様な脆弱性データベースに対応 • OS packages, Application dependencies ワンライナーで実⾏可能、かつ対応データベースが豊富なため ⾮常にオススメ
  36. 36 (参考)Trivy https://dev.classmethod.jp/etc/trivy_poc/

  37. 37 (参考)Trivy https://github.com/jawsug-container/scan-image-vulnerabilities JAWS-UGコンテナ⽀部の 超丁寧なハンズオン

  38. 38 dockle https://github.com/goodwithtech/dockle

  39. 39 dockle • イメージ名指定だけで脆弱性検出が可能なOSS • 作者は @tomoyamachi さん • プライベートレジストリのスキャンにも対応

    • Docker Bench for Security、Dockerfileベストプ ラクティスに対応 ワンライナーで実⾏可能なためこちらも⾮常にオススメ (パッケージ脆弱性診断のTrivyとの併⽤が良い)
  40. 40 (参考)dockle https://qiita.com/tomoyamachi/items/bb6ac5788bb734c91282 • CIS Benchmarkに 対応しているのが特 徴

  41. 41 (参考)dockle https://qiita.com/tomoyamachi/items/e0e69da521505e73237b • DockerHub上位800個に対 して実施した脆弱性試験の 結果の⼀覧 • dockleとTrivyそれぞれでの 診断結果を全て視認可能

  42. 42 aqua kube-hunter https://github.com/aquasecurity/kube-hunter

  43. 43 aqua kube-hunter • kubernetes環境の脆弱性試験ツール • kubernetesクラスターやワーカーノードに対して、 ワンライナーで30項⽬以上の脆弱性試験が可能 ⾃前でKubernetes環境を構築したり、ワーカーノードを作成 している場合に、⾮常にオススメ

  44. 44 (参考)aqua kube-hunter https://dev.classmethod.jp/cloud/aws/kube-hunter/

  45. 45 最後に これらのツールだけで あなたのコンテナワークロードの全てを 守ることができるでしょうか︖

  46. 46 まとめ • コンテナの脆弱性の考慮範囲は多岐におよぶ • OSSのツールも⾮常に充実してきている • 組織として本番運⽤するときに、不⾜項⽬はないか を必ず考える •

    まずは、TrivyやDockleなどを利⽤して、⾝近なイ メージに含まれる脆弱性の有無を検知するところか ら始めてみる
  47. 47 コンテナを楽しく使いましょう 濱⽥孝治(ハマコー) @hamako9999