VYPR
Unrated severityNVD Advisory· Published Sep 13, 2023· Updated Feb 13, 2025

GCC's-fstack-protector fails to guard dynamically-sized local variables on AArch64

CVE-2023-4039

Description

DISPUTEDA 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.

Affected products

2
  • Arm Ltd/Arm GNU Toolchainv5
    Range: All versions where option -fstack-protector is used
  • Range: All versions of GCC that target AArch64 when option -fstack-protector is used

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

2

News mentions

0

No linked articles in our index yet.