stackprotectprologue in cfgexpand.c and stackprotectepilogue 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.
{
"unresolved_ranges": [
{
"vendor_product": "gnu:gcc",
"source": "CPE_RANGE",
"extracted_events": [
{
"introduced": "4.1"
},
{
"last_affected": "8.0"
}
],
"cpes": [
"cpe:2.3:a:gnu:gcc:*:*:*:*:*:*:*:*"
]
}
]
}