CVE-2026-114691: libstdc++ (GCC): vector<bool> integer wrap causes DoS

MEDIUM
Published October 30, 2026
CISO Take

A flaw in GCC's libstdc++ lets an oversized element count passed to a std::vector<bool> constructor wrap an integer during memory sizing (CWE-190). The container is left inconsistent, which causes out-of-bounds access and, in practice, a crash. It is rated medium (CVSS 5.9, high attack complexity, availability impact only) and is not in CISA KEV. EPSS and SSVC data are not yet available, and no public exploit or Nuclei template exists. Exposure comes through Red Hat's builds: the advisory lists dozens of Red Hat OpenShift AI (rhoai/odh-*) container images, including KServe controllers, MLflow, model registry and the dashboard, plus the OpenShift CoreOS images. These images are rebuilt from the affected toolchain and all need the fix. Exploitation requires an attacker-controlled size to reach a vector<bool> constructor in native C++ code, so most deployments are unlikely to be reachable. Track the Red Hat advisory, rebuild or update the affected images once patched packages ship, and prioritize internet-facing model-serving and gateway components. Fix versions are not yet published (patched ranges are N/A).

Sources:NVDRed Hat Security (access.redhat.com)Red Hat BugzillaATLASOpenSSF

What is the risk?

Low-to-medium. The CVSS 5.9 score reflects network reachability but high complexity, because the attacker must control a size value reaching a vector<bool> constructor in compiled code. There is no confidentiality or integrity impact, only availability. There is no known exploitation, no public PoC and no KEV listing. The package risk score of 81/100, 695 dependents and OpenSSF Scorecard 5.4/10 indicate a broad blast radius for rebuilds rather than a likely attack. EPSS is N/A, so the exploitation likelihood is unquantified.

How does the attack unfold?

Initial Access
Attacker reaches a network-exposed service built on the affected libstdc++ that accepts a size or count parameter.
AML.T0049
Exploitation
An oversized element count is passed to a std::vector<bool> constructor, causing an integer wrap in the memory calculation and an inconsistent container.
Impact
Subsequent operations hit out-of-bounds memory, crashing the process and making the AI service unavailable.
AML.T0029

What systems are affected?

PackageEcosystemVulnerable RangePatched
MLflowpip—No patch
28.6KOpenSSF 5.4695 dependentsPushed 5d ago20% patched~68d to patchFull package profile →
MLflowpip—No patch
28.6KOpenSSF 5.4695 dependentsPushed 5d ago20% patched~68d to patchFull package profile →
MLflowpip—No patch
28.6KOpenSSF 5.4695 dependentsPushed 5d ago20% patched~68d to patchFull package profile →
compat-gcc-295——No patch
compat-gcc-296——No patch
compat-gcc-32——No patch
compat-gcc-34——No patch
compat-gcc-44——No patch
gcc——No patch
gcc-toolset-14-gcc——No patch
gcc-toolset-15-gcc——No patch
gcc-toolset-16-gcc——No patch
gcc13——No patch
mingw-gcc——No patch
openshift/ose-rhel-coreos-8——No patch
openshift/ose-rhel-coreos-9——No patch
rhoai/odh-ai-gateway-operator-rhel9——No patch
rhoai/odh-core-bff-rhel9——No patch
rhoai/odh-dashboard-operator-rhel9——No patch
rhoai/odh-dashboard-rhel9——No patch
rhoai/odh-data-science-pipelines-operator-controller-rhel9——No patch
rhoai/odh-kf-notebook-controller-rhel9——No patch
rhoai/odh-kserve-controller-rhel9——No patch
rhoai/odh-kserve-llmisvc-controller-rhel9——No patch
rhoai/odh-kserve-module-operator-rhel9——No patch
rhoai/odh-kube-rbac-proxy-rhel9——No patch
rhoai/odh-kuberay-operator-controller-rhel9——No patch
rhoai/odh-llama-stack-k8s-operator-rhel9——No patch
rhoai/odh-maas-controller-rhel9——No patch
rhoai/odh-mod-arch-agent-ops-rhel9——No patch
rhoai/odh-mod-arch-automl-rhel9——No patch
rhoai/odh-mod-arch-autorag-rhel9——No patch
rhoai/odh-mod-arch-eval-hub-rhel9——No patch
rhoai/odh-mod-arch-gen-ai-rhel9——No patch
rhoai/odh-mod-arch-maas-rhel9——No patch
rhoai/odh-mod-arch-model-registry-rhel9——No patch
rhoai/odh-model-controller-rhel9——No patch
rhoai/odh-model-registry-operator-rhel9——No patch
rhoai/odh-model-serving-api-rhel9——No patch
rhoai/odh-notebook-controller-rhel9——No patch
rhoai/odh-ogx-k8s-operator-rhel9——No patch
rhoai/odh-ogx-module-operator-rhel9——No patch
rhoai/odh-training-operator-rhel9——No patch
rhoai/odh-trustyai-service-operator-rhel9——No patch
rhoai/odh-workbenches-operator-rhel9——No patch

How severe is it?

CVSS 3.1
5.9 / 10
EPSS
N/A
Exploitation Status
No known exploitation
Sophistication
Moderate

What is the attack surface?

