CVE-2024-49996CWE-120

CVE-2024-49996

Critical · published October 21, 2024

CVSS v3.1
9.4
EPSS
1%
Percentile
55.8
In the wild
Unconfirmed
What it is

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

cifs: Fix buffer overflow when parsing NFS reparse points

ReparseDataLength is sum of the InodeType size and DataBuffer size.

So to get DataBuffer size it is needed to subtract InodeType's size from

ReparseDataLength.

Function cifs_strndup_from_utf16() is currentlly accessing buf->DataBuffer

at position after the end of the buffer because it does not subtract

InodeType size from the length. Fix this problem and correctly subtract

variable len.

Member InodeType is present only when reparse buffer is large enough. Check

for ReparseDataLength before accessing InodeType to prevent another invalid

memory access.

Major and minor rdev values are present also only when reparse buffer is

large enough. Check for reparse buffer size before calling reparse_mkdev().

The record
Technical detail
CVSS v3.1
9.4 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:H
CVSS v4.0
Not supplied
EPSS
0.00789 · 55.8th percentile
Weakness
CWE-120 · Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
Published
2024-10-21T22:15Z
Affected products (8)
ProductVersionsFixed in
debian/debian_linuxall versions—
linux/linux_kernel≥ 5.3, < 5.4.2875.4.287
linux/linux_kernel≥ 5.5, < 5.10.2315.10.231
linux/linux_kernel≥ 5.11, < 5.15.1745.15.174
linux/linux_kernel≥ 5.16, < 6.1.1206.1.120
linux/linux_kernel≥ 6.2, < 6.6.556.6.55
linux/linux_kernel≥ 6.7, < 6.10.146.10.14
linux/linux_kernel≥ 6.11, < 6.11.36.11.3
References (10)
EPSS history
Timeline
  • 21 OCT 18:02Z
    cifs: Fix buffer overflow when parsing NFS reparse points
    cvelistv5