CVE-2024-50072

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
29/10/2024
Last modified:
03/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> x86/bugs: Use code segment selector for VERW operand<br /> <br /> Robert Gill reported below #GP in 32-bit mode when dosemu software was<br /> executing vm86() system call:<br /> <br /> general protection fault: 0000 [#1] PREEMPT SMP<br /> CPU: 4 PID: 4610 Comm: dosemu.bin Not tainted 6.6.21-gentoo-x86 #1<br /> Hardware name: Dell Inc. PowerEdge 1950/0H723K, BIOS 2.7.0 10/30/2010<br /> EIP: restore_all_switch_stack+0xbe/0xcf<br /> EAX: 00000000 EBX: 00000000 ECX: 00000000 EDX: 00000000<br /> ESI: 00000000 EDI: 00000000 EBP: 00000000 ESP: ff8affdc<br /> DS: 0000 ES: 0000 FS: 0000 GS: 0033 SS: 0068 EFLAGS: 00010046<br /> CR0: 80050033 CR2: 00c2101c CR3: 04b6d000 CR4: 000406d0<br /> Call Trace:<br /> show_regs+0x70/0x78<br /> die_addr+0x29/0x70<br /> exc_general_protection+0x13c/0x348<br /> exc_bounds+0x98/0x98<br /> handle_exception+0x14d/0x14d<br /> exc_bounds+0x98/0x98<br /> restore_all_switch_stack+0xbe/0xcf<br /> exc_bounds+0x98/0x98<br /> restore_all_switch_stack+0xbe/0xcf<br /> <br /> This only happens in 32-bit mode when VERW based mitigations like MDS/RFDS<br /> are enabled. This is because segment registers with an arbitrary user value<br /> can result in #GP when executing VERW. Intel SDM vol. 2C documents the<br /> following behavior for VERW instruction:<br /> <br /> #GP(0) - If a memory operand effective address is outside the CS, DS, ES,<br /> FS, or GS segment limit.<br /> <br /> CLEAR_CPU_BUFFERS macro executes VERW instruction before returning to user<br /> space. Use %cs selector to reference VERW operand. This ensures VERW will<br /> not #GP for an arbitrary user %ds.<br /> <br /> [ mingo: Fixed the SOB chain. ]

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.10.215 (including) 5.11 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.15.154 (including) 5.16 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.81 (including) 6.2 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.6.21 (including) 6.6.58 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.11.5 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7.9 (including) 6.8 (excluding)
cpe:2.3:o:linux:linux_kernel:6.12:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.12:rc3:*:*:*:*:*:*