CVE-2018-12886
stack_protect_prologue in cfgexpand.c and stack_protect_epilogue in function.c in GNU Compiler Collection (GCC) 4.1 through 8 (under certain circumstances) generate instruction sequences when targeting ARM targets that spill the address of the stack protector guard, which allows an attacker to bypass the protection of -fstack-protector, -fstack-protector-all, -fstack-protector-strong, and -fstack-protector-explicit against stack overflow by controlling what the stack canary is compared against.
- Score
- CVSS 3.0 8.1 High
- Status
- Modified - cve@mitre.org
- Published
- 2019-05-22
- Last modified
- 2026-10-14
- Weaknesses
- CWE-209
Affected products
- Gcc (Gnu)
- Simatic S7-1500 Cpu 1518-4 Pndp Mfp (Siemens)
- Simatic S7-1500 Cpu 1518f-4 Pndp Mfp (Siemens)
- Siplus S7-1500 Cpu 1518-4 Pndp Mfp (Siemens)
References
- https://www.gnu.org/software/gcc/gcc-8/changes.html
- https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup
- https://cert-portal.siemens.com/productcert/html/ssa-565386.html
- https://cert-portal.siemens.com/productcert/html/ssa-398330.html