Amazon Web ServicesでKubernetesセキュリティを効率化
2020年2月27日
0 分で読めますAmazon Web Services Elastic Container Registry(ECR)との連携は、Snyk Containerで特に人気の高いユースケースの一つです。このたび、Amazon Elastic Kubernetes Service(EKS)およびECRサービス内でSnyk Containerの脆弱性スキャンを簡単に導入できるようになりました。
EKSで新しいワークロードが起動されるとき、その基盤となるコンテナの取得元と安全性を把握することが重要です。Snyk Containerは、EKSでワークロードが作成または変更されるとそれを検知し、ECRなどのレジストリに接続してコンテナイメージの脆弱性をスキャンし、検出された問題への修正を提案します。また、EKSとの連携では、アプリケーションが攻撃されやすくなる可能性のあるワークロードの設定上の問題について、開発者にアラートを通知します。

AWSのネイティブサービスを使って、EKSクラスターで稼働中のワークロードを検知し、保護する
モダンアプリケーションでは変化のスピードが速く、Kubernetesクラスター内で稼働するすべてのワークロードを把握し続けるのは容易ではありません。特に、ワークロードは起動のたびに新しいコンテナイメージを取得することがあります。Snyk ContainerはEKSおよびECRと連携し、EKSで起動されたワークロードを検知した後、ECR(またはその他のレジストリ)に接続して元のコンテナイメージを特定し、脆弱性をスキャンします。コンテナのポッド内にあるimageプロパティを使って元のイメージを特定し、接続します。EKSとECRの場合は、AWS IAMを使って接続を認証します。
Snyk Kubernetesコントローラーを使うと、コンテナイメージの脆弱性分析に加えて、Kubernetesクラスターをより詳しく可視化できます。ワークロードの設定も分析し、修正の優先順位付けに役立てることができます。以下の例では、「FAIL」バッジが示すとおり、デプロイ設定にCPUやメモリの制限がなく、rootユーザーとしての実行やルートファイルシステムへの書き込みも制限されておらず、システム機能も削除されていません。安全でない設定で稼働するワークロードに重大度の高い脆弱性があると、攻撃者に侵入経路を与えるだけでなく、深刻な問題を引き起こされるリスクも高まります。

ガイド付きの推奨事項でコンテナイメージを最適化
Snyk Containerは、ベースイメージのアップグレードに関するガイド付きの推奨事項を提示し、開発者が脆弱性にすばやく対処できるよう支援します。コンテナの脆弱性の主な原因の一つは、多くの場合ベースイメージです。一般的なベースイメージは、幅広いプロジェクトをすぐに始められるようシンプルに設計されています。そのため、不要なOSツールやパッケージが含まれていることがあります。多くのコンテナスキャンツールが提示するのは脆弱性の長い一覧だけで、脆弱性がイメージのどのレイヤーに由来するのか、ベースイメージをアップグレードするにはどうすればよいのかといったガイダンスは得られません。
Snykは、コンテナやオープンソース依存関係を対象とする包括的な脆弱性データベースを提供するだけでなく、脆弱性の少ないベースイメージを選ぶためのガイダンスも提供します。以下の例では、現在のイメージに加え、変更を最小限に抑えながら脆弱性の数を減らせる「マイナーアップグレード」の推奨事項を確認できます。また、より大きな変更を伴い、アプリケーションとの互換性を確認するために追加のテストが必要となる場合がある「メジャーアップグレード」や「代替アップグレード」も提案しますが、これらも脆弱性の数を大幅に減らせる可能性があります。

SnykとAWS:開発ライフサイクル全体にわたるコンテナセキュリティとオープンソースセキュリティ
EKSで起動されるコンテナ化されたワークロードを検知することだけが、AWSのアプリケーションパイプラインに脆弱性検知を追加する方法ではありません。SnykはAWS CodeBuildなどのCIツールと連携し、コンテナのビルドとオープンソース依存関係の両方について脆弱性を検知できます。また、ECR、Docker Hubなどのレジストリと直接連携し、すでに保存されているイメージをスキャンすることもできます。

開発者にとって、脆弱性を早期に発見することは、開発やリリースのペースを維持するうえで役立ちます。セキュリティチームにとっても、早期検知により、本番環境で「仮想パッチ」を適用したり、例外ポリシーを設けたりする必要のある問題を減らせます。Snykなら、慣れ親しんだ開発ワークフローを妨げることなく、こうした取り組みを支援します。
利用を始める
SnykとAWSは簡単に使い始められます。Snykの無料アカウントに登録すれば、ECRやその他のレジストリにあるコンテナのスキャンを開始できます。Snyk ContainerのAWS連携についてはドキュメントをご覧ください。オープンソース依存関係のスキャンも、Snykの無料プランでご利用いただけます。
今年のKubeCon EUに参加される方は、ぜひお立ち寄りください!ブースS34でお待ちしています。
Snykのメンバーが、次の3つのブレイクアウトセッションに参加します。
DevOps Relations担当ディレクターのPatrick Deboisが、3月30日のCloud Native Security Dayで「ビルド/サーバーの安全性をどう確認するか?」という問いに答えます。
Developer Relations担当のHayley Denbraverが、4月1日のセッション「未開拓の領域:公開Helmチャートの脆弱性を発見する」で、公開Helmチャートの脆弱性に関する調査について講演します。
また、4月1日に「Kubernetesとクラウドネイティブセキュリティ:現状を振り返る」をテーマとするパネルディスカッションを開催します。登壇者は次のとおりです。
Gareth Rushgrove、Snykプロダクトマネージャー、CNCFアンバサダー
Kirsten Newcomer、Red Hatプリンシパルプロダクトマネージャー
Scott Coulton、Microsoft Cloud Developer Advocate、Docker Captain、CNCFアンバサダー
Phil Estes、IBM Distinguished Engineer兼Container Architecture Strategy CTO、OCI Technical Oversight Board議長
Rags Srinivas、Snyk Developer Relations
安全な開発を!
ソースコードの段階からインフラを保護
Snykはワークフロー内のIaCセキュリティとコンプライアンスを自動化し、構成ドリフトや不足しているリソースを検出します。