Skip to main content

GCC libstdc++ EUVDEUVD-2026-88443

| CVE-2026-102010 HIGH
Expired Pointer Dereference (CWE-825)
2026-09-28 secalert@redhat.com GHSA-q3jj-75h6-5xmp
7.0
CVSS 3.1 · Vendor: redhat
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach app path invoking erase_if
  2. Delivery
    Supply data forcing heap reallocation
  3. Exploit
    Trigger stale internal entry pointer
  4. Execution
    Use-after-free dereference
  5. Impact
    Process crash or heap corruption (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Expired pointer prevention
Exploitation Conditions

Exploitation requires an application compiled against a vulnerable GCC libstdc++ that (1) uses a binary-heap priority queue container and (2) calls the erase_if operation on it with attacker-influenced contents such that a storage reallocation is triggered. The vulnerability is not self-contained in a network service - it is a library primitive, so reachability depends entirely on whether the consuming application exposes this code path to external input. Limiting factors: AC:H (attacker must force the reallocation timing/heap condition that leaves the internal entry pointer stale), the operation must actually be invoked by the application (many programs never call erase_if on a priority queue), and the demonstrated outcome is a crash - memory corruption beyond DoS is described only as 'potential.'

Impact

This is a genuine but conditional memory-safety flaw whose real-world priority is moderate, not urgent. The vendor CVSS3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H, base 7.0) reflects worst-case scoring for a library primitive: it assumes a network-facing application forwards attacker-influenced data into libstdc++'s priority_queue erase_if operation. The AC:H rightly captures that exploitation is not straightforward - it depends on the consuming application exposing this specific operation and on triggering the reallocation-vs-stale-pointer window. No EPSS score is available, there is no CISA KEV listing, and no public exploit code was identified; per precision rules the status is 'no public exploit identified at time of analysis.' The dominant realistic impact is A:H (denial of service via crash); the C:L/I:L reflect the description's 'potential memory corruption,' which is speculative rather than demonstrated. Treat this as a library-hygiene patch to roll out via normal GCC/distribution updates rather than an emergency: the affected component is ubiquitous, but the exploitable trigger path is narrow and application-dependent. Note conflict/uncertainty: the AV:N is a library abstraction - the true attack vector is inherited from whatever application calls erase_if, so for many consumers this is effectively local or not reachable at all; verify exposure per application. Also, upstream CWE is N/A and the input tag 'Buffer Overflow' contradicts the description, which explicitly describes a use-after-free (CWE-416).

Exploit ScenarioDerived

An application built with a vulnerable libstdc++ processes attacker-supplied data through a binary-heap priority queue and invokes erase_if; the container reallocates its backing storage but leaves an internal entry pointer dangling. The attacker crafts input that forces this reallocation, causing a use-after-free dereference that crashes the process (DoS) or, in the worst case, corrupts heap memory. No public proof-of-concept exists, and reliable exploitation for anything beyond a crash would require overcoming AC:H conditions and application-specific heap layout.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 28, 2026

Use-after-free in GCC's libstdc++ handling of erase_if on a binary-heap priority queue (std::priority_queue) allows unauthenticated remote attackers to crash applications, and potentially corrupt memory, when the application invokes that operation with attacker-influenced contents that force a storage reallocation; the assessed CVSS:3.1 vector AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H (7.0 High) reflects high attack complexity and low confidentiality/integrity impact against high availability impact. Exploitation is conditional rather than self-contained: the flaw is a library primitive, so reachability depends entirely on whether the consuming application exposes the erase_if code path to external input, and the demonstrated outcome is a crash with memory corruption described only as 'potential.' No public exploit identified at time of analysis and the issue is not in CISA KEV; this is a genuine but conditional memory-safety flaw whose real-world priority is moderate, not urgent.

RemediationAI

