
2026/11/01 4:16
TCP のUse-After-Free:CVE-2026-98432/CVSS 9.8
RSS: https://news.ycombinator.com/rss
要約▶
日本語翻訳:
まとめ:
認証不要なリモートコード実行を許可する重大なセキュリティ脆弱性、CVE-2026-98432 が発生しており、Linux システムにおける Multipath TCP リッスナーを利用した攻撃が可能です。これは、Go 1.24 以降を実行している環境において特に深刻であり、デフォルトで危険なネットワーク構成を有効にできるようになっています。根本原因は不安定なメモリアクセス管理にあります:RCU(Read-Copy-Update)同期が完了する前に
kfree() を使用して特定のデータを解放しており、安全な kfree_rcu() の代わりにこれを用いることで、ユーザー認証なしでシステムメモリへの操作が可能になっています。本文
CVE-2026-98432:Linux カーネル重大脆弱性に関する報告
概要
Linux の安定版カーネルは、10 月 11 日と 15 日に「CVE-2026-98432」の緊急パッチを公開しました。
この脆弱性は、認証不要で遠隔地からアクセス可能な IPv4 TCP ハンドシェイク処理における**「フリー・アッフェル(メモリ解放後の再利用)」バグ**です。
- 脆弱性情報番号: CVE-2026-98432
- 評価スコア (CVSS 3.1): 9.8 (Critical/重大)
- 影響範囲: 機密情報漏洩 (High)、完全性侵害 (High)、可用性侵害 (High)
- 主な原因: 非認証ユーザーが遠隔地からカーネルメモリへのアクセス、改ざん、またはシステムクラッシュを引き起こせる可能性があります。
パッチが適用された Linux カーネルバージョン
各リリースブランチに対応するパッチバージョンと公開日は以下の通りです:
- 5.10: v272 (10 月 15 日)
- 5.15: v223 (10 月 15 日)
- 6.1: v190 (10 月 15 日)
- 6.6: v159 (10 月 15 日)
- 6.12: v113 (10 月 15 日)
- 6.18: v56 (10 月 11 日に公開)
- 7.2: v10 (10 月 11 日に公開)
- 7.3: (開発中,10 月 18 日予定)
現状のリスク状況(重要)
- Ubuntu: すべてのリリースパッケージが「脆弱(Vulnerable)」と表示されており、修正待ちです。
- Red Hat: RHEL 8, 9, 10 および OpenShift Container Platform 4/5 は現在影響ありで修正が用意されていません。評価は Critical (9.8) です。
- 上流(Upstream)と下流(Distribution)の差: 上流の修正はわずか 4 行ですが、多くのサーバーはディストリビューション独自のカーネルを使用しており、独自のパッチが必要になります。
今すぐ対応が必要な理由:
- このバグは IPv4 TCP コネクション受付時のコードに含まれており、アプリケーション側による認証チェック以前に実行されます。
- Anthropic の研究者が開発した「Claude モデル」が、認証情報なしで MPTCP リスナーを持つ Linux サーバー上でルート権限のコマンド実行を実行できる概念検証(PoC)コードを作成しました。
- Go プログラムはデフォルトでこのタイプのリスナーを開放するため、影響範囲が極めて広くなっています(詳細後述)。
主要事実一覧
| 項目 | 詳細 |
|---|---|
| CVE 番号 | CVE-2026-98432 「ipv4: RCU グレースペリオド後に inet_opt および ireq_opt を解放する」 |
| 严重度 | Critical (CVSS 3.1 9.8) Red Hat は 10 月 30 日に Important(8.1) から引き上げ。SUSE は Important、Ubuntu は High。 |
| 弱点の種類 | TCP ハンドシェイク中の IPv4 オプションデータにおける「フリー・アッフェル(メモリ解放後の再利用)」 CWE リストには未記載 |
| 影響 | 遠隔相手がカーネルヒープ内容へのアクセス、カーネルメモリの改ざん、またはクラッシュを引き起こせる。 Red Hat ブリーフィングでは「TCP コネクション処理中のレース条件を悪用し、遠隔コード実行(RCE)が可能」と評価。 |
| 対応済みバージョン | 10 月 11 日: 7.2.10, 6.18.56 10 月 15 日: 6.12.113, 6.6.159, 6.1.190, 5.15.223, 5.10.272 10 月 18 日: 7.3 |
| 未対応/脆弱 | Ubuntu(全リリース)、RHEL 8/9/10。 AlmaLinux は修正済みカーネルのテスト中。 4.4 以降のエンド・オブ・ライフ (EOL) ブランチには修正なし。 |
| 概念検証コード | Anthropic の PoC コードは公開されていない。 Go プログラムが脆弱なデフォルト挙動を示す原因を特定済み。 |
影響対象範囲
この脆弱性は、Linux カーネル 4.4 以降のすべてのバージョンに影響します。
- 対象となるサーバー:
- Web サーバー
- SSH サーバー
- データベースサーバー
- ロードバランサー
- Kubernetes ノード(ホストカーネルが対象)
- 影響のない接続: IPv6 コネクションは影響ありません。
- 注意点: コンテナをホストするサーバーでは、コンテナイメージを更新しても問題が解決しません。ホストカーネルの更新が必要です。
修正ステータス(2026 年 10 月 31 日時点)
| カーネルバージョン | ステータス | 対応バージョン (例) |
|---|---|---|
| 7.3 (Mainline) | 修正済み | 7.3-rc7 (2026/10/18 以降) |
| 7.2 (Stable) | 修正済み | 7.2.10 (2026/10/11) |
| 6.18 (Longterm) | 修正済み | 6.18.56 (2026/10/11) |
| 6.12 (Longterm) | 修正済み | 6.12.113 (2026/10/15) |
| 6.6 (Longterm) | 修正済み | 6.6.159 (2026/10/15) |
| 6.1 (Longterm) | 修正済み | 6.1.190 (2026/10/15) |
| 5.15 (Longterm) | 修正済み | 5.15.223 (2026/10/15) |
| 5.10 (Longterm) | 修正済み | 5.10.272 (2026/10/15) |
| 4.4 – 5.4 (EOL) | ディストリビューション依存 |
ディストリビューション別対応状況
ディストリビューション固有のカーネルは独自バージョンにパッチがバックポートされるため、上流バージョン番号とは異なる場合があります。トラッカーを確認してください。
- Ubuntu:
- 全リリースでパッケージを「Vulnerable」とリスト。
- 20.04, 18.04, 16.04 などには Security Notice が発表されていない場合が多い。
- Red Hat (RHEL):
- RHEL 8, 9, 10 および OpenShift Container Platform 4/5 は影響ありで修正未対応。
- 評価: Important (8.1) → Critical (9.8) に引き上げ(2026/10/30)。
- ブリーフィング RHSB-2026-016 で緩和策を提案。
- AlmaLinux:
- RHEL 用エラータより早くテストリポジトリに修正済みカーネルを公開中。
- AlmaLinux 8/9/10 向けの修正済みカーネル(例:
)がテスト中。kernel-6.12.0-211...
- Debian:
- "bookworm" (12), "trixie" (13) および unstable リポジトリで修正済み。
- DLA-4841-1, DLA-4850-1, DSA-6568-1 などがリリースされている。
- SUSE:
- SUSE Linux Enterprise Server 16.0 および 15 SP4〜SP6 で修正済み。
- openSUSE Leap 16.0 は修正済み、Leap 15.6 は影響あり。
- Oracle Linux:
- UEK (Unbreakable Enterprise Kernel) エラータが 10 月 16 日に公開(ELS A-2026-... など)。
- Oracle Linux 7〜10 の UEK 向けのみリスト。
- Amazon Linux:
- Amazon Linux 2 と 2023 で全カーネルが修正済み。
- ALAS-2026-xxxx や kernel パッケージ名での修正リリースあり。
脆弱性の仕組みと詳細
動作原理
Linux サーバーが TCP コネクションを受け入れる際、カーネルは半開のハンドシェイクを追跡するために軽量な「リクエストソケット」を使用します。接続完了時にフルソケットを作成しますが、接続相手の IPv4 ヘッダーオプション(データ)をエコーバックさせるために保持していました。
バグの核心
バグは、保存されたオプションデータを新しいコネクションへ渡す際にある**「コピーせず、そのまま渡し、直後に解放する」**という処理にあります。
- メモリ解放後、別の CPU がハンドシェイク応答を構築するためそのメモリを読み取っていた場合、「フリー・アッフェル(メモリ解放後の再利用)」が発生。
- これにより遠隔相手がカーネルヒープメモリーへのアクセスやデータ改ざんが可能になります。
- バグはアプリケーションコード実行前、つまり認証前の段階で発生するため、セキュリティ侵害リスクが極めて高いです。
MPTCP と Go プログラムの特殊性
- MPTCP リスナー: Anthropic の PoC コードはこの要件を満たすために MPTCP リスナーが必要でした。
- Go プログラムの影響: Go 1.24 以降、Linux 上のリスニングソケットにおいて Go プログラムはデフォルトで MPTCP を有効にします(
の設定に従う)。go.mod- AlmaLinux は出荷時に MPTCP オフですが、Debian 12 カーネルなどは
でオンです。net.mptcp.enabled = 1 - Go セキュリティチームは「根本的なバグは MPTCP に特定ではない」として、MPTCP リスナーのないシステムでも同様の脆弱性を抱えている可能性を示唆しています。
- AlmaLinux は出荷時に MPTCP オフですが、Debian 12 カーネルなどは
修正方法と手順
1. 推奨:カーネルの更新(最重要)
最も確実な対策は修正済みカーネルへのアップグレードです。
- 対応アクション:
- ディストリビューションのパッケージマネージャから修正済みカーネルをインストール。
- 必ず再起動する(カーネル更新は起動時にのみ適用)。
- コンテナホストや Kubernetes ノードでもホストの再起動が必要です。
- 対応済みの環境: Debian, SUSE Linux Enterprise Server 16.0/15, openSUSE Leap 16.0, Oracle Linux UEK, Amazon Linux 2/2023 など。
- 未対応環境 (Ubuntu/RHEL): 修正待ちのため、以下の「緩和策」を考慮してください。
2. 緊急時:パッチ適用不能な場合の緩和策(nftables)
Red Hat と AlmaLinux は、IP オプションを含む入ってくる IPv4 TCP パケットをドロップするルールを推奨しています。これは完全防衛ではありませんがリスクを軽減します。
nftables ルール(推奨)
# IPv4 ヘッダー長が 20 バイトより大きいパケット(オプション付与)をドロップ # IPv6 や非 TCP トラフィックには影響しません。 nft add table ip cve_2026_98432 nft add chain ip cve_2026_98432 prerouting { type filter hook prerouting priority -100; policy drop; } # 具体的なルールの追加(ヘッダー長チェックなど)は distro によるが、以下の例のようなロジックを実装。 # (注: 実際の nftables コマンドはディストリビューションのマニュアルを参照すること)
iptables ルール(代替手段)
nf_tables モジュールがある場合のルールです。RHEL 8 は xt_u32 モジュールが必要ですが、RHEL 9/10 では nft ルールの使用推奨です。
- 削除方法:
コマンドを使用し、再起動まで有効。iptables -D ... - 制限事項: AlmaLinux は CIPSO セキュリティレベルに依存するネットワークでの使用を警告しています。
3. MPTCP の無効化(Go プログラム対策)
Anthropic の攻撃セットアップを防ぐため、MPTCP をオフにする設定が有効です(バグ自体は残り得ますがリスク軽減)。
- AlmaLinux / サーバー設定: ネットワーク名前空間ごとの設定で MPTCP をオフ。
# Docker コンテナ起動時のフラグ例 docker run --sysctl net.mptcp.enabled=0 <image> - Go プログラムの場合: 環境変数
を設定するか、GODEBUG=multipathtcp=0
で対応。go.mod- 警告: Go セキュリティチームはプログラムごとの無効化を「脆弱な緩和策」と位置づけています。
タイムラインと攻撃ステータス
基準時刻: CDT(UTC-5)
| 日付 | 主要出来事 |
|---|---|
| 10 月 1 日 | Eric Dumazet が修正コミットを投稿し、Xinyang Ge (Anthropic) に報告者クレジット。 |
| 10 月 5 日 | 修正が Linux カーネルのネットワークツリーにマージ。 |
| 10 月 11 日 | Linux 7.2.10 および 6.18.56 がパッチ付きで公開。 RHEL/CentOS 系への展開開始。 |
| 10 月 15 日 | Linux 6.12, 6.6, 6.1, 5.15, 5.10 の安定版リリースにパッチ追加。CVE レコード公開。 |
| 10 月 16 日 | Oracle から Oracle Linux UEK 向けエラータ公開。 |
| 10 月 18 日 | Mainline カーネル 7.3 が修正済みでリリース。 |
| 10 月 24 日 | Amazon Linux 2023 kernel6.18 パッチ対応。 |
| 10 月 29 日 | Go セキュリティチーム: Go 1.24 以降デフォルトで MPTCP リスナーが開くことを発表。 Ubuntu は依然脆弱とリスト継続。CVE 参照 GitHub レポジトリが出現開始。 |
| 10 月 30 日 | AlmaLinux でテストリポジトリ公開。 Red Hat が評価を Critical(9.8) に引き上げ、緩和策ブリーフィング発表。 |
| 10 月 31 日 | GitHub 上で CVE を参照するレポジトリが 36 に達し(そのうち少なくとも 6 つは PoC 含む)、攻撃コードの流出が進んでいる状況。 |
攻撃ステータスの概要
- Anthropic は「初期プロンプト後」に Claude モデルで攻撃コードを作成。
- PoC の実行時間: カーネルポインタ漏洩まで約 48 分、シェルコマンド実行まで約 5 分(MPTCP リスナー持サーバー限定)。
- 現状: Red Hat は「遠隔コード実行が可能」と評価しており、CVE が CISA の KEV (Known Exploited Vulnerabilities) カタログに掲載される可能性が高まっている。
まとめと今後の動向
更新情報(2026 年 10 月 31 日午後 5 時 15 分現在)
- Red Hat は緩和策を含めて評価を引き上げ、リスクを再定義しました。
- Go セキュリティチームによる MPTCP デフォルト有効化の発表により影響範囲が拡大しています。
- GitHub 上の PoC コードは 36 レポジトリに達し、一部は既に利用可能となっています。
次の更新内容について
以下のいずれかが発生した場合、情報は再発します:
- Ubuntu や Red Hat から本番環境での修正済みカーネルリリース。
- NVD(米国政府脆弱性情報データベース)による分析結果の公開。
- CISA KEV リストへの掲載や、実際の悪用報告。
- IPv6 への別個の修正パッチ発表。
ヘルプを求める場合
再起動計画を立てるのが困難な場合、または複雑なアーキテクチャ(Kubernetes など)がある場合は、専門アドバイザーへの相談を検討してください。