サーバー運用者の危機対応

悪用が確認された脆弱性に、修正版がない

「更新してください」では解決しない警告が出たとき、外から届く経路を調べ、軽減し、期限つきで受け入れるまでの判断を学びます。

  • レベル: 実践
  • 約30分
  • 2026-11-03

#状況

夕方、サーバーから通知が届きました

「悪用の恐れが高い脆弱性が、未修正のまま残っています(1 件)」。パッケージは webkit2gtk、CVE-2026-3909 で、KEV の印が付いています。通知は「パッケージを更新してください」と言っています。

更新しました。警告は消えません。

これは作り話ではなく、実際に出た警告を題材にしています。「更新すれば直る」という前提が崩れたとき、運用者は判断を迫られます。このモジュールは、その判断の筋道を学ぶ手順書です。扱う機能は、パッケージの既知の脆弱性の照合、悪用される恐れの高い脆弱性の診断、脆弱性の受容 です。

#最初の 15 分で、警告を読む

あわてて動く前に、警告に出ている言葉の意味を確かめます。

表示意味この警告では
KEVCISA(米国のサイバーセキュリティ機関)が、実際に悪用された脆弱性を載せている一覧(KEV カタログ)。優先順位を決める材料として使うよう、案内されています載っている
EPSSその CVE が、今後 30 日以内に実環境で悪用される確率の推定(0〜1、FIRST)。毎日更新されます2%
CVSS脆弱性の深刻度の目安。悪用されやすさとは別の指標です8.8
修正版直った版がパッケージとして公開されているかまだありません

読み落としやすい点が 2 つあります。

  • KEV の印は、「どこかで悪用された」という意味です。あなたのサーバーが狙われている、という意味ではありません
  • CVE の説明が指している製品と、あなたの入れているパッケージは、同じとは限りません。この CVE の説明は「Google Chrome の Skia の範囲外書き込み」です。WebKitGTK が実際に影響を受けるかは、説明文だけでは決まりません。Ubuntu の脆弱性の管理表では、webkit2gtk は 24.04、26.04 ともに deferred(対応を保留)です(Ubuntu CVE)
「更新しても消えない」の意味

RoamSwitch は、修正版がないときは、そのとおりに表示します。「修正版: まだありません。パッケージを更新しても、この件は解消しません」。更新では解決できない警告だと、最初に分かります。

#判断の分かれ目

3 つの問いに、順に答える
  1. このマシンで、そのパッケージは使われていますか。 使われていなければ、削除するのが最も確実です。警告も消えます
  2. 使われているなら、攻撃者が細工したデータを、届けられますか。 ネットワークで待ち受けているか、細工された内容(Web ページ、メールなど)を開くような使い方をしているかを調べます
  3. 軽減できますか。 使うアプリを止める、別のもので置き換える、といった手があるかを考えます

3 つの問いのどれにも「はい」と答えられなければ、承知のうえで、期限つきで受け入れることを検討します。

#外から届く経路があるかを調べる

警告が指しているパッケージが、このマシンで実際にどう使われているかを調べます。使うのは、読み取りだけのコマンドです。

使われ方を調べる

手元の警告に合わせて、CVE とパッケージの名前を読み替えてください。

# 1. 警告の内容(読み取りのみ)
sudo roamswitch scan-packages | grep -A9 "CVE-2026-3909"

# 2. そのパッケージに依存して、入っているものは何か
apt-cache rdepends --installed libwebkit2gtk-4.1-0

# 3. 今、動いているプロセスで、そのライブラリを読み込んでいるもの
sudo grep -l "libwebkit2gtk\|libwebkitgtk" /proc/[0-9]*/maps | cut -d/ -f3 | while read p; do ps -o comm= -p $p; done | sort | uniq -c

# 4. そのプロセスが、ネットワークで待ち受けているか(PID ごとの件数。すべて 0 なら待ち受けなし)
for p in $(sudo grep -l "libwebkit2gtk\|libwebkitgtk" /proc/[0-9]*/maps | cut -d/ -f3 | sort -u); do sudo ss -lntup | grep -c "pid=$p,"; done
実行結果(抜粋)
CVE-2026-3909  [Ubuntu 26.04] webkit2gtk 2.52.6-0ubuntu0.26.04.1 (CVSS 8.8)
  KEV  米国CISAが、実際に悪用されていることを確認した脆弱性です。
  EPSS 2% (2026-11-01)
  修正版: まだありません

Reverse Depends:
  gir1.2-webkit2-4.1
  libedataserverui-1.2-4t64

      1 evolution-alarm
      1 evolution-sourc
      1 gnome-initial-s

