CVE-2024-26901CWE-908

CVE-2024-26901

Medium · published April 17, 2024

CVSS v3.1
5.5
EPSS
1%
Percentile
57.1
In the wild
Unconfirmed
What it is

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

do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak

syzbot identified a kernel information leak vulnerability in

do_sys_name_to_handle() and issued the following report [1].

[1]

"BUG: KMSAN: kernel-infoleak in instrument_copy_to_user include/linux/instrumented.h:114 [inline]

BUG: KMSAN: kernel-infoleak in _copy_to_user+0xbc/0x100 lib/usercopy.c:40

instrument_copy_to_user include/linux/instrumented.h:114 [inline]

_copy_to_user+0xbc/0x100 lib/usercopy.c:40

copy_to_user include/linux/uaccess.h:191 [inline]

do_sys_name_to_handle fs/fhandle.c:73 [inline]

__do_sys_name_to_handle_at fs/fhandle.c:112 [inline]

__se_sys_name_to_handle_at+0x949/0xb10 fs/fhandle.c:94

__x64_sys_name_to_handle_at+0xe4/0x140 fs/fhandle.c:94

...

Uninit was created at:

slab_post_alloc_hook+0x129/0xa70 mm/slab.h:768

slab_alloc_node mm/slub.c:3478 [inline]

__kmem_cache_alloc_node+0x5c9/0x970 mm/slub.c:3517

__do_kmalloc_node mm/slab_common.c:1006 [inline]

__kmalloc+0x121/0x3c0 mm/slab_common.c:1020

kmalloc include/linux/slab.h:604 [inline]

do_sys_name_to_handle fs/fhandle.c:39 [inline]

__do_sys_name_to_handle_at fs/fhandle.c:112 [inline]

__se_sys_name_to_handle_at+0x441/0xb10 fs/fhandle.c:94

__x64_sys_name_to_handle_at+0xe4/0x140 fs/fhandle.c:94

...

Bytes 18-19 of 20 are uninitialized

Memory access of size 20 starts at ffff888128a46380

Data copied to user address 0000000020000240"

Per Chuck Lever's suggestion, use kzalloc() instead of kmalloc() to

solve the problem.

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00828 · 57.1th percentile
Weakness
CWE-908 · Use of Uninitialized Resource
Published
2024-04-17T15:15Z
Affected products (8)
ProductVersionsFixed in
linux/linux_kernel≥ 2.6.39, < 4.19.3114.19.311
linux/linux_kernel≥ 4.20, < 5.4.2735.4.273
linux/linux_kernel≥ 5.5, < 5.10.2145.10.214
linux/linux_kernel≥ 5.11, < 5.15.1535.15.153
linux/linux_kernel≥ 5.16, < 6.1.836.1.83
linux/linux_kernel≥ 6.2, < 6.6.236.6.23
linux/linux_kernel≥ 6.7, < 6.7.116.7.11
linux/linux_kernel≥ 6.8, < 6.8.26.8.2
References (22)
https://git.kernel.org/stable/c/423b6bdf19bbc5e1f7e7461045099917378f7e71 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/4bac28f441e3cc9d3f1a84c8d023228a68d8a7c1 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/772a7def9868091da3bcb0d6c6ff9f0c03d7fa8b · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/bf9ec1b24ab4e94345aa1c60811dd329f069c38b · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/c1362eae861db28b1608b9dc23e49634fe87b63b · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/cba138f1ef37ec6f961baeab62f312dedc7cf730 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/cde76b3af247f615447bcfecf610bb76c3529126 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/e6450d5e46a737a008b4885aa223486113bf0ad6 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/3948abaa4e2be938ccdfc289385a27342fb13d43 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/423b6bdf19bbc5e1f7e7461045099917378f7e71 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/4bac28f441e3cc9d3f1a84c8d023228a68d8a7c1 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/772a7def9868091da3bcb0d6c6ff9f0c03d7fa8b · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/bf9ec1b24ab4e94345aa1c60811dd329f069c38b · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/c1362eae861db28b1608b9dc23e49634fe87b63b · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/cba138f1ef37ec6f961baeab62f312dedc7cf730 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/cde76b3af247f615447bcfecf610bb76c3529126 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/e6450d5e46a737a008b4885aa223486113bf0ad6 · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html · af854a3a-2127-422b-91ae-364da2661108https://cert-portal.siemens.com/productcert/html/ssa-265688.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-398330.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://git.kernel.org/stable/c/3948abaa4e2be938ccdfc289385a27342fb13d43 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67
EPSS history
Timeline
  • 17 APR 10:27Z
    do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak
    cvelistv5