No vendor-released patch identified at time of analysis: the supplied references are a Red Hat advisory page and Bugzilla tracker (https://access.redhat.com/security/cve/CVE-2026-102010 and https://bugzilla.redhat.com/show_bug.cgi?id=2478395) rather than a fixed release, so monitor both for the patched GCC/libstdc++ version and, once it ships, update GCC and rebuild affected applications - because libstdc++ may be statically linked, affected binaries must be recompiled, not merely relinked. Until a patch is available, compensate in the consuming application: remove or replace calls to erase_if on std::priority_queue with a manual approach such as popping elements into a temporary container and reinserting only those to keep, accepting the trade-off of higher algorithmic cost and code churn; or manage the heap directly with std::make_heap, std::push_heap, and std::pop_heap over a std::vector, accepting a larger code surface and possible performance regression. Treat any application that exposes priority_queue erase_if to untrusted input as a crash risk, and where feasible restrict or validate external inputs reaching that code path as a stopgap; these controls reduce exposure but do not fix the underlying library defect, so patched rebuilds remain the only complete remediation.

Affected ProductsAI

The intelligence feed provides no CPE strings; the references identify GCC's libstdc++ as the affected component through Red Hat's advisory (https://access.redhat.com/security/cve/CVE-2026-102010) and Red Hat Bugzilla 2478395 (https://bugzilla.redhat.com/show_bug.cgi?id=2478395). In scope are applications compiled against an affected GCC libstdc++ that use a binary-heap std::priority_queue container and exercise the erase_if operation, including statically linked binaries that bundle libstdc++ and would not be covered by a shared-library update alone. The precise GCC release range and any downstream distribution packages (for example Red Hat's gcc and libstdc++ packages) are not enumerated in the supplied data and must be confirmed from the vendor advisory and Bugzilla tracker before scoping remediation.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

libstdc++ is the C++ standard library implementation shipped with the GNU Compiler Collection (GCC), and std::priority_queue is a container adaptor typically built on a std::vector using the binary-heap algorithms std::make_heap, std::push_heap, and std::pop_heap. The libstdc++ erase_if operation for this binary-heap container mutates the underlying storage; according to the report it reallocates that storage but fails to update its internal entry pointer, leaving the container holding a stale reference to freed memory. The resulting condition is a classic dangling-pointer/use-after-free (CWE-416 class), even though no CWE identifier was assigned in the supplied data. The practical consequence is that subsequent operations dereference the stale internal pointer, which manifests first as an application crash (availability impact) and only possibly as memory corruption, matching the low C/I and high A components of the assessed vector. Because the defect lives inside a compiled library, the vulnerable code is reachable only through applications that (1) are built against an affected GCC libstdc++, (2) use a binary-heap priority queue, and (3) call erase_if on it with attacker-influenced contents that trigger reallocation; the AC:H rating reflects the timing/heap-condition constraint the attacker must satisfy, and PR:N/UI:N means no authentication or user interaction is required when such a path is actually exposed. No CPE strings were supplied in the intelligence feed, so exact affected GCC releases and distribution package versions must be confirmed against the vendor advisory rather than inferred here.

Know when Gcc gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (redhat) PRIMARY 7.0 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H
vuln.today AI 7.0 HIGH

Kept AV:N/AC:H for a worst-case network-exposed consumer where triggering the reallocation window is non-trivial; A:H for reliable crash, C:L/I:L for only potential memory corruption.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:H
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE 8.6 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:H
Red Hat 7.0 MEDIUM

Primary rating from Vendor (redhat).

CVSS VectorVendor: redhat

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
High

DescriptionCVE.org

A flaw was found in GCC. When an application calls the erase_if function on a binary heap priority queue in libstdc++, the library reallocates storage but fails to update its internal entry pointer. An attacker capable of triggering this operation can exploit this use-after-free condition, leading to a Denial of Service (DoS) via an application crash or potential memory corruption.

Executive ViewAI

Why It Matters

A memory-safety flaw in GCC's libstdc++ can cause C++ applications to crash or potentially corrupt memory when they process attacker-influenced data through the std::priority_queue erase_if operation. Only organizations that build or run applications exposing that specific code path to untrusted, unauthenticated remote input are affected, making the practical risk conditional rather than immediate. Leadership should focus on inventory and mitigation planning, as no vendor patch or public exploit currently exists.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict untrusted input to erase_if on std::priority_queue, recompile with _GLIBCXX_ASSERTIONS, use hardened memory allocators, enable ASLR and stack canaries, sandbox affected services, or switch to an alternative standard library such as libc++; monitor GCC advisories for a patched libstdc++ release.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Ubiquitous
libstdc++ ships with GCC, the standard C++ runtime across nearly all Linux systems
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC Vendor VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

35
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +35
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy