
Falco Feedsは、オープンソースに焦点を当てた企業に、新しい脅威が発見されると継続的に更新される専門家が作成したルールにアクセスできるようにすることで、Falcoの力を拡大します。

SREを疲弊させる「脆弱性1,000件」問題の正体
あなたのチームでも、次のような会話が繰り返されていないでしょうか。
「コンテナのスキャンを回したら、またCritical脆弱性が50件出ました。どれから直しますか?」
コンテナイメージをスキャンすると、数百〜数千件の脆弱性が検出されることは珍しくありません。なかには、Critical脆弱性だけで50件以上見つかるケースもあります。
しかし、本質的な問題は「50件」や「1,000件」という数字の大きさそのものではありません。その中で、本当に今すぐ対処すべき脆弱性が何件あるのかを、チームが判断できないことにあります。
ここで重要なのは、スキャン結果に表示される脆弱性のすべてが、現在の本番環境で同じリスクを持つわけではないという点です。ライブラリがコンテナイメージ内に存在していても、それが実際に実行されていなければ、現時点で攻撃経路として悪用される可能性は限定的です。
つまり、スキャン結果に並ぶ膨大な脆弱性リストの大部分は、いま現在の実リスクとは切り離された「ノイズ」である可能性があります。
それでもSREチームは、そのノイズに日々追われ続けます。すべてを修正しようとすれば、開発チームのスプリントは止まり、ビジネスのスピードも損なわれます。一方で、放置すれば本当に危険な脆弱性を見逃すリスクを抱えたまま運用を続けることになります。
「すべて修正して開発を止める」のか。
「無視してリスクを抱え続ける」のか。
この二択の板挟みこそが、多くのSREチームを疲弊させている構造的な問題です。
しかし近年、この問題に対する第三の選択肢として注目されているのが、リスクベース脆弱性管理です。すべてを一律に修正するのではなく、実際の稼働状況や攻撃経路、影響度に基づいて、本当に対応すべき脆弱性を見極めるアプローチです。
この判断を支えるのが、Sysdig Secureの「ランタイムインサイト」です。ランタイムインサイトとは、実行中のワークロード情報を脆弱性管理に活用する仕組みです。脆弱性スキャンの結果に、実行時の情報を掛け合わせることで、イメージ内に存在する脆弱性のうち、実際に利用されているものを優先的に浮かび上がらせます。
その結果、本当に修正すべき脆弱性を一桁%台まで絞り込めるケースもあります。残りの多くについては、根拠を持って優先度を下げる判断が可能になります。
本記事では、このアプローチの考え方と具体的なプロセスを、実際の操作ステップを想定した検証シナリオとして解説します。
なお、ランタイム検知の仕組みそのもの、たとえばFalcoやeBPFがどのように挙動を捉えるのかについては「コンテナランタイムセキュリティとは?Falcoによるリアルタイム検知の仕組み」で詳しく解説しています。また、SRE視点でのリアルタイム検知の考え方を知りたい場合は「SREに『実用的なリアルタイム脅威検知』を提供」も参考になります。
検証環境:典型的なマイクロサービス構成
今回の検証シナリオでは、多くのエンタープライズ企業で見られる、次のような環境を前提とします。Kubernetesを利用しているチームであれば、概ね共通する状況です。
- インフラ:Kubernetesクラスター上で稼働するマイクロサービス構成
- アプリケーション:Java / Pythonベースの複数サービス
- 稼働状況:本番環境で継続稼働中
- スキャン結果:定期的な脆弱性スキャンによりCritical脆弱性が50件検出
- 現状の課題:開発チームから「どの脆弱性から対応すべきか?」という問い合わせが急増
このような状況では、スキャン結果に多数の脆弱性が並ぶ一方で、その中から本当に優先すべき対象を特定する手段が不足しがちです。その結果、SREやセキュリティチームは、開発チームに対して十分な根拠を示せないまま修正依頼を出さざるを得なくなります。
次のセクションでは、この50件のCritical脆弱性の中から、実際に対応すべき脆弱性をどのように特定するのかを、Sysdigのランタイムインサイトを使った3つのステップで見ていきます。
検証シナリオ:3ステップでノイズを削ぎ落とす
ここからが本題です。Sysdig Secureの画面を操作しながら、定期スキャンで検出されたCritical脆弱性50件を段階的に絞り込み、今すぐ対処すべきリスクを特定するまでのプロセスを追います。
なお、本検証は既存のKubernetes環境にSysdigエージェントを導入することで開始できます。大がかりな追加インフラを準備する必要はありません。In-Useの判定データは、エージェント導入から半日程度で揃い始めます。導入直後は実行中パッケージの情報がまだ反映されていない点に注意してください。
ステップ1. 実行状況(In-Use)による絞り込み
操作:脆弱性ダッシュボードで「In-Use」フィルタをオンにする
まず、Sysdig Secureの脆弱性ダッシュボードを開き、フィルタバーにある「In-Use(実行中)」をオンにします。
これにより、コンテナイメージ内にライブラリとして存在していても、実際にはロードされていない脆弱性を優先対応リストから除外できます。
なぜこれが重要なのか
攻撃者が脆弱性を悪用するためには、対象となるコードが実際に実行されている必要があります。ロードされていないライブラリに含まれる脆弱性は、理論上のリスクではあっても、現時点で現実の攻撃経路になる可能性は低いと考えられます。
もちろん、これは「永久に無視してよい」という意味ではありません。動的ロードや設定変更によって、将来的に実行される可能性はあります。そのため、In-Useの情報は脆弱性を無視するための根拠ではなく、優先度を下げるための判断材料として活用します。
Sysdigでは、エージェントが収集するランタイム情報をもとに、どのパッケージが実際にロードされているかを把握します。この実行時の情報を脆弱性スキャン結果に組み合わせることで、スキャン結果の中から実リスクの高いものを絞り込めます。
検証結果:50件 → 約10〜20件
このステップだけでも、対応対象となる脆弱性は大幅に絞り込まれます。今回の検証シナリオでは、Critical脆弱性50件のうち、実際に実行中のパッケージに関連するものは約10〜20件まで減少しました。
ステップ2. 攻撃パスの可視化
操作:脆弱性をクリックし、Cloud Attack Graphでコンテキストを確認する
次に、「In-Use」フィルタで絞り込まれた脆弱性の中から、任意のCritical脆弱性をクリックします。
Sysdig Secureでは、その脆弱性を持つコンテナがインフラ全体の中でどのような位置にあるのかを、Cloud Attack Graphで確認できます。Cloud Attack Graphは、攻撃者がどの経路で侵入し、どこまで到達できる可能性があるのかを、クラウド環境全体のつながりとして可視化する機能です。
これにより、単に「脆弱性が存在するか」だけでなく、「その脆弱性が攻撃者にとって到達可能か」「侵害された場合にどこまで影響が広がるか」を把握できます。
Sysdigが確認する主なコンテキスト
たとえば、次のような情報を組み合わせてリスクを評価します。
- そのコンテナはインターネットに直接公開されているか
- Privileged(特権)モードで動作しているか
- ホストのファイルシステムやネットワークにアクセスできるか
- 外部から到達可能な経路があるか
- 侵害された場合に他のリソースへ横展開できる可能性があるか
こうした情報を組み合わせることで、「その脆弱性が実際に攻撃に利用される可能性があるか」を、単なるCVSSスコアではなく、自社環境のコンテキストに基づいて判断できます。
たとえば、実行中の脆弱性であっても、外部から到達できないワークロードや権限の低いコンテナであれば、即時対応の優先度を下げられる可能性があります。一方で、インターネットに公開され、特権コンテナとして動作し、ホストへのアクセス権限を持つ場合は、優先度を高く設定すべきです。
つまりこの段階では、次のような優先順位付けが行われます。
- In-Use:実際に実行されているか
- Reachable:攻撃者が到達できるか
- Impact:侵害された場合の影響が大きいか
検証結果:10〜20件 → 5〜7件
Step 1で残った10〜20件の脆弱性は、外部到達性や権限、影響範囲を加味することで、外部侵入やホスト侵害につながり得る5〜7件程度まで絞り込まれました。
この段階で、単なる脆弱性リストは「攻撃シナリオ」として整理されます。SREやセキュリティチームは、開発チームに対して「なぜこの脆弱性を先に直すべきなのか」を、環境コンテキストに基づいて説明できるようになります。
ステップ3. AIによる優先度判定
操作:Sysdig Sage™に「この脆弱性を後回しにしてよいか?」と問いかける
最後に、Step 2で残った候補について、多段階推論型のAIアナリストであるSysdig Sage™に自然言語で問い合わせます。
たとえば、次のような質問ができます。
「この脆弱性は今すぐ修正すべきですか?」
「この脆弱性を一時的に後回しにしてもよい根拠はありますか?」
「このワークロードが侵害された場合、どのリソースに影響しますか?」
Sysdig Sage™は、ランタイムイベント、通信ログ、インフラ構成、攻撃パスなどのコンテキストを組み合わせて分析し、対応優先度の判断材料を提示します。
ここで重要なのは、Sysdig Sage™が優先順位を自動で最終決定するわけではないという点です。あくまで、判断材料を整理するアシスタントとして機能します。最終的な対応判断は、SREやセキュリティチームが行います。
Sysdig Sage™の回答例
「過去30日間の通信ログを確認したところ、このポートへのアクセスは内部ネットワークに限定されています。外部からの到達可能性が確認できないため、現時点では修正優先度を下げることが可能です。ただし、ネットワークポリシーの変更や外部公開設定の追加が行われた場合は、再評価が必要です。」
このように、単に「危険」「安全」と断定するのではなく、判断の根拠と条件を含めて提示されるため、チームとして意思決定しやすくなります。
検証結果:50件のCritical脆弱性のうち、即時対応すべきものは3件に絞り込み
最終的に、今回の検証シナリオでは、50件のCritical脆弱性のうち、即時対応すべきものは3件に絞り込まれました。残りの脆弱性についても、単に放置するのではなく、根拠を持って「後回し」として整理できます。
このステップにより、対応判断が属人的な勘や経験に依存せず、再現性のある優先順位付けとして運用に落とし込めます。
実行時(Runtime)こそがSREの武器になる
ここで、ここまで扱ってきた「ランタイムインサイト」と、これから説明する「ランタイム脅威検知」の違いを整理しておきます。
ランタイムインサイトは、「何を直すべきか」を判断するための機能です。一方、ランタイム脅威検知は、「修正が完了するまでの間を守る」ための機能です。
ここまでの検証シナリオで、脆弱性の絞り込み自体は完了しました。しかし、優先順位付けによって「後回し」と判断した脆弱性も、完全に無視してよいわけではありません。設定変更、動的ロード、外部公開範囲の変更、ラテラルムーブメントなどによって、将来的に攻撃面に組み込まれる可能性があります。
また、実際の修正作業には時間がかかります。パッチ適用には、影響調査、テスト、レビュー、デプロイといったプロセスが必要です。その間も、本番環境は稼働し続けます。
この「修正までの隙間」をどのように守るかは、SREにとってもう一つの重要な課題です。
この課題に対するSysdigのアプローチが、ランタイム脅威検知による本番環境の挙動監視です。脆弱性を特定して優先順位をつけるだけでなく、修正が完了するまでの間、実際に環境内で何が起きているのかをリアルタイムで監視し続けることができます。
Sysdig Secureは、コンテナ、Kubernetes、クラウド環境における通常の動作パターンを継続的に監視し、そこから逸脱した挙動を検知します。たとえば、不審なファイル書き込み、リバースシェルの確立、権限昇格の試行、通常とは異なるプロセス実行など、多くの攻撃に共通する挙動を捉えることができます。
これは、CVEが公開される前の未知の攻撃に対しても重要です。ゼロデイ攻撃であっても、最終的には環境内で何らかの不審な挙動として現れる場合があります。Sysdig Secureは、こうしたランタイム上の異常をリアルタイムで検知することで、修正が完了するまでのリスクを抑える役割を果たします。
つまり、Sysdigのランタイム機能群は、SREにとって二重の意味で武器になります。
ランタイムインサイトは、修正前に「何を直すべきか」を判断するための基準を提供します。ランタイム脅威検知は、修正作業のあいだ「本番環境で何か起きていないか」を監視する目として機能します。
脆弱性管理を単なるリスト消し込み作業に終わらせず、本番環境の実態に基づいた動的なリスク管理へと進化させる。これがSysdigのランタイムファーストなアプローチです。
クラウドセキュリティでは、「どれだけ早く直せるか」だけでなく、「直すまでの間に何が起きているかを把握できるか」も重要になります。
まとめ:SREが手にする3つの成果
本記事の検証シナリオでは、50件のCritical脆弱性を最終的に3件まで絞り込む流れを紹介しました。このように、ランタイムインサイトを活用したリスクベース脆弱性管理は、SREチームに大きく3つの成果をもたらします。
CVSSスコアの高さだけで対応順を決めるのではなく、実行状況、到達可能性、影響度という実リスクに基づいて優先順位を決める。これが、リスクベース脆弱性管理の中核です。
1. トイル(Toil)の削減
第1の成果は、トイルの削減です。
根拠の乏しい脆弱性対応に費やしていたパッチ適用作業を、大幅に削減できます。
Step 1の「In-Use」フィルタだけでも対応対象は60〜80%減少しました。さらに、Step 2とStep 3で攻撃経路や環境コンテキストによる絞り込みを重ねることで、環境によっては90%以上のノイズ削減につながる可能性があります。
これまで脆弱性リストの消し込みに追われていた時間を、本来SREが注力すべきシステムの信頼性向上やサービスの安定運用に振り向けることができます。
2. 修正までのリードタイム短縮
第2の成果は、修正までのリードタイム短縮です。
修正すべき対象の優先順位が明確になれば、「どれから対応するべきか」を議論する時間を減らせます。チームの負荷を抑えながら、本当に危険な脆弱性へ最短で着手できます。
これは、セキュリティ対応のスピードを上げるだけでなく、開発チームの作業計画にも良い影響を与えます。緊急対応すべきものと、通常の改善サイクルで対応すべきものを分けられるため、スプリント計画を壊さずに脆弱性対応を進めやすくなります。
3. 開発チームとのDevOps連携の改善
第3の成果は、開発チームとの連携改善です。
これまでセキュリティ部門からの修正依頼は、十分な根拠が示されないまま「すべて修正してほしい」という形になりがちでした。しかし、ランタイムの実データに基づいて依頼できるようになれば、開発チームとの会話は大きく変わります。
「この脆弱性は実行中で、外部から到達可能で、特権コンテナ上に存在しているため、優先して対応したい」
このように説明できれば、修正依頼は単なるアラートの転送ではなく、リスクに基づいた具体的な対応依頼になります。結果として、開発チームとの信頼関係が向上し、セキュリティが「開発のブレーキ」ではなく「サービスを守るパートナー」として機能しやすくなります。
これこそが、DevSecOpsの本来あるべき姿です。
このアプローチを実践したチームでは、最も致命的なリスクをもたらす脆弱性を特定し、「すぐ対処すべきもの」と「後で対処すべきもの」を明確に切り分けられるようになります。これは、脆弱性の数を管理するセキュリティから、実際のリスクに基づくセキュリティ運用へ転換することで、現場の働き方がどのように変わるのかを端的に示しています。
Sysdigのランタイム機能群に支えられたリスクベース脆弱性管理は、SREチームを「脆弱性リストの管理者」から「サービス信頼性の守り手」へと変えるアプローチです。
そしてこれは、脆弱性管理だけの話ではありません。ノイズを削ぎ落とし、本番環境を監視し続けることで、最終的にはインシデント対応そのものの効率化にもつながります。
次のステップ:あなたの環境で「ノイズ量」を測定してみませんか?
今回紹介した検証シナリオは、Sysdigが実際の本番環境で提供している機能をベースにしています。
「自分たちの環境では、どれだけのノイズが発生しているのか」
「本当に対応すべき脆弱性は何件なのか」
「Critical脆弱性のうち、実際に実行中で到達可能なものはどれなのか」
その答えは、実際の環境を確認することで初めて見えてきます。
Sysdig Secureなら、既存のKubernetes環境にエージェントを導入することで、ランタイムインサイトによる絞り込み効果を確認できます。スキャン結果に表示される脆弱性のうち、実際に対応すべきものが何件なのかを把握することが、リスクベース脆弱性管理の第一歩です。
脆弱性の数に振り回される運用から、本番環境の実態に基づいたリスク管理へ。
その転換は、あなたの環境に存在する「ノイズ量」を測定するところから始まります。
関連記事
- リアルタイム脅威検知、クラウド防御の基本を解説|SREがオンコールを減らす方法
- SREに「実用的なリアルタイム脅威検知」を提供
- アラート対応からエンジニアを解放せよ|OSSの力を最大化するSysdig Secureという運用基盤
- CDR(Cloud Detection and Response)とは
- コンテナランタイムセキュリティとは?Falcoによるリアルタイム検知の仕組み
- DevSecOpsとコンテナセキュリティ|SREが知っておくべき運用設計の考え方
- AIワークロードのコンテナセキュリティ|LLM・GPU環境を守る新しい視点