OESA-2025-1042

Source
https://www.openeuler.org/en/security/security-bulletins/detail/?id=openEuler-SA-2025-1042
Import Source
https://repo.openeuler.org/security/data/osv/OESA-2025-1042.json
JSON Data
https://api.test.osv.dev/v1/vulns/OESA-2025-1042
Upstream
Published
2025-01-17T14:07:14Z
Modified
2025-08-12T05:39:08.314617Z
Summary
gcc security update
Details

The gcc package contains the GNU Compiler Collection version 12. You'll need this package in order to compile C code.

Security Fix(es):

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.

(CVE-2023-4039)

Database specific
{
    "severity": "Medium"
}
References

Affected packages

openEuler:24.03-LTS / gcc

Package

Name
gcc
Purl
pkg:rpm/openEuler/gcc&distro=openEuler-24.03-LTS

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
12.3.1-38.oe2403

Ecosystem specific

{
    "aarch64": [
        "cpp-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-c++-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-debuginfo-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-debugsource-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-gdb-plugin-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-gfortran-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-objc++-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-objc-12.3.1-38.oe2403.aarch64.rpm",
        "gcc-plugin-devel-12.3.1-38.oe2403.aarch64.rpm",
        "libasan-12.3.1-38.oe2403.aarch64.rpm",
        "libasan-static-12.3.1-38.oe2403.aarch64.rpm",
        "libatomic-12.3.1-38.oe2403.aarch64.rpm",
        "libatomic-static-12.3.1-38.oe2403.aarch64.rpm",
        "libgcc-12.3.1-38.oe2403.aarch64.rpm",
        "libgccjit-12.3.1-38.oe2403.aarch64.rpm",
        "libgccjit-devel-12.3.1-38.oe2403.aarch64.rpm",
        "libgfortran-12.3.1-38.oe2403.aarch64.rpm",
        "libgfortran-static-12.3.1-38.oe2403.aarch64.rpm",
        "libgomp-12.3.1-38.oe2403.aarch64.rpm",
        "libitm-12.3.1-38.oe2403.aarch64.rpm",
        "libitm-devel-12.3.1-38.oe2403.aarch64.rpm",
        "libitm-static-12.3.1-38.oe2403.aarch64.rpm",
        "liblsan-12.3.1-38.oe2403.aarch64.rpm",
        "liblsan-static-12.3.1-38.oe2403.aarch64.rpm",
        "libobjc-12.3.1-38.oe2403.aarch64.rpm",
        "libquadmath-12.3.1-38.oe2403.aarch64.rpm",
        "libquadmath-devel-12.3.1-38.oe2403.aarch64.rpm",
        "libquadmath-static-12.3.1-38.oe2403.aarch64.rpm",
        "libstdc++-12.3.1-38.oe2403.aarch64.rpm",
        "libstdc++-devel-12.3.1-38.oe2403.aarch64.rpm",
        "libstdc++-static-12.3.1-38.oe2403.aarch64.rpm",
        "libtsan-12.3.1-38.oe2403.aarch64.rpm",
        "libtsan-static-12.3.1-38.oe2403.aarch64.rpm",
        "libubsan-12.3.1-38.oe2403.aarch64.rpm",
        "libubsan-static-12.3.1-38.oe2403.aarch64.rpm"
    ],
    "src": [
        "gcc-12.3.1-38.oe2403.src.rpm"
    ],
    "x86_64": [
        "cpp-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-c++-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-debuginfo-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-debugsource-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-gdb-plugin-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-gfortran-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-objc++-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-objc-12.3.1-38.oe2403.x86_64.rpm",
        "gcc-plugin-devel-12.3.1-38.oe2403.x86_64.rpm",
        "libasan-12.3.1-38.oe2403.x86_64.rpm",
        "libasan-static-12.3.1-38.oe2403.x86_64.rpm",
        "libatomic-12.3.1-38.oe2403.x86_64.rpm",
        "libatomic-static-12.3.1-38.oe2403.x86_64.rpm",
        "libgcc-12.3.1-38.oe2403.x86_64.rpm",
        "libgccjit-12.3.1-38.oe2403.x86_64.rpm",
        "libgccjit-devel-12.3.1-38.oe2403.x86_64.rpm",
        "libgfortran-12.3.1-38.oe2403.x86_64.rpm",
        "libgfortran-static-12.3.1-38.oe2403.x86_64.rpm",
        "libgomp-12.3.1-38.oe2403.x86_64.rpm",
        "libitm-12.3.1-38.oe2403.x86_64.rpm",
        "libitm-devel-12.3.1-38.oe2403.x86_64.rpm",
        "libitm-static-12.3.1-38.oe2403.x86_64.rpm",
        "liblsan-12.3.1-38.oe2403.x86_64.rpm",
        "liblsan-static-12.3.1-38.oe2403.x86_64.rpm",
        "libobjc-12.3.1-38.oe2403.x86_64.rpm",
        "libquadmath-12.3.1-38.oe2403.x86_64.rpm",
        "libquadmath-devel-12.3.1-38.oe2403.x86_64.rpm",
        "libquadmath-static-12.3.1-38.oe2403.x86_64.rpm",
        "libstdc++-12.3.1-38.oe2403.x86_64.rpm",
        "libstdc++-devel-12.3.1-38.oe2403.x86_64.rpm",
        "libstdc++-static-12.3.1-38.oe2403.x86_64.rpm",
        "libtsan-12.3.1-38.oe2403.x86_64.rpm",
        "libtsan-static-12.3.1-38.oe2403.x86_64.rpm",
        "libubsan-12.3.1-38.oe2403.x86_64.rpm",
        "libubsan-static-12.3.1-38.oe2403.x86_64.rpm"
    ]
}