CVE-2022-49292CWE-787

CVE-2022-49292

High · published February 26, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
19.9
In the wild
Unconfirmed
What it is

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

ALSA: oss: Fix PCM OSS buffer allocation overflow

We've got syzbot reports hitting INT_MAX overflow at vmalloc()

allocation that is called from snd_pcm_plug_alloc(). Although we

apply the restrictions to input parameters, it's based only on the

hw_params of the underlying PCM device. Since the PCM OSS layer

allocates a temporary buffer for the data conversion, the size may

become unexpectedly large when more channels or higher rates is given;

in the reported case, it went over INT_MAX, hence it hits WARN_ON().

This patch is an attempt to avoid such an overflow and an allocation

for too large buffers. First off, it adds the limit of 1MB as the

upper bound for period bytes. This must be large enough for all use

cases, and we really don't want to handle a larger temporary buffer

than this size. The size check is performed at two places, where the

original period bytes is calculated and where the plugin buffer size

is calculated.

In addition, the driver uses array_size() and array3_size() for

multiplications to catch overflows for the converted period size and

buffer bytes.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00284 · 19.9th percentile
Weakness
CWE-787 · Out-of-bounds Write
Published
2025-02-26T12:01Z
Affected products (6)
ProductVersionsFixed in
linux/linux_kernel< 4.19.2374.19.237
linux/linux_kernel≥ 4.20, < 5.4.1885.4.188
linux/linux_kernel≥ 5.5, < 5.10.1095.10.109
linux/linux_kernel≥ 5.11, < 5.15.325.15.32
linux/linux_kernel≥ 5.16, < 5.16.185.16.18
linux/linux_kernelall versions—
References (7)
EPSS history
Timeline
  • 26 FEB 01:56Z
    ALSA: oss: Fix PCM OSS buffer allocation overflow
    cvelistv5