SnykでHarborレジストリのイメージをスキャンして脆弱性を検出
2021年4月1日
0 分で読めます正式に発表します!Snyk Containerは、人気のオープンソースコンテナレジストリHarborに保存されたコンテナイメージのスキャンに対応しました。Snyk Containerを使えば、コンテナイメージの脆弱性を検出して修正できます。Harborをコンテナレジストリとして統合することで、プロジェクトをインポートし、コンテナの脆弱性を監視できるようになりました。Snykはインポートしたプロジェクトを既知のセキュリティ脆弱性についてテストします。テストの頻度は自由に設定できます。
機能の詳細については、コンテナ脆弱性管理のドキュメントをご覧ください。Harborとのインテグレーションは、ProおよびEnterpriseの料金プランでご利用いただけます。
Snyk Containerはベースイメージのアップグレードを提案し、より適切な選択肢を提示することで、アプリケーションイメージのセキュリティ強化を支援します。また、イメージレイヤーを特定する機能も備えており、Dockerfile内の問題のある行に絞って対処できます。

ベースイメージを最適化する
Snykは、コンテナイメージ全体の脆弱性を減らすために、代替ベースイメージの特定と選択を支援します。特に人気の高い公式Dockerイメージでは、複数の代替ベースイメージが利用できることがよくあります。Snyk Containerは、現在使用しているベースイメージを特定し、脆弱性の少ないイメージへのアップグレードを提案します。
次の例は、ベースイメージtomcat:7.0.100を使用したイメージに対するベースイメージの推奨事項です。

Snyk Containerは、プロジェクトとSnyk Vulnerability Databaseが提供する厳選された情報に基づいて、さまざまな修正案を提示します。脆弱性の修正方法を柔軟に選択できます。
マイナーアップグレード – 小規模なアップグレードは迅速かつ簡単に実施でき、ビルドへの影響も少ないという考え方に基づく提案です。フレームワークのメジャーバージョンとOSディストリビューションを維持したままアップグレードできます。
メジャーアップグレード – フレームワークまたはOSディストリビューションの新しいメジャーバージョンへの移行が必要です。
代替アップグレード – 別のイメージを使う選択肢を提案します。フレームワークとディストリビューションの両方が変更される場合があります。上の例のように脆弱性の数を大幅に減らせる可能性がある一方、コードへの影響がないことを確認するため、追加のテストや検討が必要になる場合もあります。
問題のあるDockerfileの命令を特定する
Snyk ContainerはDockerfileの命令を分析し、脆弱性がコンテナに持ち込まれる具体的な経路を特定することで、脆弱性の発生箇所の発見を支援します。この情報を参考に、新しいパッケージをインストールするか、可能であれば命令を削除してコンテナイメージをさらに最適化するかを判断できます。
次の例では、Dockerfileの命令apt-get install -y gitによってライブラリの脆弱性が持ち込まれていることがわかります。この情報をもとに、このコンテナでgitが本当に必要か、またはそのライブラリに代替バージョンがあるかを判断できます。

Snyk ContainerとHarbor:コードとコンテナの脆弱性を一元的にスキャン
SnykとHarborのインテグレーションにより、Harborリポジトリ内でオープンソースの依存関係とコンテナイメージの脆弱性をまとめて検出・修正できます。脆弱性の件数を報告するだけでなく、Snyk Containerは推奨される修正方法と優先順位付けされた脆弱性の詳細を提示し、コンテナの脆弱性修正を加速します。この例では、Harborイメージの脆弱性スキャンでNPMアプリケーションを検出し、オープンソースライブラリの脆弱性も自動的にスキャンしています。

利用を開始する
HarborとのインテグレーションはSnyk ProおよびEnterpriseプランでご利用いただけます。オンプレミスとクラウドベースのHarborリポジトリの両方に対応しています。利用開始は簡単です。Snykを無料で利用してコンテナの保護を始めましょう。Harborとのインテグレーションをご希望の場合は、下のリンクからお問い合わせいただくか、アカウント設定後にインテグレーションページからご連絡ください。
安全な開発を!
開発者ファーストのコンテナセキュリティ
Snykは、コンテナイメージとKubernetesワークロードの脆弱性を検出し、自動的に修正します。