0
0
0

この結果から、次のことが分かります。

  • このパッケージに依存しているのは、メールソフトの Evolution と、GNOME の初期設定の部品です。サーバーの役目とは関係がありません
  • 今動いているのは、Evolution のバックグラウンド処理だけで、ウェブページやメールを開く画面は動いていません
  • 3 つのプロセスとも、待ち受けているポートは 0 件です。ネットワークから直接届く経路はありません

手順 4 は、プロセス名ではなく PID で照合します。ss -ltnp | grep webkit のように名前で絞ると、プロセス名に「webkit」が入っていないというだけで、待ち受けていても 0 件になり、見落とします。この方法が正しいかどうかは、待ち受けていると分かっているプロセス(たとえば sshd)で試すと確かめられます。

#期限つきで受容する

3 つの問いに答えた結果、「使われているが、細工されたデータを開く使い方はしておらず、待ち受けもなく、今は軽減する手もない」と判断したとします。このとき、理由と期限を付けて記録するのが「受容」です。

変更を伴う操作です

次のコマンドは、記録を残します(~/.config/roamswitch/vuln_acceptances.json)。この教材の演習では実行しません。実際の運用で、判断が済んでから実行してください。

受容を記録する(変更を伴う)
sudo roamswitch vuln-accept Ubuntu webkit2gtk CVE-2026-3909 \
  --version 2.52.6-0ubuntu0.26.04.1 --days 30 \
  --reason 'Ubuntuが対応見送り(deferred)で修正版なし。CVEはChromeのSkia。webkit2gtkを使うのはEvolution等のみでネットワーク待ち受けなし。30日後に再評価'
受容の一覧(roamswitch vuln-accept --list)
Ubuntu webkit2gtk CVE-2026-3909 (2.52.6-0ubuntu0.26.04.1)
  期限: 2026-12-03 (あと29日)
  理由: Ubuntuが対応見送り(deferred)で修正版なし。CVEはChromeのSkia。(以下略)
  記録: tetsuharu (2026-11-03)

受容には、次の性質があります。

  • 直ったわけではありません。 警告が「要対応」の数から外れ、「受容中」として別に数えられるだけです。一覧には残ります
  • 期限があります。 既定は 90 日、最長は 365 日です。期限が来ると「要対応」に戻り、記録は残ります
  • 理由が必須です。 あとから、誰が、なぜ受け入れたかを読めます
  • その版にだけ効きます。 パッケージが別の脆弱な版に変わると、新しい検出として要対応になります

#期限が来たとき

期限は、見直しの予定日です。期限の日に、次の順で確かめます。

  1. 修正版は出ましたか(apt-cache policy と、ベンダーの脆弱性の管理表で確かめます)
  2. このパッケージは、まだ必要ですか。使わなくなっていれば、削除します
  3. 状況は変わりましたか(新しい使い方が増えた、細工されたデータを開く場面が出た、など)
  4. それでも受け入れるなら、新しい理由を書いて、もう一度記録します
やってはいけないこと
  • 理由を書かずに受容する。あとで見返す自分も、ほかの運用者も、判断の根拠を読めなくなります
  • よく考えずに、最長の 365 日にする。期限は、見直す日です
  • 「Chrome の話だから」と、調べずに無視する。説明文と、入れているパッケージの関係は、調べて初めて言えます
  • 警告を止めるために、点検そのものを止める。見えなくなるだけで、状況は変わりません

#見えない部分

この手順で確かめられないもの
  • このパッケージが、実際にこの CVE の影響を受けるかどうかは、警告からは分かりません。警告は、パッケージ名と版を、脆弱性の対応表と照合して出しています
  • 手順 3 の調べ方で見えるのは、今動いているものだけです。これから起動するアプリは、別に考える必要があります
  • 対応表は定期的に更新されます。新しい情報によって、状況が変わることがあります(修正版の公開や、悪用の報告の追加など)
  • 受容は、リスクを下げません。下げるのは、軽減(削除、停止、置き換え)です
確認問題

受容を記録した後の状態として、正しいものはどれですか

解説を見る

受容は、「承知のうえで、期限つきで残す」という判断の記録です。直ったという意味ではありません。期限が来たら、見直しの時期です。

扱う機能
確認した内容

2026-11-03に確認しました。対象は Linux 1.17.30 です。Ubuntu 26.04 の Server Edition で、実際に出た警告(webkit2gtk)を調べた手順

コマンドの出力は、製品の版や環境によって変わります。違いが出たら、まず製品の版を確かめてください。