Linux Distros のパッチ未適用の脆弱性: CVE-2026-89675

critical Nessus プラグイン ID 345027

概要

Linux/Unix ホストには、ベンダーにより修正されていないことを示す脆弱性を持つ複数のパッケージがインストールされています。

説明

Linux/Unix ホストには、ベンダーが提供するパッチが利用できない脆弱性の影響を受ける複数のパッケージがインストールされています。

- nfsd:非同期コピーのキャンセルおよびシャットダウンの UAF を修正します ティアダウン呼び出し元(OFFLOAD_CANCEL、nfsd4_shutdown_copy、nfsd4_cancel_copy_by_sb)がコピーで競合している間に、非同期コピーが解放されたり、解放後に使用されたりする可能性があります kthread: - find_async_copy() は copy->refcount を更新しましたが、コピーを clp->async_copies に残したままにしていたため、リーパーの cleanup_async_copy() は cancel/shutdown 呼び出し元と同時に release_copy_files() を実行する可能性があります。共通ロックなしで put と NULL の両方が nf_src/nf_dst で、nfsd_fileをダブルプットし、早期に解放します。- nfsd4_do_async_copy() は、コピーの最終的な使用前にNFSD4_COPY_F_STOPPEDを設定します(copy->nf_dst の nfsd_update_cmtime_attr()、nfsd4_send_cb_offload())。nfsd4_stop_copy() は設定された STOPPED ビットを kthread の完了として処理し、kthread_stop() をスキップします。このため、kthread が依然としてそれを逆参照している(NULL/UAF)の間、ティアダウン呼び出し元が release_copy_files() を実行し、NULL をnf_dstします。- copy->copy_task が固定されませんでした。ワンショット kthread はリターン時に自己収穫するため、kthread_stop() の get_task_struct() が解放されたtask_structに触れる可能性があります。- co_cb はコピーに埋め込まれていますが、nfsd4_send_cb_offload() はクライアントでのみ参照を保持していたため、CB_OFFLOADコールバックの実行中に、同時ティアダウンによりコピーが解放される可能性があります。全体としてのティアダウンの有効期間を修正します: - find_async_copy() が async_lock のコピーのリンクを解除します(クリア cp_clp、list_del_init)。cancel、shutdown、sb-cancel パスは、nfsd4_stop_copy() の後の nfs4_put_copy() を介して list-membership 参照をドロップします。cleanup_async_copy() から現在冗長になっているlist_del修正をドロップします。
- リンクを解除するとコピーがリーパーから隠されるため、その cleanup_async_copy() はコピーのs2s_cp_stateidsエントリを削除できなくなりました。cancel/shutdown/sb-cancel パスは(cp_clp がまだ有効な場合に)nfs4_free_copy_state() 自身を呼び出すようになり、 laundromat や manage_cpntf_state() が逆参照するためにエントリが解放されたメモリにぶら下がることはありません。- wake_up_process() の前に nfsd4_copy() で取得され、nfsd4_do_async_copy() の終わりにドロップされた、kthread に独自の参照を与えます。list_add() の前に wake_up_process() を呼び出します。- nfs4_put_copy() でリリースされた nfsd4_copy() の get_task_struct() でtask_structにピン留めし、kthread が終了するたびに kthread_stop() が安全になるようにします。現在は、常に release_copy_files() の前に kthread_stop() をする nfsd4_stop_copy() でのみNFSD4_COPY_F_STOPPEDを設定します。完了は引き続き NFSD4_COPY_F_COMPLETED を介してレポートされるため、nfsd4_has_active_async_copies() は影響を受けません。各ティアダウン呼び出し元は、最初に clp->async_copies からコピーを削除するため、kthread_stop() は 1 回だけ実行されます。- nfsd4_send_cb_offload() で参照をコピーし、nfsd4_cb_offload_release() でドロップします。kthread は依然としてそこに独自の参照を保持するため、refcount_inc() は最終的な解放を競合することはできません。- 順序付けられていない set_bit()/clear_bit() ライターとペアになるために smp_load_acquire() で cp_clp を読み取ります(Documentation/atomic_bitops.rst)。(CVE-2026-89675)

Nessus は、ベンダーから報告されたパッケージの存在に依存していることに注意してください。

ソリューション

現時点で既知の解決策はありません。

参考資料

https://security-tracker.debian.org/tracker/CVE-2026-89675

プラグインの詳細

深刻度: Critical

ID: 345027

ファイル名: unpatched_CVE_2026_89675.nasl

バージョン: 1.2

タイプ: Local

エージェント: unix

ファミリー: Misc.

公開日: 2026/9/12

更新日: 2026/9/14

サポートされているセンサー: Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 4.9

パーセンタイル: 58.19

CVSS v2

リスクファクター: Critical

基本値: 10

現状値: 8.5

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS スコアのソース: CVE-2026-89675

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 9

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:U/RL:U/RC:C

脆弱性情報

CPE: cpe:/o:debian:debian_linux:12.0, cpe:/o:debian:debian_linux:13.0, cpe:/o:debian:debian_linux:14.0, p-cpe:/a:debian:debian_linux:linux

必要な KB アイテム: Host/local_checks_enabled, Host/cpu, global_settings/vendor_unpatched, Host/OS/identifier

エクスプロイトの容易さ: No known exploits are available

脆弱性公開日: 2026/9/11

参照情報

CVE: CVE-2026-89675