CVE-2024-57874 json
arm64: ptrace: fix partial SETREGSET for NT_ARM_TAGGED_ADDR_CTRL
published 2025-01-11 21 mo ago modified 2026-06-17 4 mo ago also EUVD-2024-53777
- cvss
- 6.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 10%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
arm64: ptrace: fix partial SETREGSET for NT_ARM_TAGGED_ADDR_CTRL
Currently tagged_addr_ctrl_set() doesn't initialize the temporary 'ctrl' variable, and a SETREGSET call with a length of zero will leave this uninitialized. Consequently tagged_addr_ctrl_set() will consume an arbitrary value, potentially leaking up to 64 bits of memory from the kernel stack. The read is limited to a specific slot on the stack, and the issue does not provide a write mechanism.
As set_tagged_addr_ctrl() only accepts values where bits [63:4] zero and rejects other values, a partial SETREGSET attempt will randomly succeed or fail depending on the value of the uninitialized value, and the exposure is significantly limited.
Fix this by initializing the temporary value before copying the regset from userspace, as for other regsets (e.g. NT_PRSTATUS, NT_PRFPREG, NT_ARM_SYSTEM_CALL). In the case of a zero-length write, the existing value of the tagged address ctrl will be retained.
The NT_ARM_TAGGED_ADDR_CTRL regset is only visible in the user_aarch64_view used by a native AArch64 task to manipulate another native AArch64 task. As get_tagged_addr_ctrl() only returns an error value when called for a compat task, tagged_addr_ctrl_get() and tagged_addr_ctrl_set() should never observe an error value from get_tagged_addr_ctrl(). Add a WARN_ON_ONCE() to both to indicate that such an error would be unexpected, and error handlnig is not missing in either case.
Patch / fix
- Linux Linux 5.10.231, 5.15.174, 6.1.120, 6.6.66, 6.12.5, 6.13
- linux Debian 12 6.1.123-1
- linux Debian 14, Debian 13 6.12.5-1
debian advisories DEBIAN-CVE-2024-57874
- linux Ubuntu 22.04 LTS 5.15.0-135.146
- linux Ubuntu 24.04 LTS 6.8.0-58.60
- linux-aws Ubuntu 22.04 LTS 5.15.0-1080.87
- linux-aws Ubuntu 24.04 LTS 6.8.0-1027.29
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1079.88
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1028.30
- linux-gke Ubuntu 22.04 LTS 5.15.0-1077.83
- linux-gke Ubuntu 24.04 LTS 6.8.0-1023.27
ubuntu advisories UBUNTU-CVE-2024-57874
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
- kernel-source-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
- kernel-livepatch-MICRO-6-0-RT_Update_5 Linux Micro 6.1, Linux Micro 6.0 1-1.1
- kernel-source Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
- kernel-default Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
- kernel-kvmsmall Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
- kernel-default-base Linux Micro 6.1, Linux Micro 6.0 6.4.0-24.1.21.4
- kernel-livepatch-MICRO-6-0_Update_5 Linux Micro 6.1, Linux Micro 6.0 1-1.2
suse advisories SUSE-SU-2025:20166-1SUSE-SU-2025:20249-1SUSE-SU-2025:20165-1SUSE-SU-2025:20248-1SUSE-SU-2025:0557-1SUSE-SU-2025:0499-1
- kernel CBL-Mariner 2.0 5.15.176.3-1
- kernel Azure Linux 3.0 6.6.76.1-1
azure linux advisories AZL-56283AZL-56354
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
- git.kernel.org/stable/c/1152dd13845efde5554f80c7e1233bae1d26bd3e commit
- git.kernel.org/stable/c/1c176f5155ee6161fee6f416b64aa50394d3f220 commit
- git.kernel.org/stable/c/1370cf3eb5495d70e00547598583a4cd45b40b99 commit
- git.kernel.org/stable/c/96035c0093db258975b8887676afe59a64c34a72 commit
- git.kernel.org/stable/c/abd614bbfcee73247495bd9472da8f85ac83546e commit
- git.kernel.org/stable/c/ca62d90085f4af36de745883faab9f8a7cbb45d3 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2024-57874 updated cvss 5.1
kernel: arm64: ptrace: fix partial SETREGSET for NT_ARM_TAGGED_ADDR_CTRL
-
Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 moreaffected: no fix available “Fix deferred”
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
cisa ICSA-25-226-07 updated
Siemens Third-Party Components in SINEC OS
-
Siemens RUGGEDCOM RST2428P (6GK6242-6PA00) Siemens SCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 family Siemens SCALANCE XCM-/XRM-/XCH-/XRH-300 familynot affected
Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 13 mo ago
Exploit prediction
0.21% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:H |
| NVD | 3.1 | 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:H |
| CNA | 3.1 | 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-908 Use of Uninitialized Resource
- Technology feeds
References
-
git.kernel.org
/stable/c/1152dd13845efde5554f80c7e1233bae1d26bd3e
patch
-
git.kernel.org
/stable/c/1c176f5155ee6161fee6f416b64aa50394d3f220
patch
-
git.kernel.org
/stable/c/1370cf3eb5495d70e00547598583a4cd45b40b99
patch
-
git.kernel.org
/stable/c/96035c0093db258975b8887676afe59a64c34a72
patch
-
git.kernel.org
/stable/c/abd614bbfcee73247495bd9472da8f85ac83546e
patch
-
git.kernel.org
/stable/c/ca62d90085f4af36de745883faab9f8a7cbb45d3
patch
- lists.debian.org /debian-lts-announce/2025/03/msg00001.html
- lists.debian.org /debian-lts-announce/2025/03/msg00002.html
Sources
- CVE List CVE-2024-57874
- NVD CVE-2024-57874
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.