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

medium Nessus プラグイン ID 345201

概要

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

説明

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

- SUNRPC:gssx_dec_option_array エラーパスのバグを修正します gssx XDR オプション配列デコーダーにおける 4 つの結合された不具合により、エラーパスが安全ではなくなります:呼び出し側での NULL デリファレンス、デコードされたgroup_infoでの refcount 漏洩、漏洩修正が明らかにするはずの潜在的な use-after-free です。gssx_dec_option_array() は、oa->data を割り当てる前に oa->count = 1 を設定します。その割り当てが失敗すると、-ENOMEM が oa->count == 1 および oa->data == NULL と共に返されます。他のすべてのエラーパスは free_oa にジャンプします:これにより oa->data と NULL が解放されますが、oa->count == 1 のままになります。呼び出し元はカウントを信頼します:gssp_accept_sec_context_upcall() gssx_dec_accept_sec_context() gssx_dec_option_array() /* fails, count=1 data=NULL */ data = res.options.data[0].value /* NULL deref */ 個別に、free_creds: 部分的にデコードされたsvc_credを bare kfree(creds) でリリースします。gssx_dec_linux_creds() は groups_alloc() の結果を creds->cr_group_info にインストールします。そのオブジェクトは KVMalloc-backed で refcount され、put_group_info() のみ kvfree() に到達します。プレーンな kfree(creds) はラッパーをドロップし、group_info割り当てを漏洩します。漏洩に対する自然な修正は、kfree(creds) の前に free_svc_cred(creds) を呼び出すことですが、free_svc_cred() は NULL でない場合、無条件に creds->cr_group_info で put_group_info() を呼び出します。gssx_dec_linux_creds() の既存の out_free_groups: パスは、すでにそのポインター上で消去せずに groups_free() を呼び出しているため、free_svc_cred() が配線されると、後続の put_group_info() が解放されたメモリに触れることになります。4 つすべてをまとめて修正します: - oa->count = 1 の割り当てを oa->data 割り当ての下に移動し、oa->data が NULL のときに決して設定されないようにします。- free_oaで oa->count を 0 にリセットします:これにより、カウントとデータが一貫性を保たれ、呼び出し元に空のオプション配列が表示されます。- free_credsで kfree(creds) の前に free_svc_cred(creds) を呼び出し、refcounted cr_group_infoが解放されます。free_svc_cred() は、各フィールドを明示的に NULL ガード(cr_group_info には if() チェックがある)か、それ自体が NULL セーフなヘルパーに委任します(文字列フィールドには kfree、gss_mech_switch.c:342 で if(gm) でガードする gss_mech_put())、cr_uid/cr_gid/cr_group_info のみが書き込まれ、その他すべてが kzalloc からゼロである、部分的にデコードされたsvc_credで呼び出すのは安全です。- gssx_dec_linux_creds() の out_free_groups: パスで、groups_free() ではなく put_group_info() でcr_group_infoをリリースすることで、ティアダウンが free_svc_cred() の refcount-aware パスと一致し、ポインターをクリアして、同じ認証情報に対する後続の free_svc_cred() が 2 回リリースしないようにします。(CVE-2026-89544)

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

ソリューション

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

参考資料

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

プラグインの詳細

深刻度: Medium

ID: 345201

ファイル名: unpatched_CVE_2026_89544.nasl

バージョン: 1.1

タイプ: Local

エージェント: unix

ファミリー: Misc.

公開日: 2026/9/12

更新日: 2026/9/12

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

リスク情報

VPR

リスクファクター: Low

スコア: 3

パーセンタイル: 23.62

CVSS v2

リスクファクター: Medium

基本値: 4.6

現状値: 3.9

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

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

CVSS v3

リスクファクター: Medium

基本値: 5.5

現状値: 5.1

ベクトル: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/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-89544