PT-2024-26766 · Linux+2 · Linux Kernel+2

Charlie Jenkins

+1

·

Published

2024-04-03

·

Updated

2024-07-26

·

CVE-2024-35873

CVSS v3.1

5.5

Medium

VectorAV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Name of the Vulnerable Software and Affected Versions Linux kernel (affected versions not specified)
Description The issue arises when a userland application is executing vector code and receives a signal. Upon returning from the signal handler using the rt sigreturn() syscall, the live vector state is discarded, and the live state is marked as "dirty". The rt sigreturn() syscall then restores the vstate, except for the Vector registers, from the sigcontext. However, when the vectorized user from copy() is used to restore the Vector registers, the dirty live state from the discard is saved to the vstate, making it corrupt. This results in the application crashing due to the corrupted vstate. The vectorized user from copy() is invoked depending on the value of CONFIG RISCV ISA V UCOPY THRESHOLD, with a default value of 768, meaning vlen must be larger than 128b for this bug to trigger.
Recommendations At the moment, there is no information about a newer version that contains a fix for this vulnerability.

Exploit

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

BDU:2026-03503
CVE-2024-35873
USN-6893-1
USN-6893-2
USN-6893-3
USN-6918-1

Affected Products

Linuxmint
Linux Kernel
Ubuntu