CVE-2023-4039
published 2023-09-13CVE-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…
PriorityP426medium4.8CVSS 3.1
AVNACHPRNUINSUCLILAN
EPSS
0.67%
47.5th percentile
**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.
Affected
19 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| arm_ltd | arm_gnu_toolchain | — | — |
| debian | gcc-10 | < gcc-11 11.4.0-4 (sid) | gcc-11 11.4.0-4 (sid) |
| debian | gcc-11 | < gcc-11 11.4.0-4 (sid) | gcc-11 11.4.0-4 (sid) |
| debian | gcc-12 | < gcc-11 11.4.0-4 (sid) | gcc-11 11.4.0-4 (sid) |
| debian | gcc-13 | < gcc-11 11.4.0-4 (sid) | gcc-11 11.4.0-4 (sid) |
| debian | gcc-9 | < gcc-11 11.4.0-4 (sid) | gcc-11 11.4.0-4 (sid) |
| gnu | gcc | < 2023-09-12 | 2023-09-12 |
| gnu | gcc | — | — |
| gnu | gcc | >= 0 < 13.2.1_git20231014-r0 | 13.2.1_git20231014-r0 |
| gnu | gcc | >= 0 < 13.2.1_git20231014-r0 | 13.2.1_git20231014-r0 |
| gnu | gcc | >= 0 < 13.2.1_git20231014-r0 | 13.2.1_git20231014-r0 |
| gnu | gcc | >= 0 < 13.2.1_git20231014-r0 | 13.2.1_git20231014-r0 |
| gnu | gcc | >= 0 < 13.2.1_git20231014-r0 | 13.2.1_git20231014-r0 |
| msrc | azl3_gcc_13.2.0-7_on_azure_linux_3.0 | — | — |
| msrc | azure_linux_3.0_arm | — | — |
| msrc | azure_linux_3.0_x64 | — | — |
| msrc | cbl2_gcc_11.2.0-6_on_cbl_mariner_2.0 | — | — |
| msrc | cbl_mariner_2.0_arm | — | — |
| msrc | cbl_mariner_2.0_x64 | — | — |
CVSS provenance
nvdv3.14.8MEDIUMCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
osv4.8MEDIUM
vendor_debian4.8LOW
vendor_msrc4.8MEDIUM
vendor_oracle4.8MEDIUM
vendor_redhat4.8MEDIUM
vendor_ubuntu4.8MEDIUM
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
VulDB
GNU GCC memory corruption (GHSA-x7ch-h5rf-w2mf / Nessus ID 216223)
vuldb·2026-06-23·CVSS 4.8
CVE-2023-4039 [MEDIUM] GNU GCC memory corruption (GHSA-x7ch-h5rf-w2mf / Nessus ID 216223)
A vulnerability, which was classified as critical, has been found in GNU GCC. The impacted element is an unknown function. This manipulation causes memory corruption.
This vulnerability appears as CVE-2023-4039. The attack may be initiated remotely. In addition, an exploit is available.
VulDB
Oracle Communications Cloud Native Core Policy up to 23.1.8/23.2.4 Install/Upgrade protection mechanism (Nessus ID 216223)
vuldb·2026-06-23·CVSS 4.8
CVE-2023-4039 [MEDIUM] Oracle Communications Cloud Native Core Policy up to 23.1.8/23.2.4 Install/Upgrade protection mechanism (Nessus ID 216223)
A vulnerability marked as critical has been reported in Oracle Communications Cloud Native Core Policy up to 23.1.8/23.2.4. Affected by this vulnerability is an unknown functionality of the component Install/Upgrade. The manipulation leads to protection mechanism failure.
This vulnerability is documented as CVE-2023-4039. The attack can be initiated remotely. There is not any exploit available.
VulDB
Oracle Communications Cloud Native Core Binding Support Function Install/Upgrade protection mechanism (Nessus ID 216223)
vuldb·2026-06-23·CVSS 4.8
CVE-2023-4039 [MEDIUM] Oracle Communications Cloud Native Core Binding Support Function Install/Upgrade protection mechanism (Nessus ID 216223)
A vulnerability labeled as critical has been found in Oracle Communications Cloud Native Core Binding Support Function up to 23.1.7/23.2.2. Affected is an unknown function of the component Install/Upgrade. Executing a manipulation can lead to protection mechanism failure.
This vulnerability is registered as CVE-2023-4039. It is possible to launch the attack remotely. No exploit is available.
OSV
gcc-10, gcc-11, gcc-12 vulnerability
osv·2025-08-19·CVSS 4.8
CVE-2023-4039 [MEDIUM] gcc-10, gcc-11, gcc-12 vulnerability
gcc-10, gcc-11, gcc-12 vulnerability
It was discovered that the -fstack-protector hardening feature in GCC for
AArch64 did not properly protect dynamically-sized local variables
such as those created using C99 variable length arrays or alloca. As a
result, an attacker who was able to trigger a buffer overflow in such cases
could bypass the intended stack protection checks. (CVE-2023-4039)
OSV
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 ov
osv·2023-09-13·CVSS 4.8
CVE-2023-4039 [MEDIUM] 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 ov
**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 confid
OSV
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
ov
osv·2023-09-13·CVSS 4.8
CVE-2023-4039 [MEDIUM] 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
ov
**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 confi
Ubuntu
GCC vulnerability
vendor_ubuntu·2025-08-19·CVSS 4.8
CVE-2023-4039 [MEDIUM] GCC vulnerability
Title: GCC vulnerability
Summary: GNU Compiler Collection's (GCC) could be made to ignore security checks.
It was discovered that the -fstack-protector hardening feature in GCC for
AArch64 did not properly protect dynamically-sized local variables
such as those created using C99 variable length arrays or alloca. As a
result, an attacker who was able to trigger a buffer overflow in such cases
could bypass the intended stack protection checks. (CVE-2023-4039)
Instructions: In general, a standard system update will make all the necessary changes.
Oracle
Oracle Oracle Communications Risk Matrix: Install/Upgrade (GCC Arm Aarch64 binary) — CVE-2023-4039
vendor_oracle·2023-10-15·CVSS 4.8
CVE-2023-4039 [MEDIUM] Oracle Oracle Communications Risk Matrix: Install/Upgrade (GCC Arm Aarch64 binary) — CVE-2023-4039
Oracle Oracle Communications Risk Matrix: Install/Upgrade (GCC Arm Aarch64 binary) vulnerability
CVE: CVE-2023-4039
CVSS: 4.8
Protocol: HTTP
Remote exploit: Yes
Affected versions: Network
Advisory: cpuoct2023 (OCT 2023)
Microsoft
GCC's-fstack-protector fails to guard dynamically-sized local variables on AArch64
vendor_msrc·2023-09-12·CVSS 4.8
CVE-2023-4039 [MEDIUM] CWE-693 GCC's-fstack-protector fails to guard dynamically-sized local variables on AArch64
GCC's-fstack-protector fails to guard dynamically-sized local variables on AArch64
FAQ: Is Azure Linux the only Microsoft product that includes this open-source library and is therefore potentially affected by this vulnerability?
One of the main benefits to our customers who choose to use the Azure Linux distro is the commitment to keep it up to date with the most recent and most secure versions of the open source libraries with which the distro is composed. Microsoft is committed to transparency in this work which is why we began publishing CSAF/VEX in October 2025. See this blog post for more information. If impact to additional products is identified, we will update the CVE to reflect this.
Mariner: Mariner
Arm: Arm
Customer Action Required: Yes
Remediation: CBL-Mariner Releases
R
Red Hat
gcc: -fstack-protector fails to guard dynamic stack allocations on ARM64
vendor_redhat·2023-09-12·CVSS 4.8
CVE-2023-4039 [MEDIUM] CWE-788 gcc: -fstack-protector fails to guard dynamic stack allocations on ARM64
gcc: -fstack-protector fails to guard dynamic stack allocations on ARM64
**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 cau
Debian
CVE-2023-4039: gcc-10 - **DISPUTED**A failure in the -fstack-protector feature in GCC-based toolchains ...
vendor_debian·2023·CVSS 4.8
CVE-2023-4039 [MEDIUM] CVE-2023-4039: gcc-10 - **DISPUTED**A failure in the -fstack-protector feature in GCC-based toolchains ...
**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 confid
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
https://developer.arm.com/Arm%20Security%20Center/GCC%20Stack%20Protector%20Vulnerability%20AArch64https://github.com/metaredteam/external-disclosures/security/advisories/GHSA-x7ch-h5rf-w2mfhttps://developer.arm.com/Arm%20Security%20Center/GCC%20Stack%20Protector%20Vulnerability%20AArch64https://github.com/metaredteam/external-disclosures/security/advisories/GHSA-x7ch-h5rf-w2mf
2023-09-13
Published