【活用ガイド】

JVNDB-2026-028226

LinuxのLinux Kernelにおける不特定の脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。svcrdmaにおいて、トランスポートがクローズされる際にsq待機中のスレッドをウェイクするsvc_rdma_sq_wait()内で、sc_sq_ticket_waitまたはsc_send_waitにて駐車状態にあるスレッドがトランスポートの終了処理中にTASK_UNINTERRUPTIBLE状態で無限にハングし、svc_xprtの参照を保持し続け、svc_rdma_free()のブロックを引き起こします。クローズ経路ではxpo_detach呼び出し前にXPT_CLOSEが設定され、両方のwait_event条件式にはXPT_CLOSEの項目が含まれていますが、条件式の再評価はウェイクアップ時にのみ行われます。sc_sq_ticket_waitは完了によるウェイクパスを持たず、svc_rdma_sq_wait()内の連鎖チケットハンドオフによってのみ進行します。したがって、クローズ時の明示的なウェイクがなければ、駐車したスレッドはXPT_CLOSEを観測できず、svc_xprt_getの参照を永久に保持し続け、その結果svc_rdma_free()がxpt_refがゼロになるのを待ってブロックします。このトランスポートには2つのクローズエントリポイントがあります。ローカルの終了処理はワーカースレッドでsvc_handle_xprt() -> svc_delete_xprt() -> xpo_detach()からsvc_rdma_detach()を実行します。一方、リモートの切断はsvc_rdma_cma_handler()に到達し、svc_xprt_deferred_close()を呼び出します。この関数はXPT_CLOSEを設定してトランスポートをキューに入れますが、RDMAの待機キューにはアクセスしないため、すでにsvc_rdma_sq_wait()で駐車中のワーカーは条件式を再評価しません。全ワーカーがこのトランスポートで駐車している場合、ローカルの終了処理を実行するスレッドもなくなり、ウェイクを行う箇所に到達できなくなります。この問題を解決するために、svc_rdma_xprt_deferred_close()を導入しました。これはsvc_xprt_deferred_close()を呼び出した後にsc_sq_ticket_waitとsc_send_waitの両方をウェイクする、薄いsvcrdma用ラッパーです。svc_xprt_deferred_close()を直接呼んでいたsvcrdmaの生成元(svc_rdma_cma_handler()、qp_event_handler()、svc_rdma_post_send_err()、svc_rdma_wc_send()、sendtoドロップパス、読み書き完了のエラーパス、およびrecvfromのフラッシュと読み取りリストのエラーパス)もこの関数に置き換えました。また、svc_rdma_detach()からも両方の待機キューをウェイクします。同期的なsvc_xprt_close()パス(バックチャネルのENOTCONNやsvc_rdma_xprt_doneによるデバイス削除)については、svc_xprt_deferred_close()を経由しないため、新しいヘルパーは呼び出されません。[cel:修正を完了するためにsvc_rdma_xprt_deferred_close()を追加しました]
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 7.5 (重要) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 7.1 以上 7.1.4 未満

想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
ベンダ情報

CWEによる脆弱性タイプ一覧  CWEとは?

  1. 情報不足(CWE-noinfo) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-64281
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-64281
  2. 関連文書 : svcrdma: wake sq waiters when the transport closes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/e5248a7426030db1e126363f72afdb3b71339a5c)
  3. 関連文書 : svcrdma: wake sq waiters when the transport closes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/40eedc4253dbda0b29b7961200534dfcecb48ace)
更新履歴

  • [2026年08月17日]
      掲載