LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
タイトル LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
概要

Linuxカーネルにおけるrtmutexのremove_waiter()関数は、currentの代わりにwaiter::taskを使用するように修正されました。この関数はslowlock経路およびfutex_requeue()から呼び出されるproxy-lockロールバックで使用されます。以前はwaiter::taskがcurrentでない場合に、デキュー操作中にpi_lockが保持されていない問題や、pi_blocked_on状態がクリアされずにダングリングポインタを引き起こす問題、さらに誤ったトップ優先度waiterタスクで動作する問題がありました。これらの問題を解決するために、remove_waiter()内の操作でcurrentの代わりにwaiter::taskを用いるように修正しました。

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

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

公表日 2026年5月21日0:00
登録日 2026年6月29日11:18
最終更新日 2026年6月29日11:18
CVSS3.0 : 重要
スコア 7.8
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
影響を受けるシステム
Linux
Linux Kernel 2.6.39 以上 6.1.175 未満
Linux Kernel 6.13 以上 6.18.27 未満
Linux Kernel 6.19 以上 7.0.4 未満
Linux Kernel 6.2 以上 6.6.140 未満
Linux Kernel 6.7 以上 6.12.86 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年06月29日]
  掲載
2026年6月29日11:18

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

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

rtmutex: Use waiter::task instead of current in remove_waiter()

remove_waiter() is used by the slowlock paths, but it is also used for
proxy-lock rollback in rt_mutex_start_proxy_lock() when invoked from
futex_requeue().

In the latter case waiter::task is not current, but remove_waiter()
operates on current for the dequeue operation. That results in several
problems:

1) the rbtree dequeue happens without waiter::task::pi_lock being held

2) the waiter task's pi_blocked_on state is not cleared, which leaves a
dangling pointer primed for UAF around.

3) rt_mutex_adjust_prio_chain() operates on the wrong top priority waiter
task

Use waiter::task instead of current in all related operations in
remove_waiter() to cure those problems.

[ tglx: Fixup rt_mutex_adjust_prio_chain(), add a comment and amend the
changelog ]

公表日 2026年5月21日22:16
登録日 2026年5月22日4:07
最終更新日 2026年5月23日1:33
関連情報、対策とツール
共通脆弱性一覧