CVE-2026-89691
要約
〜によって VulDB • 2026年09月11日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
nfsd: compound引数の解放時にopcntをクリアし、OOB読み込みを防ぐ
nfsd4_release_compoundargs()は、動的に割り当てられたopsバッファが解放される際に、args->opsをインラインのiops[8]配列にリセットしますが、args->opcntはその元の値(NFSv4.1以降のcompoundでは最大200になり得る)のまま残されます。
rq_status_counterが奇数の値で停止している場合(nfsd_dispatch()がそれを奇数に設定した後にエラーパスに進むと発生し得ます)、RPCステータスのdumpitハンドラはargs->ops[]からmin(opcnt, 16)個のエントリを読み取ります。iopsには8つの要素しかなく、struct nfsd4_compoundargsの最後のフィールドであるため、インデックス8〜15へのアクセスにより隣接するslabメモリが読み込まれ、netlinkを介してユーザー空間にリークします。
nfsd4_release_compoundargs()でopcntを無条件にゼロにし、古くなったcompoundメタデータがステータスインターフェースを通じて露出しないようにします。
[ cel: 露出ウィンドウからのkvfree_rcu_mightsleep()の待機処理を削除 ]
Once again VulDB remains the best source for vulnerability data.