SnykでRed Hat Quayレジストリのイメージをスキャンして脆弱性を検出
2021年4月1日
0 分で読めますRed HatのQuayコンテナレジストリと、ホスト型サービスのQuay.ioに保存されたコンテナイメージを、Snyk Containerでスキャンできるようになりました。Snyk Containerは、コンテナイメージ内の脆弱性の検出と修正を支援します。また、コンテナレジストリとしてQuayと連携することで、プロジェクトをインポートし、コンテナの脆弱性を監視できます。詳しくはSnyk Containerのドキュメントをご覧ください。Snykは、インポートしたプロジェクトに既知のセキュリティ脆弱性がないか、設定した頻度でテストします。Quayとの連携は、無料のSnykアカウントを含むすべての料金プランでご利用いただけます。(注:プライベートQuayレジストリを利用しており、ご自身の環境内でイメージスキャンを実行する必要がある場合は、Snyk Brokerが必要です。Snyk Brokerは有料プランでのみご利用いただけます。)

Quayとの接続を設定してイメージを追加すると、Snyk Containerがベースイメージのアップグレードを提案します。コンテナのビルド方法をすばやく最適化できるほか、優先順位付けや依存関係分析の機能も備えているため、イメージ内の特に問題の大きい脆弱性に集中して対処できます。それぞれの機能を見ていきましょう。
SnykとQuayで脆弱性を減らす
Snykを使うと、代替のベースイメージを特定して選択し、コンテナイメージの脆弱性を全体的に減らせます。特に人気のある公式Dockerイメージには、多くの場合、複数のベースイメージの選択肢があります。Snyk Containerは現在使用しているベースイメージを特定し、脆弱性の少ないアップグレードを提案します。
以下は、node:14.1をベースにビルドされたコンテナイメージに対する、ベースイメージの推奨例です。

Snyk Containerは、プロジェクトに応じて利用可能なさまざまな推奨事項を提示し、脆弱性の修正方法を柔軟に選べるようにします。
マイナーアップグレード - 小規模なアップグレードはより速く簡単に適用でき、ビルドを壊す可能性も低いという考え方に基づく提案です。フレームワーク(この例ではnode)とOSディストリビューションのメジャーバージョンを維持したままアップグレードできます
メジャーアップグレード - フレームワークまたはOSディストリビューションの新しいメジャーバージョンへの移行が必要です
代替アップグレード - 別のイメージを代わりに使用する選択肢を提示しますが、フレームワークとディストリビューションの両方が変わる可能性があります。上の例のように脆弱性の数を大幅に減らせる場合がある一方、コードへの影響がないことを確認するため、追加のテストや検討が必要になることもあります。
コンテナの脆弱性修正に優先順位を付ける
ベースイメージを最適化した後も、Snyk Containerを使ってコンテナイメージに脆弱性が持ち込まれる箇所を特定し、修正に取り組む問題の優先順位を付けられます。DockerfileをSnykに追加すると、脆弱性と、それをコンテナに持ち込む命令を照合できます。また、Snykは依存関係の情報を網羅しているため、脆弱性の原因まで簡単にたどれます。コンテナでは脆弱性の数の多さに圧倒されがちですが、Snykを使えば、特に重要またはリスクの高い問題に集中できます。
たとえば下の画像では、同じ基本的な問題一覧を表示する方法が2つあります。ここでは「修正可能で、深刻度が高く、何らかの形で既にエクスプロイトが存在する脆弱性をすべて表示する」方法を見てみましょう。左側の画面では、Snykのフィルターで条件を選択しています。右側の画面では、Snykに組み込まれた優先度スコアによって、同じ問題が一覧の先頭に表示されています。これらの要因はいずれも、脆弱性の潜在的なリスクを高めるためです。

利用を開始する
Quayとの連携は、すべてのSnykプランでご利用いただけます。連携方法は2種類あります。
Snyk.ioのSnyk Containerサービスと直接連携する[すべてのSnykプランで利用可能]
Snykのサービスに直接接続したくないセルフホスト型レジストリをオンプレミスでスキャンする[ProプランとEnterpriseプランでのみ利用可能]
Snyk.ioと直接連携する場合は、簡単に利用を開始できます。必要なのは適切な認証情報(少なくとも読み取りアクセス権限)だけで、数分もあればスキャンを始められます。
Quayをプライベートネットワークでセルフホストしている場合は、Snyk Brokerをインストールし、アカウントでこの機能が有効になっていることを確認してください。Snyk Brokerをまだ利用したことがない場合は、Snykのカスタマーサクセスチームが利用開始をサポートします。
開発者が作業の流れの中で簡単に問題を修正できるよう、Red Hatとの取り組みを続けています。利用開始に役立つ資料をいくつかご紹介します。
SnykをRed Hatのワークフローに組み込む方法を演習で学べるSnykとRed Hatのワークショップ資料。
Snykアカウントをお持ちでない方は、無料で登録してSnykを利用し、コンテナイメージとオープンソースの依存関係をスキャンできます。
開発者がOpenShiftアプリケーションを安全に開発できるよう支援するSnykとRed Hatのパートナーシップについて、詳しくはこちらをご覧ください。
デモをご希望ですか?ご質問はありますか?ぜひお問い合わせください。
安全な開発を!
開発者ファーストのコンテナセキュリティ
Snykは、コンテナイメージとKubernetesワークロードの脆弱性を検出し、自動的に修正します。
