30秒で判断
対応すべき人
- Linuxカーネルを使用しているサーバー・デスクトップ環境(ほぼすべてのLinux環境)
- とくにネットワーク集約型のサーバー(MSG_ZEROCOPY送信を行うアプリケーション)
対応不要な人
- すでに修正済みの安定版カーネルを使用している環境
確認コマンド
uname -r
# カーネルバージョンを確認し、ディストリビューションの修正版と比較
概要
Linuxカーネルのネットワークスタックにおいて、MSG_ZEROCOPYを使用するソケットのskbuff処理にuse-after-freeの脆弱性があります。
pskb_carve_inside_header()およびpskb_carve_inside_nonlinear()関数はskb_shared_infoヘッダーをmemcpyで新しいバッファにコピーしますが、zerocopy参照カウント(net_zcopy_get())を増加させません。これにより、解放されたubuf_info_msgzcを複数のskb_shared_infoが参照する状態が生じ、skb_zcopy_clear()による早期解放とその後の解放済みメモリへのアクセス(use-after-free)が発生します。
本脆弱性はデフォルトカーネル設定において非特権ローカルユーザーからroot特権昇格を達成するPoCが実証済みとのことです。
CVSSベクトル
| 項目 | 値 |
|---|---|
| Attack Vector | Local |
| Attack Complexity | Low |
| Privileges Required | Low |
| User Interaction | None |
| Scope | Unchanged |
| Confidentiality | High |
| Integrity | High |
| Availability | High |
| CVSSスコア | 7.8 (High) |
備考: CVSS 7.8(High)と評価されていますが、PoCによる根本昇格(root LPE)が実証済みであり、実質的な脅威度はCVSSスコアより高いと考えられます。
影響を受けるソフトウェア
| 製品 | バージョン |
|---|---|
| Linux kernel | net/core/skbuff.c の修正前全バージョン |
net/core/skbuff.cのpskb_carve_inside_header()およびpskb_carve_inside_nonlinear()に存在するバグです。
修正バージョンと回避策
修正: カーネル安定版ブランチへの修正コミットが利用可能です。修正はpskb_expand_head()と同様のパターンでnet_zcopy_get()呼び出しを追加したものです。
# ディストリビューション別のカーネル更新
# RHEL 8/9
sudo dnf update kernel
# Ubuntu 20.04/22.04/24.04
sudo apt-get update && sudo apt-get upgrade linux-image-generic
# Debian
sudo apt-get update && sudo apt-get upgrade linux-image-amd64
# 更新後は再起動が必要
sudo reboot
緊急の回避策: 現在のところ、この脆弱性のソフトウェア的な回避策は限定的です。カーネルパッチの適用が最も確実な対策です。
関連リンク
データソース: NVD (NIST), GitHub Advisory Database
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
