[Bug string/33060] New: Power 10 strncmp clobbers nonvolatile vector registers (CVE-2025-5745)
siddhesh at sourceware dot org
sourceware-bugzilla@sourceware.org
Thu Jun 5 19:17:07 GMT 2025
https://sourceware.org/bugzilla/show_bug.cgi?id=33060
Bug ID: 33060
Summary: Power 10 strncmp clobbers nonvolatile vector registers
(CVE-2025-5745)
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: string
Assignee: unassigned at sourceware dot org
Reporter: siddhesh at sourceware dot org
CC: carlos at redhat dot com, fweimer at redhat dot com,
Sachin.Monga at ibm dot com, unassigned at sourceware dot org
Target Milestone: ---
Target: powerpc
+++ This bug was initially created as a clone of Bug #33056 +++
The Power 10 implementation of strncmp in
sysdeps/powerpc/powerpc64/le/power10/strncmp.S failed to save/restore
nonvolatile vector registers in the 32-byte aligned loop path.
This results in callers reading content from those registers in a different
context, potentially altering program logic. This has a security impact: there
could be a scenario where a user controlled string could leak through strcmp
into program code, thus altering its logic. There is also a potential for
sensitive strings passed into strcmp leaking through the clobbered registers
into parts of the calling program that should otherwise not have had access to
those strings.
The impact of this flaw is limited to applications running on Power 10 systems,
using glibc 2.39 or later and using the nonvolatile vector registers, i.e. v20
to v31. It is possible to trivially work around the issue for those specific
applications by setting the glibc.cpu.hwcaps tunable to "-arch_3_1" like so:
export GLIBC_TUNABLES=glibc.cpu.hwcaps=-arch_3_1
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list