CVE-2026-98533: ipe: protect the dm-verity root hash with RCU
In the Linux kernel, the following vulnerability has been resolved:
ipe: protect the dm-verity root hash with RCU
ipebdevsetintegrity() frees the old root hash when dm-verity publishes a new one on ->preresume, while policy evaluation can still be dereferencing it.
Protect the root hash with RCU. The evaluation path already runs under rcureadlock().
[FW: remove model name according to latest guideline]
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1 - Compensating control
Protect the dm-verity root hash with RCU: defer freeing the old root hash after ipe_bdev_setintegrity() publishes a new one, while policy evaluation dereferences it under rcu_read_lock().
Event History
Frequently Asked Questions
What conditions are required for this issue to occur?
The system must use IPE with dm-verity, and dm-verity must publish a new root hash through its preresume path while IPE policy evaluation is still dereferencing the previous hash.
What is the practical impact of the race?
The old dm-verity root hash can be freed while an IPE policy evaluation is still using it, creating a use-after-free condition.
How is the issue addressed?
The fix protects access to the dm-verity root hash with RCU. The IPE evaluation path already executes under rcu_read_lock(), so the old hash is not freed while an active evaluation may still reference it.