LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性
タイトル LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性
概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。s390/cioのcss_alloc_subchannel()関数のデバイスライフサイクル管理に関する修正です。css_alloc_subchannel()はDMAマスクを設定する前にdevice_initialize()を呼び出します。dma_set_coherent_mask()またはdma_set_mask()が失敗した場合、エラーパスはデバイスモデルの参照カウントをバイパスして直接サブチャネル構造体を解放していました。device_initialize()が呼び出された後は、埋め込みのstruct deviceをput_device()で解放する必要があり、これによりリリースコールバックがコンテナ構造体を解放します。エラーパスではkfree()を直接呼び出すのではなく、put_device()で最初のデバイス参照を放棄するように修正しました。これにより、正しいデバイスのライフタイム管理が保証され、use-after-freeやダブルフリーの問題を回避できます。

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

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

公表日 2026年5月27日0:00
登録日 2026年6月17日15:43
最終更新日 2026年6月17日15:43
CVSS3.0 : 警告
スコア 5.5
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
Linux
Linux Kernel 3.10 以上 6.6.128 未満
Linux Kernel 6.13 以上 6.18.14 未満
Linux Kernel 6.19 以上 6.19.4 未満
Linux Kernel 6.7 以上 6.12.75 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年06月17日]
  掲載
2026年6月17日15:43

NVD脆弱性情報
CVE-2026-45981
概要

In the Linux kernel, the following vulnerability has been resolved:

s390/cio: Fix device lifecycle handling in css_alloc_subchannel()

`css_alloc_subchannel()` calls `device_initialize()` before setting up
the DMA masks. If `dma_set_coherent_mask()` or `dma_set_mask()` fails,
the error path frees the subchannel structure directly, bypassing
the device model reference counting.

Once `device_initialize()` has been called, the embedded struct device
must be released via `put_device()`, allowing the release callback to
free the container structure.

Fix the error path by dropping the initial device reference with
`put_device()` instead of calling `kfree()` directly.

This ensures correct device lifetime handling and avoids potential
use-after-free or double-free issues.

公表日 2026年5月27日23:17
登録日 2026年5月28日4:12
最終更新日 2026年6月2日2:17
関連情報、対策とツール
共通脆弱性一覧