Vulnerability in Arm Ltd GNU Toolchain

CVE-2023-4039

**DISPUTED**A failure in the -fstack-protector feature in GCC-based toolchains that target AArch64 allows an attacker to exploit an existing buffer overflow in dynamically-sized local variables in your application without this being detected. This stack-protector failure only applies to C99-style dynamically-sized local variables or those created using alloca(). The stack-protector operates as intended for statically-sized local variables. The default behavior when the stack-protector detects an overflow is to terminate your application, resulting in controlled loss of availability. An attacker who can exploit a buffer overflow without triggering the stack-protector might be able to change program flow control to cause an uncontrolled loss of availability or to go further and affect confidentiality or integrity. NOTE: The GCC project argues that this is a missed hardening bug and not a vulnerability by itself.

EPSS: 0.008 (51.5th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 4.8 (Medium). Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N.

Affected products

  • Arm Ltd Gnu Toolchain — versions All versions where option -fstack-protector is used
  • Gnu Gcc — versions All versions of GCC that target AArch64 when option -fstack-protector is used

Weakness classification (CWE)

Public proof-of-concept exploits

References

Frequently asked questions

What is CVE-2023-4039?
CVE-2023-4039 is a medium-severity vulnerability in Arm Ltd GNU Toolchain, classified under Protection Mechanism Failure. CVSS score: 4.8/10. Published 2023-09-13.
How severe is CVE-2023-4039?
Medium severity. CVSS v3 base score is 4.8 out of 10.
Is CVE-2023-4039 known to be exploited?
12 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.