cbcvebase.
CVE-2024-26688
published 2024-04-03

CVE-2024-26688: In the Linux kernel, the following vulnerability has been resolved: fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super When configuring a hugetlb…

PriorityP420medium5.5CVSS 3.1
AVLACLPRLUINSUCNINAH
EPSS
0.24%
15.7th percentile
In the Linux kernel, the following vulnerability has been resolved: fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super When configuring a hugetlb filesystem via the fsconfig() syscall, there is a possible NULL dereference in hugetlbfs_fill_super() caused by assigning NULL to ctx->hstate in hugetlbfs_parse_param() when the requested pagesize is non valid. E.g: Taking the following steps: fd = fsopen("hugetlbfs", FSOPEN_CLOEXEC); fsconfig(fd, FSCONFIG_SET_STRING, "pagesize", "1024", 0); fsconfig(fd, FSCONFIG_CMD_CREATE, NULL, NULL, 0); Given that the requested "pagesize" is invalid, ctxt->hstate will be replaced with NULL, losing its previous value, and we will print an error: ... ... case Opt_pagesize: ps = memparse(param->string, &rest); ctx->hstate = h; if (!ctx->hstate) { pr_err("Unsupported page size %lu MB\n", ps / SZ_1M); return -EINVAL; } return 0; ... ... This is a problem because later on, we will dereference ctxt->hstate in hugetlbfs_fill_super() ... ... sb->s_blocksize = huge_page_size(ctx->hstate); ... ... Causing below Oops. Fix this by replacing cxt->hstate value only when then pagesize is known to be valid. kernel: hugetlbfs: Unsupported page size 0 MB kernel: BUG: kernel NULL pointer dereference, address: 0000000000000028 kernel: #PF: supervisor read access in kernel mode kernel: #PF: error_code(0x0000) - not-present page kernel: PGD 800000010f66c067 P4D 800000010f66c067 PUD 1b22f8067 PMD 0 kernel: Oops: 0000 [#1] PREEMPT SMP PTI kernel: CPU: 4 PID: 5659 Comm: syscall Tainted: G E 6.8.0-rc2-default+ #22 5a47c3fef76212addcc6eb71344aabc35190ae8f kernel: Hardware name: Intel Corp. GROVEPORT/GROVEPORT, BIOS GVPRCRB1.86B.0016.D04.1705030402 05/03/2017 kernel: RIP: 0010:hugetlbfs_fill_super+0xb4/0x1a0 kernel: Code: 48 8b 3b e8 3e c6 ed ff 48 85 c0 48 89 45 20 0f 84 d6 00 00 00 48 b8 ff ff ff ff ff ff ff 7f 4c 89 e7 49 89 44 24 20 48 8b 03 48 28 b8 00 10 00 00 48 d3 e0 49 89 44 24 18 48 8b 03 8b 40 28 kernel: RSP: 0018:ffffbe9960fcbd4

Affected

23 ranges
VendorProductVersion rangeFixed in
debiandebian_linux
debianlinux< linux 6.1.82-1 (bookworm)linux 6.1.82-1 (bookworm)
linuxlinux
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 1dde8ef4b7a749ae1bc73617c91775631d1675571dde8ef4b7a749ae1bc73617c91775631d167557
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 80d852299987a8037be145a94f41874228f1a77380d852299987a8037be145a94f41874228f1a773
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 22850c9950a4e43a67299755d11498f3292d02ff22850c9950a4e43a67299755d11498f3292d02ff
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 2e2c07104b4904aed1389a59b25799b95a85b5b92e2c07104b4904aed1389a59b25799b95a85b5b9
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 13c5a9fb07105557a1fa9efdb4f23d7ef30b727413c5a9fb07105557a1fa9efdb4f23d7ef30b7274
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < ec78418801ef7b0c22cd6a30145ec480dd48db39ec78418801ef7b0c22cd6a30145ec480dd48db39
linuxlinux>= 32021982a324dce93b4ae00c06213bf45fb319c8 < 79d72c68c58784a3e1cd2378669d51bfd0cb749879d72c68c58784a3e1cd2378669d51bfd0cb7498
linuxlinux_kernel
linuxlinux_kernel>= 0 < 5.10.216-15.10.216-1
linuxlinux_kernel>= 0 < 6.1.82-16.1.82-1
linuxlinux_kernel>= 0 < 6.7.7-16.7.7-1
linuxlinux_kernel>= 0 < 6.7.7-16.7.7-1
linuxlinux_kernel>= 0 < 5.4.0-186.2065.4.0-186.206
linuxlinux_kernel>= 0 < 5.15.0-112.1225.15.0-112.122
linuxlinux_kernel>= 5.1 < 5.4.2715.4.271
linuxlinux_kernel>= 5.11 < 5.15.1515.15.151
linuxlinux_kernel>= 5.16 < 6.1.796.1.79
linuxlinux_kernel>= 5.5 < 5.10.2125.10.212
linuxlinux_kernel>= 6.2 < 6.6.186.6.18
linuxlinux_kernel>= 6.7 < 6.7.66.7.6

CVSS provenance

nvdv3.15.5MEDIUMCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
osv7.8HIGH
vendor_ubuntu7.8HIGH
vendor_debian5.5MEDIUM
vendor_redhat5.5MEDIUM
Stop checking back — get the weekly exploitation signal.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.