AVACPRUISCIA
AVNetwork
ACHigh
PRNone
UINone
SUnchanged
CNone
INone
AHigh

What should I do?

1 step
  1. 1) Monitor the Red Hat advisory (access.redhat.com/security/cve/CVE-2026-114691) and Bugzilla 2478508 for patched gcc, gcc-toolset and OpenShift AI image releases, and apply them as soon as they are available. 2) Inventory containers and binaries built with the listed gcc and gcc-toolset versions, and rebuild them against the fixed libstdc++. 3) Review native code that builds std::vector<bool> from externally supplied sizes and add upper-bound validation on counts. 4) Run model-serving and operator pods with restart policies, resource limits and health checks to limit crash impact. 5) Detect repeated pod crashes, segfaults or OOM-style restarts on inference and gateway workloads, and alert on requests carrying abnormally large size or count parameters.

How is it classified?

Which compliance frameworks are affected?

This CVE is relevant to:

EU AI Act
Article 15-Accuracy, robustness and cybersecurity
ISO 42001
A.6.2.6-AI system operation and monitoring
NIST AI RMF
MANAGE 2.3-Responses to previously unknown risks and unexpected events
OWASP LLM Top 10
LLM10:2025-Unbounded Consumption

Frequently Asked Questions

What is CVE-2026-114691?

A flaw in GCC's libstdc++ lets an oversized element count passed to a std::vector<bool> constructor wrap an integer during memory sizing (CWE-190). The container is left inconsistent, which causes out-of-bounds access and, in practice, a crash. It is rated medium (CVSS 5.9, high attack complexity, availability impact only) and is not in CISA KEV. EPSS and SSVC data are not yet available, and no public exploit or Nuclei template exists. Exposure comes through Red Hat's builds: the advisory lists dozens of Red Hat OpenShift AI (rhoai/odh-*) container images, including KServe controllers, MLflow, model registry and the dashboard, plus the OpenShift CoreOS images. These images are rebuilt from the affected toolchain and all need the fix. Exploitation requires an attacker-controlled size to reach a vector<bool> constructor in native C++ code, so most deployments are unlikely to be reachable. Track the Red Hat advisory, rebuild or update the affected images once patched packages ship, and prioritize internet-facing model-serving and gateway components. Fix versions are not yet published (patched ranges are N/A).

Is CVE-2026-114691 actively exploited?

No confirmed active exploitation of CVE-2026-114691 has been reported, but organizations should still patch proactively.

How to fix CVE-2026-114691?

1) Monitor the Red Hat advisory (access.redhat.com/security/cve/CVE-2026-114691) and Bugzilla 2478508 for patched gcc, gcc-toolset and OpenShift AI image releases, and apply them as soon as they are available. 2) Inventory containers and binaries built with the listed gcc and gcc-toolset versions, and rebuild them against the fixed libstdc++. 3) Review native code that builds std::vector<bool> from externally supplied sizes and add upper-bound validation on counts. 4) Run model-serving and operator pods with restart policies, resource limits and health checks to limit crash impact. 5) Detect repeated pod crashes, segfaults or OOM-style restarts on inference and gateway workloads, and alert on requests carrying abnormally large size or count parameters.

What systems are affected by CVE-2026-114691?

This vulnerability affects the following AI/ML architecture patterns: model serving, MLOps platforms, training pipelines, containerized AI platforms (OpenShift AI), model registries.

What is the CVSS score for CVE-2026-114691?

CVE-2026-114691 has a CVSS v3.1 base score of 5.9 (MEDIUM).

What is the AI security impact?

Affected AI Architectures

model servingMLOps platformstraining pipelinescontainerized AI platforms (OpenShift AI)model registries

MITRE ATLAS Techniques

AML.T0029Denial of AI Service
AML.T0049Exploit Public-Facing Application

Compliance Controls Affected

EU AI Act: Article 15
ISO 42001: A.6.2.6
NIST AI RMF: MANAGE 2.3
OWASP LLM Top 10: LLM10:2025

What are the technical details?

Original Advisory

A flaw was found in the libstdc++ component of GCC. An attacker who can provide an excessively large element count to a boolean vector (std::vector<bool>) constructor can trigger an integer wrap during internal memory calculations. This issue leaves the container in an inconsistent state, leading to out-of-bounds memory access and resulting in an application crash or a Denial of Service (DoS) during subsequent operations.

Exploitation Scenario

An attacker finds a network-exposed model-serving or gateway component, built on an affected libstdc++, that passes a client-supplied count into a vector<bool> constructor, for example a mask or batch-size parameter. They send a request with an extreme element count that triggers the integer wrap. The container ends up in an inconsistent state, and later operations read or write out of bounds, crashing the process. Repeating the request keeps the inference endpoint or operator unavailable until it is patched or the input is filtered.

Weaknesses (CWE)

CWE-190 — Integer Overflow or Wraparound: The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number.

  • [Requirements] Ensure that all protocols are strictly defined, such that all out-of-bounds behavior can be identified simply, and require strict conformance to the protocol.
  • [Requirements] Use a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. If possible, choose a language or compiler that performs automatic bounds checking.

Source: MITRE CWE corpus.

CVSS Vector

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

References

Timeline

Published
October 30, 2026
Last Modified
November 6, 2026
First Seen
November 6, 2026

Related Vulnerabilities