CVE-2026-23231
netfilter: nf_tables: nf_tables_addchain() における use-after-free の修正
- 公開済み
- 2026/03/04
- 更新済み
- 2026/09/08
- CNA の割り当て
- Linux
- 観察された証拠
- 2026/05/04
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H低 · 今後 30 日間
- パーセンタイル
- 54.3%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Linux カーネルにおいて、以下の脆弱性が解決されました: netfilter: nf_tables: nf_tables_addchain() の use-after-free を修正。nf_tables_addchain() は、フックを登録する前に、nft_chain_add() 内の list_add_tail_rcu() を介してチェーンを table->chains に公開します。その後 nf_tables_register_hook() が失敗すると、エラーパスは nft_chain_del() (list_del_rcu()) を呼び出し、その後に nf_tables_chain_destroy() を呼び出しますが、その間に RCU グレース期間がありません。これにより、次の 2 つの use-after-free 状態が発生します: 1) コントロールプレーン: nf_tables_dump_chains() は rcu_read_lock() の下で table->chains を走査します。エラーパスがチェーンを解放するとき、並行するダンプが依然としてチェーンを辿っている可能性があります。2) パケットパス: NFPROTO_INET の場合、nf_register_net_hook() は IPv6 の登録が失敗する前に IPv4 フックを一時的にインストールします。一時的な IPv4 フックを介して nft_do_chain() に入るパケットは、エラーパスがチェーンを解放するときにも chain->blob_gen_X を逆参照している可能性があります。チェーンの解放前にすべての RCU リーダー (ダンプスレッドと処理中のパケット評価の両方) が完了するように、nft_chain_del() とチェーン破棄の間に synchronize_rcu() を追加します。
ソース
1aviralyash27 · linux · 2026/05/04
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。