[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025032735-CVE-2025-21871-bb8c@gregkh>
Date: Thu, 27 Mar 2025 14:38:37 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2025-21871: tee: optee: Fix supplicant wait loop
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
tee: optee: Fix supplicant wait loop
OP-TEE supplicant is a user-space daemon and it's possible for it
be hung or crashed or killed in the middle of processing an OP-TEE
RPC call. It becomes more complicated when there is incorrect shutdown
ordering of the supplicant process vs the OP-TEE client application which
can eventually lead to system hang-up waiting for the closure of the
client application.
Allow the client process waiting in kernel for supplicant response to
be killed rather than indefinitely waiting in an unkillable state. Also,
a normal uninterruptible wait should not have resulted in the hung-task
watchdog getting triggered, but the endless loop would.
This fixes issues observed during system reboot/shutdown when supplicant
got hung for some reason or gets crashed/killed which lead to client
getting hung in an unkillable state. It in turn lead to system being in
hung up state requiring hard power off/on to recover.
The Linux kernel CVE team has assigned CVE-2025-21871 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 5.4.291 with commit 3eb4911364c764572e9db4ab900a57689a54e8ce
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 5.10.235 with commit 0180cf0373f84fff61b16f8c062553a13dd7cfca
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 5.15.179 with commit c0a9a948159153be145f9471435695373904ee6d
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 6.1.130 with commit ec18520f5edc20a00c34a8c9fdd6507c355e880f
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 6.6.80 with commit d61cc1a435e6894bfb0dd3370c6f765d2d12825d
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 6.12.17 with commit fd9d2d6124c293e40797a080adf8a9c237efd8b8
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 6.13.5 with commit 21234efe2a8474a6d2d01ea9573319de7858ce44
Issue introduced in 4.12 with commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 and fixed in 6.14 with commit 70b0d6b0a199c5a3ee6c72f5e61681ed6f759612
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2025-21871
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
drivers/tee/optee/supp.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/3eb4911364c764572e9db4ab900a57689a54e8ce
https://git.kernel.org/stable/c/0180cf0373f84fff61b16f8c062553a13dd7cfca
https://git.kernel.org/stable/c/c0a9a948159153be145f9471435695373904ee6d
https://git.kernel.org/stable/c/ec18520f5edc20a00c34a8c9fdd6507c355e880f
https://git.kernel.org/stable/c/d61cc1a435e6894bfb0dd3370c6f765d2d12825d
https://git.kernel.org/stable/c/fd9d2d6124c293e40797a080adf8a9c237efd8b8
https://git.kernel.org/stable/c/21234efe2a8474a6d2d01ea9573319de7858ce44
https://git.kernel.org/stable/c/70b0d6b0a199c5a3ee6c72f5e61681ed6f759612
Powered by blists - more mailing lists