CVE-2024-26638: nbd: always initialize struct msghdr completely

Published Mar 18, 2024
·
Updated

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

nbd: always initialize struct msghdr completely

syzbot complains that msg->msggetinq value can be uninitialized [1]

struct msghdr got many new fields recently, we should always make sure their values is zero by default.

[1] BUG: KMSAN: uninit-value in tcprecvmsg+0x686/0xac0 net/ipv4/tcp.c:2571 tcprecvmsg+0x686/0xac0 net/ipv4/tcp.c:2571 inetrecvmsg+0x131/0x580 net/ipv4/afinet.c:879 sockrecvmsgnosec net/socket.c:1044 [inline] sockrecvmsg+0x12b/0x1e0 net/socket.c:1066 sockxmit+0x236/0x5c0 drivers/block/nbd.c:538 nbdreadreply drivers/block/nbd.c:732 [inline] recvwork+0x262/0x3100 drivers/block/nbd.c:863 processonework kernel/workqueue.c:2627 [inline] processscheduledworks+0x104e/0x1e70 kernel/workqueue.c:2700 workerthread+0xf45/0x1490 kernel/workqueue.c:2781 kthread+0x3ed/0x540 kernel/kthread.c:388 retfromfork+0x66/0x80 arch/x86/kernel/process.c:147 retfromforkasm+0x11/0x20 arch/x86/entry/entry64.S:242

Local variable msg created at: sockxmit+0x4c/0x5c0 drivers/block/nbd.c:513 nbdreadreply drivers/block/nbd.c:732 [inline] recvwork+0x262/0x3100 drivers/block/nbd.c:863

CPU: 1 PID: 7465 Comm: kworker/u5:1 Not tainted 6.7.0-rc7-syzkaller-00041-gf016f7547aee #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023 Workqueue: nbd5-recv recvwork

Other sources

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

nbd: always initialize struct msghdr completely

The Linux kernel CVE team has assigned CVE-2024-26638 to this issue.

Upstream advisory: https://lore.kernel.org/linux-cve-announce/20240318101458.2835626-16-lee@kernel.org/T

Red Hat

Affected Software

12 affected componentsFixes available
redhat/kernel<6.1.76
6.1.76
redhat/kernel<6.6.15
6.6.15
redhat/kernel<6.7.3
6.7.3
redhat/kernel<6.8
6.8
Linux Linux kernel>=5.19<6.1.76
Linux Linux kernel>=6.2<6.6.15
Linux Linux kernel>=6.7<6.7.3
IBM Security Verify Governance<=ISVG 10.0.2
IBM Security Verify Governance, Identity Manager Software Stack<=ISVG 10.0.2
IBM Security Verify Governance, Identity Manager Virtual Appliance<=ISVG 10.0.2
IBM Security Verify Governance Identity Manager Container<=ISVG 10.0.2
debian/linux
5.10.223-15.10.234-16.1.129-16.1.135-16.12.25-16.12.27-1

Event History

Mar 18, 2024
CVE Published
via MITRE·10:14 AM
Data Sourced
via MITRE·10:14 AM
Description
Data Sourced
via Red Hat·01:36 PM
DescriptionSeverityAffected Software
May 15, 2024
Data Sourced
via Launchpad·04:29 PM
Description
Dec 1, 2024
Data Sourced
via Ubuntu·04:33 AM
RemedyDescriptionSeverityAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2024-26638?

CVE-2024-26638 has been classified as a moderate severity vulnerability due to uninitialized values in the Linux kernel's struct msghdr.

2

How do I fix CVE-2024-26638?

To fix CVE-2024-26638, update your system to the recommended kernel versions 6.1.76, 6.6.15, 6.7.3, 6.8, or applicable versions from Debian such as 5.10.223-1 or 6.12.12-1.

3

What software is affected by CVE-2024-26638?

CVE-2024-26638 affects various versions of the Linux kernel on Red Hat and Debian distributions.

4

What is the nature of CVE-2024-26638 vulnerability?

CVE-2024-26638 is caused by the lack of initialization for the msg->msg_get_inq value in the Linux kernel, which can lead to undefined behavior.

5

Is CVE-2024-26638 applicable to older kernel versions?

Yes, CVE-2024-26638 can affect older kernel versions prior to the updates that address the uninitialized struct msghdr issue.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203