自動脆弱性スキャンによるハブコンテナイメージのセキュリティの向上

エンドツーエンドの Docker 開発者エクスペリエンスの改善に関する昨日のブログで、セキュリティをイメージ開発に統合している方法を共有し、ハブにプッシュされたイメージの脆弱性スキャンの開始を発表できることに興奮しました。このリリースは、パートナーである Snyk とのコラボレーションの1つのステップであり、セキュリティテストテクノロジーをDockerプラットフォームに統合しています。 今日は、発表を拡張し、Snykで画像スキャンを開始する方法を紹介したいと思います。 

このブログでは、ハブイメージのスキャンが重要である理由、Snyk脆弱性スキャンをトリガーするようにハブページを構成する方法、およびスキャンを実行して結果を理解する方法について説明します。 また、開発ワークフローに脆弱性スキャンを組み込んで、アプリケーション展開の各ステップに定期的なセキュリティ チェックポイントを含めるための提案も提供します。  

ソフトウェア脆弱性スキャナーは、ハッカーがソフトウェアの悪用に使用する脆弱性を検出するためにしばらく前から存在しています。 従来、セキュリティチームは、開発者が作業が完了したと思った後にスキャナーを実行し、既知の脆弱性を修正するために開発者にコードを頻繁に送り返していました。 今日の「シフトレフト」パラダイムでは、スキャンは開発サイクルとCIサイクルの早い段階で適用されますが、ほとんどの組織は、スキャン機能をCI機器に接続するために独自の自動化を構築する必要があります。 昨日のリリースでは、この方程式が変更され、CIサイクル内の不可欠なステップとして自動スキャンが組み込まれています。  

これで、イメージをそのリポジトリにプッシュするたびにスキャンをトリガーするために脆弱性スキャン用に構成するリポジトリを決定し、スキャンが完了すると、ハブアカウントでスキャン結果を表示できます。 脆弱性データは、脆弱性の重大度の概要、すべての脆弱性のリスト、特定のセキュリティ上の欠陥に関する詳細情報など、いくつかの異なるレイヤーでハブに編成されています。 スキャン機能はProユーザーとTeamユーザーが利用でき、画像の更新ごとに簡単な検証方法を作成できます。

仕組み

ステップ1-リポジトリスキャン機能を有効にする

リポジトリスキャンの有効化は簡単なシングルクリックプロセスですが、デフォルト設定ではスキャンが無効になっているため、必ずオンにしてください。

ハブ コンテナーのセキュリティ 1

スキャンはリポジトリごとに個別に構成できるため、チームのコラボレーション サイクルとアプリケーションのビルド手順にスキャンを組み込む方法を決定できます。 これらのプロセスを小規模に導入し、時間の経過とともに組織の他の部分に拡張することができます。 逆に、スキャンしているリポジトリが開発のアクティブな部分ではなくなったと判断した場合は、同じシングルクリック オプションを使用してスキャンを無効にすることができます。

ステップ2–スキャンを実行する

スキャンを有効にすると、タグ付けされた画像をそのリポジトリにプッシュするたびに、スキャンが自動的にトリガーされます。  

ハブ コンテナー 2 のセキュリティ

ステップ3 - 結果を表示する

脆弱性スキャンが完了したら、ハブのリポジトリ ページに移動してスキャン結果を表示できます。 ハブ リポジトリ ページの [全般] タブには、すべてのリポジトリ イメージ スキャンの結果の概要が含まれており、各スキャン中に特定された高、中、低の脆弱性の数が表示されます。  

特定のタグの [脆弱性] セクションをクリックすると、そのタグの [脆弱性] タブが表示され、スキャン中に特定された脆弱性の総数が表示されます。 [脆弱性] タブには、スキャンの重大度の概要が含まれ、スキャンの脆弱性の完全なリストが表示されます。  

ハブ コンテナー 3 のセキュリティ

脆弱性リストは、最も重大な脆弱性が最初に表示されるように編成されています。 重大度の高い問題は低い問題よりも優先され、同じ重大度の脆弱性が共通脆弱性評価システム(CVSS)の降順で整理されます。 CVSSスコアは、ソフトウェアの脆弱性の重大度に数値を割り当てるための公開された標準です。 脆弱性リストには、一般に知られているサイバーセキュリティの脆弱性の識別番号である共通脆弱性識別子(CVE)と、この脆弱性を含むパッケージの名前とバージョンも含まれています。 利用可能な場合、[修正済み] 列には、脆弱性が解決された同じパッケージの上位バージョンが含まれます。 これは、脆弱性なしでイメージを再構築する方法に関する明確なガイダンスを提供する非常に重要な部分です。  

「修正済み」列の横には、Snyk Webサイトのページへのポップアップリンクがあり、その特定の脆弱性に関する詳細情報が表示されます。

ハブコンテナ4のセキュリティ

深刻度の評価の横にある小さな矢印は、この脆弱性に依存関係があることを示しています。 この矢印をクリックすると、脆弱性ボックスが展開され、次の依存関係が表示されます。

ハブコンテナ5のセキュリティ

詳細を学び、自分で試してみてください

ハブ スキャンは既に利用可能です。開始方法の詳細とフィードバックについては、以下の Docker Doc セクションのリンクを確認してください。 

https://docs.docker.com/docker-hub/vulnerability-scanning/

Docker Hub の脆弱性スキャンを最大限に活用する方法について専門家からさらに学ぶには、10 月 15 日水曜日に Docker の Peter McKee と Snyk の Jim Armstrong の共同ウェビナーに参加することを計画してください。  今すぐ登録!