blob: c6eff06e5a267b39c70297345565a7cc315f6b08 [file] [log] [blame]
From bippy-1.2.0 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@kernel.org>
To: <linux-cve-announce@vger.kernel.org>
Reply-to: <cve@kernel.org>, <linux-kernel@vger.kernel.org>
Subject: CVE-2025-23158: media: venus: hfi: add check to handle incorrect queue size
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
media: venus: hfi: add check to handle incorrect queue size
qsize represents size of shared queued between driver and video
firmware. Firmware can modify this value to an invalid large value. In
such situation, empty_space will be bigger than the space actually
available. Since new_wr_idx is not checked, so the following code will
result in an OOB write.
...
qsize = qhdr->q_size
if (wr_idx >= rd_idx)
empty_space = qsize - (wr_idx - rd_idx)
....
if (new_wr_idx < qsize) {
memcpy(wr_ptr, packet, dwords << 2) --> OOB write
Add check to ensure qsize is within the allocated size while
reading and writing packets into the queue.
The Linux kernel CVE team has assigned CVE-2025-23158 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 5.4.293 with commit 1b86c1917e16bafbbb08ab90baaff533aa36c62d
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 5.10.237 with commit a45957bcde529169188929816775a575de77d84f
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 5.15.181 with commit 32af5c1fdb9bc274f52ee0472d3b060b18e4aab4
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.1.135 with commit cf5f7bb4e0d786f4d9d50ae6b5963935eab71d75
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.6.88 with commit 40084302f639b3fe954398c5ba5ee556b7242b54
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.12.24 with commit 679424f8b31446f90080befd0300ea915485b096
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.13.12 with commit edb89d69b1438681daaf5ca90aed3242df94cc96
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.14.3 with commit 101a86619aab42bb61f2253bbf720121022eab86
Issue introduced in 4.13 with commit d96d3f30c0f2f564f6922bf4ccdf4464992e31fb and fixed in 6.15 with commit 69baf245b23e20efda0079238b27fc63ecf13de1
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-23158
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/media/platform/qcom/venus/hfi_venus.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/1b86c1917e16bafbbb08ab90baaff533aa36c62d
https://git.kernel.org/stable/c/a45957bcde529169188929816775a575de77d84f
https://git.kernel.org/stable/c/32af5c1fdb9bc274f52ee0472d3b060b18e4aab4
https://git.kernel.org/stable/c/cf5f7bb4e0d786f4d9d50ae6b5963935eab71d75
https://git.kernel.org/stable/c/40084302f639b3fe954398c5ba5ee556b7242b54
https://git.kernel.org/stable/c/679424f8b31446f90080befd0300ea915485b096
https://git.kernel.org/stable/c/edb89d69b1438681daaf5ca90aed3242df94cc96
https://git.kernel.org/stable/c/101a86619aab42bb61f2253bbf720121022eab86
https://git.kernel.org/stable/c/69baf245b23e20efda0079238b27fc63ecf13de1