CVE-2024-35944

CVE Details

Release Date:2024-05-19

Description


In the Linux kernel, the following vulnerability has been resolved:\nVMCI: Fix memcpy() run-time warning in dg_dispatch_as_host()\nSyzkaller hit 'WARNING in dg_dispatch_as_host' bug.\nmemcpy: detected field-spanning write (size 56) of single field '&dg_info->msg'\nat drivers/misc/vmw_vmci/vmci_datagram.c:237 (size 24)\nWARNING: CPU: 0 PID: 1555 at drivers/misc/vmw_vmci/vmci_datagram.c:237\ndg_dispatch_as_host+0x88e/0xa60 drivers/misc/vmw_vmci/vmci_datagram.c:237\nSome code commentry, based on my understanding:\n544 #define VMCI_DG_SIZE(_dg) (VMCI_DG_HEADERSIZE + (size_t)(_dg)->payload_size)\n/// This is 24 + payload_size\nmemcpy(&dg_info->msg, dg, dg_size);\nDestination = dg_info->msg ---> this is a 24 byte\nstructure(struct vmci_datagram)\nSource = dg --> this is a 24 byte structure (struct vmci_datagram)\nSize = dg_size = 24 + payload_size\n{payload_size = 56-24 =32} -- Syzkaller managed to set payload_size to 32.\n35 struct delayed_datagram_info {\n36 struct datagram_entry *entry;\n37 struct work_struct work;\n38 bool in_dg_host_queue;\n39 /* msg and msg_payload must be together. */\n40 struct vmci_datagram msg;\n41 u8 msg_payload[];\n42 };\nSo those extra bytes of payload are copied into msg_payload[], a run time\nwarning is seen while fuzzing with Syzkaller.\nOne possible way to fix the warning is to split the memcpy() into\ntwo parts -- one -- direct assignment of msg and second taking care of payload.\nGustavo quoted:\n'Under FORTIFY_SOURCE we should not copy data across multiple members\nin a structure.'

See more information about CVE-2024-35944 from MITRE CVE dictionary and NIST NVD


CVSS Scoring


NOTE: The following CVSS v3.1 metrics and score provided are preliminary and subject to review.

Base Score: 5.5 CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Attack Vector: Local network Attack Complexity: Low
Privileges Required: Low User Interaction: None
Scope: Unchanged Confidentiality Impact: None
Integrity Impact: None Availability Impact: High

Errata information


PlatformErrataRelease Date
Oracle Linux version 6 (kernel-uek)ELSA-2024-126062024-09-02
Oracle Linux version 7 (kernel-uek)ELSA-2024-126062024-09-02
Oracle Linux version 8 (kernel)ELSA-2024-70002024-09-24
Oracle Linux version 9 (kernel)ELSA-2024-93152024-11-14
Oracle VM version 3 (kernel-uek)OVMSA-2024-00112024-09-03


This page is generated automatically and has not been checked for errors or omissions. For clarification or corrections:

software.hardware.complete