8.1
HIGH CVSS 3.0
CVE-2018-12886
GCC ARM Stack Protector Bypass
Description

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.

INFO

Published Date :

May 22, 2019, 7:29 p.m.

Last Modified :

Nov. 21, 2024, 3:46 a.m.

Remotely Exploit :

Yes !
Affected Products

The following products are affected by CVE-2018-12886 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Gnu gcc
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 2.0 MEDIUM [email protected]
CVSS 3.0 HIGH [email protected]
Solution
This information is provided by the 3rd party feeds.
  • Update the affected gcc packages.
Public PoC/Exploit Available at Github

CVE-2018-12886 has a 8 public PoC/Exploit available at Github. Go to the Public Exploits tab to see the list.

References to Advisories, Solutions, and Tools

Here, you will find a curated list of external links that provide in-depth information, practical solutions, and valuable tools related to CVE-2018-12886.

URL Resource
https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup Vendor Advisory
https://www.gnu.org/software/gcc/gcc-8/changes.html Exploit Vendor Advisory
https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup Vendor Advisory
https://www.gnu.org/software/gcc/gcc-8/changes.html Exploit Vendor Advisory
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2018-12886 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2018-12886 weaknesses.

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

None

TypeScript JavaScript

Updated: 2 years, 4 months ago
0 stars 0 fork 0 watcher
Born at : April 2, 2023, 1:41 a.m. This repo has been linked 7 different CVEs too.

None

TypeScript JavaScript

Updated: 2 years, 8 months ago
0 stars 0 fork 0 watcher
Born at : Nov. 28, 2022, 3:23 p.m. This repo has been linked 6 different CVEs too.

None

TypeScript JavaScript

Updated: 2 years, 8 months ago
0 stars 0 fork 0 watcher
Born at : Nov. 28, 2022, 3:13 p.m. This repo has been linked 7 different CVEs too.

None

Shell TypeScript JavaScript

Updated: 3 years, 8 months ago
0 stars 0 fork 0 watcher
Born at : Dec. 20, 2021, 1:44 p.m. This repo has been linked 7 different CVEs too.

A small Python utility for wrapping some CNCF tools.

Python

Updated: 3 years, 10 months ago
0 stars 0 fork 0 watcher
Born at : Oct. 10, 2021, 12:02 p.m. This repo has been linked 3 different CVEs too.

This action can be used to publish security scans done as part of CI/CD on Github to Azure Security Center.

JavaScript TypeScript

Updated: 2 years, 4 months ago
9 stars 10 fork 10 watcher
Born at : Dec. 1, 2020, 5:25 a.m. This repo has been linked 6 different CVEs too.

A command line tool which provides an alternative interface to snyk test

snyk

Makefile Dockerfile Crystal Open Policy Agent

Updated: 3 years, 6 months ago
4 stars 4 fork 4 watcher
Born at : Aug. 31, 2020, 8:31 a.m. This repo has been linked 82 different CVEs too.

A GitHub action to help you scan your docker image for vulnerabilities

TypeScript JavaScript

Updated: 4 months, 3 weeks ago
221 stars 40 fork 40 watcher
Born at : March 26, 2020, 9:36 a.m. This repo has been linked 7 different CVEs too.

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2018-12886 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2018-12886 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Modified by af854a3a-2127-422b-91ae-364da2661108

    Nov. 21, 2024

    Action Type Old Value New Value
    Added Reference https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup
    Added Reference https://www.gnu.org/software/gcc/gcc-8/changes.html
  • CVE Modified by [email protected]

    May. 14, 2024

    Action Type Old Value New Value
  • CWE Remap by [email protected]

    Aug. 24, 2020

    Action Type Old Value New Value
    Changed CWE CWE-119 CWE-209
  • Initial Analysis by [email protected]

    May. 23, 2019

    Action Type Old Value New Value
    Added CVSS V2 (AV:N/AC:M/Au:N/C:P/I:P/A:P)
    Added CVSS V3 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
    Changed Reference Type https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup No Types Assigned https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/arm/arm-protos.h?revision=266379&view=markup Vendor Advisory
    Changed Reference Type https://www.gnu.org/software/gcc/gcc-8/changes.html No Types Assigned https://www.gnu.org/software/gcc/gcc-8/changes.html Exploit, Vendor Advisory
    Added CWE CWE-119
    Added CPE Configuration OR *cpe:2.3:a:gnu:gcc:*:*:*:*:*:*:*:* versions from (including) 4.1 up to (including) 8.0
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.
Vulnerability Scoring Details
Base CVSS Score: 8.1
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality Impact
Integrity Impact
Availability Impact
Base CVSS Score: 6.8
Access Vector
Access Complexity
Authentication
Confidentiality Impact
Integrity Impact
Availability Impact
Exploit Prediction

EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.

0.19 }} 0.08%

score

0.41313

percentile