Information disclosure in GNU Gcc
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.
Published · last modified .
CVSS v3 metric
CVSS v3 base score 8.1 (High). Vector: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H.
EPSS exploit prediction
EPSS: 0.022 (81.6th percentile), scored .
Low probability of exploitation in the next 30 days, but still tracked. 82nd percentile — 81.6% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.022 · newest: 0.022 · change: 0.000
Affected products
Weakness classification (CWE)
Public proof-of-concept exploits
References
- www.gnu.org/software/gcc/gcc-8/changes.html (Exploit, Vendor Advisory)
- gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h (Vendor Advisory)
Frequently asked questions
- What is CVE-2018-12886?
- CVE-2018-12886 is a high-severity vulnerability in GNU Gcc, classified under Generation of Error Message Containing Sensitive Information. CVSS score: 8.1/10. Published 2019-05-22.
- How severe is CVE-2018-12886?
- High severity. CVSS v3 base score is 8.1 out of 10.
- Is CVE-2018-12886 known to be exploited?
- 9 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.