Skip to main content

エクスプロイトの成熟度に基づくコンテナ脆弱性の優先順位付け

Prioritisation header feature

2020年9月9日

0 分で読めます

Snykの製品全体で利用できる優先順位付け機能のリリースについて、すでにご覧になった方も多いかと思います。まだの方は、Priority Score機能と、SnykがKubernetesの情報を活用して脆弱性の優先順位付けに反映する方法を紹介したブログ記事をぜひご覧ください。本日は、修正すべきコンテナ脆弱性の優先順位付けに役立つ、Snykが提供する脆弱性情報をもう一つご紹介します。それは、Linux脆弱性のエクスプロイト成熟度です。

この新しい情報により、どの脆弱性に優先的に対処すべきかをすばやく判断できます。コンテナのエコシステムでは、1つのコンテナイメージに数百もの脆弱性が見つかることも珍しくないため、これは特に重要です。このたび、エクスプロイト成熟度データがSnyk Containerの脆弱性スキャンで利用可能になりました。また、新しいPriority Scoreの計算にも標準で組み込まれています。

libgd2/libgd3のSnyk脆弱性詳細。範囲外書き込み、優先度スコア671、成熟したエクスプロイトのステータスを表示。

コンテナにおけるエクスプロイト成熟度とは何か、脆弱性のリスクにどう影響するのか?

Snykのセキュリティチームは、開発者がどの問題から修正すべきか判断できるよう、2019年にオープンソースの脆弱性へのエクスプロイト成熟度情報の追加を開始しました。そのため、この考え方自体は新しいものではありません。エクスプロイトコードの成熟度(略して「エクスプロイト成熟度」)とは、脆弱性が実際の環境でどれほど悪用されやすいかを、次の点から評価するものです。

  • エクスプロイトが公開されているか(「実環境で出回っている」かどうか)。また、

  • 公開されたエクスプロイトが実際にどれほど「有用」か、つまり、その公開によって脆弱性をより簡単に悪用できるようになるかどうか。

つまり、利用できるエクスプロイトがなければ、脆弱性を悪用するのはより困難です。一方で、エクスプロイトが公開されていても、ある程度の専門知識なしに簡単に侵害できるとは限りません。

悪用されやすい脆弱性と実行中のワークロードに存在する脆弱性の重なりを示し、早急な修正を促す注釈が付いたベン図。

CVSSスコアの仕組みをご存じの方は、Snykが提供するエクスプロイト成熟度の情報がなぜ重要なのか疑問に思うかもしれません。一般的な開発者にとっての使いやすさと、実際のアクションにつなげることが重要です。CVSSスコアは多くのデータポイントを考慮します。Snykのセキュリティ研究者は独自の分析に基づいてエクスプロイト成熟度情報をデータベースに追加し、エクスプロイトの有無や実装状況を基準に、コンテナやアプリケーションの脆弱性スキャン結果を簡単に優先順位付けできるようにしています。

ワークフローでSnyk Containerのエクスプロイト成熟度を活用する

Linux脆弱性の新しい優先順位付け機能をワークフローでどう活用できるのか、よくあるユースケースを見てみましょう。コンテナの脆弱性レポートを初めて見たとき、圧倒されることがあるという声をよく耳にします。1つのイメージに数百もの脆弱性が含まれていることもあります。Snykでは、まずベースイメージを特定し、代替イメージの選定を支援することから始めます。これが、多数の脆弱性を一度に減らす最も速い方法の一つだからです。

それでも多くの脆弱性が残る場合があります。対処に集中するには、Kubernetesクラスターで稼働中のワークロードにある脆弱性のうち、成熟したエクスプロイトが存在するものにアプリチームが注力できるようにします。次に、パイプラインテストでも同様の結果を提供し、「成熟」したエクスプロイトがあり、深刻度が「高」のコンテナイメージ内の脆弱性を検出します。

エクスプロイト成熟度に基づいてコンテナセキュリティの脆弱性を検出・フィルタリングする

まず、エクスプロイトが利用可能な稼働中のワークロードのうち、成熟または概念実証の段階にあるものに注目します。これらはクラスター内で実際に稼働しているため、特に危険な攻撃経路となる可能性があります。

Snykでは、Linux脆弱性のエクスプロイト成熟度データとKubernetesワークロードの設定データを組み合わせて、脆弱性を簡単に確認できます。以下では、組織のレポートを開き、次の条件に該当する脆弱性だけを表示しています。

  1. クラスター内で稼働している(Projectsフィルター)

  2. 成熟または概念実証のエクスプロイトがある。

プロジェクトフィルターと脆弱性テーブルの上にあるExploit Maturityフィルターを表示したSnyk Reportsダッシュボード。

このレポートでは、これらの条件に一致する検出結果が多数表示されています。以下のようにプロジェクトを開くと、さらに詳しい情報を確認できます。プロジェクトビューでは、画面左側でエクスプロイト成熟度を使って再度フィルタリングしており、表示された結果に成熟したエクスプロイトを示す指標が追加されているのがわかります。この情報は、クラスター内で稼働するPodの設定など他の要素とあわせて、SnykのPriority Scoreにも反映されます。

成熟したエクスプロイトで絞り込まれたSnykの脆弱性ダッシュボード。エクスプロイト成熟度が「MATURE」、優先度スコアが671と表示されたbinutilsの問題を示しています。

利用を開始する

Snykアカウントをお持ちで、Snyk Containerの利用を開始している方は、今すぐLinuxのエクスプロイト成熟度データをご利用いただけます。エクスプロイト成熟度は、すべてのSnykプランでご利用可能です。Snyk Containerをまだお試しでない方も、無料で始められます。

安全な開発を!

開発者ファーストのコンテナセキュリティ

Snykは、コンテナイメージとKubernetesワークロードの脆弱性を検出し、自動的に修正します。