CVE-2025-8556: CIRCL FourQ: low-order point flaw weakens key exchange

LOW
Published August 6, 2025
CISO Take

CVE-2025-8556 is a flaw in the FourQ elliptic curve implementation of Cloudflare's CIRCL Go cryptography library, where missing point validation and low-order point injection during Diffie-Hellman exchange can weaken session security. This is a general-purpose crypto library issue rather than an AI-specific one; it reaches AI/ML estates only indirectly, through container images (Red Hat OpenShift AI, RHEL AI InstructLab, Pipelines, Service Mesh) that bundle CIRCL as a Go dependency. Risk is low: CVSS is 3.7 with high attack complexity and confidentiality-only impact, it is not in CISA KEV, no public exploit or Nuclei template exists, and no EPSS score is available. Track it through your container vulnerability scanner and apply the vendor-patched images from Red Hat and CIRCL v1.6.1 or later on the normal patch cycle, with no emergency response needed.

Sources:NVDGitHub AdvisoryRed Hat SecurityATLAS

What is the risk?

Low overall. The CVSS 3.1 score is 3.7 (AV:N/AC:H/PR:N/UI:N), with only limited confidentiality impact and no integrity or availability effect. Exploitation needs a network position that lets the attacker manipulate key exchange traffic, plus a target that actually uses FourQ DH from CIRCL, which is a niche curve choice. There is no KEV listing, no public exploit and no scanner template. Exposure in AI/ML is incidental: it is limited to bundled Go binaries in Red Hat container images, with no direct AI-specific attack surface. EPSS data is unavailable, so likelihood is judged from complexity and the narrow use of FourQ.

How does the attack unfold?

Initial Access
Attacker gains a network position between two services that perform FourQ Diffie-Hellman key exchange.
AML.T0010.001
Exploitation
Attacker injects a low-order point that CIRCL fails to reject, forcing the shared secret into a small predictable set.
Impact
Attacker recovers or guesses the session key and reads limited confidential data from the session.

What systems are affected?

PackageEcosystemVulnerable RangePatched
InstructLabpip—No patch
1.4KPushed 7mo agostale0% patchedFull package profile →
InstructLabpip—No patch
1.4KPushed 7mo agostale0% patchedFull package profile →
advanced-cluster-security/rhacs-central-db-rhel8——No patch
advanced-cluster-security/rhacs-main-rhel8——No patch
advanced-cluster-security/rhacs-rhel8-operator——No patch
advanced-cluster-security/rhacs-roxctl-rhel8——No patch
advanced-cluster-security/rhacs-scanner-db-rhel8——No patch
advanced-cluster-security/rhacs-scanner-db-slim-rhel8——No patch
advanced-cluster-security/rhacs-scanner-rhel8——No patch
advanced-cluster-security/rhacs-scanner-slim-rhel8——No patch
advanced-cluster-security/rhacs-scanner-v4-db-rhel8——No patch
advanced-cluster-security/rhacs-scanner-v4-rhel8——No patch
circl——No patch
container-native-virtualization/cluster-network-addons-operator-rhel9——No patch
custom-metrics-autoscaler/custom-metrics-autoscaler-adapter-rhel9——No patch
custom-metrics-autoscaler/custom-metrics-autoscaler-admission-webhooks-rhel9——No patch
custom-metrics-autoscaler/custom-metrics-autoscaler-operator-bundle——No patch
custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9——No patch
custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator——No patch
devworkspace/devworkspace-operator-bundle——No patch
devworkspace/devworkspace-project-clone-rhel9——No patch
devworkspace/devworkspace-rhel9-operator——No patch
flightctl——No patch
multicluster-globalhub/multicluster-globalhub-grafana-rhel9——No patch
openshift-builds/openshift-builds-controller-rhel9——No patch
openshift-builds/openshift-builds-git-cloner-rhel9——No patch
openshift-builds/openshift-builds-image-bundler-rhel9——No patch
openshift-builds/openshift-builds-image-processing-rhel9——No patch
openshift-builds/openshift-builds-waiters-rhel9——No patch
openshift-builds/openshift-builds-webhook-rhel9——No patch
openshift-gitops-1/argo-rollouts-rhel8——No patch
openshift-gitops-1/argocd-rhel8——No patch
openshift-gitops-1/argocd-rhel9——No patch
openshift-gitops-1/gitops-rhel8——No patch
openshift-pipelines/pipelines-chains-controller-rhel8——No patch
openshift-pipelines/pipelines-chains-controller-rhel9——No patch
openshift-pipelines/pipelines-cli-tkn-rhel8——No patch
openshift-pipelines/pipelines-cli-tkn-rhel9——No patch
openshift-pipelines/pipelines-controller-rhel8——No patch
openshift-pipelines/pipelines-controller-rhel9——No patch
openshift-pipelines/pipelines-entrypoint-rhel8——No patch
openshift-pipelines/pipelines-entrypoint-rhel9——No patch
openshift-pipelines/pipelines-events-rhel8——No patch
openshift-pipelines/pipelines-events-rhel9——No patch
openshift-pipelines/pipelines-nop-rhel8——No patch
openshift-pipelines/pipelines-nop-rhel9——No patch
openshift-pipelines/pipelines-operator-bundle——No patch
openshift-pipelines/pipelines-operator-proxy-rhel8——No patch
openshift-pipelines/pipelines-operator-proxy-rhel9——No patch
openshift-pipelines/pipelines-operator-webhook-rhel8——No patch
openshift-pipelines/pipelines-operator-webhook-rhel9——No patch
openshift-pipelines/pipelines-resolvers-rhel8——No patch
openshift-pipelines/pipelines-resolvers-rhel9——No patch
openshift-pipelines/pipelines-rhel8-operator——No patch
openshift-pipelines/pipelines-rhel9-operator——No patch
openshift-pipelines/pipelines-sidecarlogresults-rhel8——No patch
openshift-pipelines/pipelines-sidecarlogresults-rhel9——No patch
openshift-pipelines/pipelines-webhook-rhel8——No patch
openshift-pipelines/pipelines-webhook-rhel9——No patch
openshift-pipelines/pipelines-workingdirinit-rhel8——No patch
openshift-pipelines/pipelines-workingdirinit-rhel9——No patch
openshift-serverless-1/kn-client-cli-artifacts-rhel8——No patch
openshift-serverless-1/kn-client-kn-rhel8——No patch
openshift-serverless-1/kn-plugin-event-sender-rhel8——No patch
openshift-serverless-1/kn-plugin-func-func-util-rhel8——No patch
openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9——No patch
openshift-service-mesh/istio-cni-rhel9——No patch
openshift-service-mesh/istio-must-gather-rhel9——No patch
openshift-service-mesh/istio-pilot-rhel9——No patch
openshift-service-mesh/istio-proxyv2-rhel9——No patch
openshift-service-mesh/istio-rhel9-operator——No patch
openshift-service-mesh/istio-sail-operator-bundle——No patch
openshift4-wincw/windows-machine-config-operator-bundle——No patch
openshift4-wincw/windows-machine-config-rhel9-operator——No patch
openshift4/o-cloud-manager-operator-bundle——No patch
openshift4/o-cloud-manager-rhel9-operator——No patch
openshift4/ose-aws-cluster-api-controllers-rhel8——No patch
openshift4/ose-aws-cluster-api-controllers-rhel9——No patch
openshift4/ose-cluster-api-rhel9——No patch
openshift4/ose-cluster-kube-cluster-api-rhel8-operator——No patch
openshift4/ose-cluster-kube-cluster-api-rhel9-operator——No patch
openshift4/ose-console——No patch
openshift4/ose-console-rhel9——No patch
openshift4/ose-olm-rukpak-rhel8——No patch
openshift4/ose-olm-rukpak-rhel9——No patch
rhacm2/acm-flightctl-api-rhel9——No patch
rhacm2/acm-flightctl-periodic-rhel9——No patch
rhacm2/acm-flightctl-worker-rhel9——No patch
rhacm2/acm-grafana-rhel9——No patch
rhacm2/multicluster-operators-subscription-rhel9——No patch
rhacm2/subctl-rhel9——No patch
rhacm2/volsync-rhel9——No patch
rhceph/grafana-rhel9——No patch
rhdh-orchestrator-dev-preview-beta/controller-rhel9-operator——No patch
rhdh-orchestrator-dev-preview-beta/orchestrator-operator-bundle——No patch
rhel10/grafana——No patch
rhel9/grafana——No patch
rhelai1/bootc-amd-rhel9——No patch
rhelai1/bootc-aws-nvidia-rhel9——No patch
rhelai1/bootc-azure-amd-rhel9——No patch
rhelai1/bootc-azure-nvidia-rhel9——No patch
rhelai1/bootc-gcp-nvidia-rhel9——No patch
rhelai1/bootc-nvidia-rhel9——No patch
rhelai1/pathservice-rhel9——No patch
rhelai1/ui-rhel9——No patch
rhem/flightctl-api-rhel9——No patch
rhem/flightctl-cli-artifacts-rhel9——No patch
rhem/flightctl-periodic-rhel9——No patch
rhem/flightctl-ui-ocp-rhel9——No patch
rhem/flightctl-ui-rhel9——No patch
rhem/flightctl-worker-rhel9——No patch
rhoai/odh-data-science-pipelines-argo-argoexec-rhel8——No patch
rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8——No patch
rhosp-rhel9/osp-director-agent——No patch
rhosp-rhel9/osp-director-downloader——No patch
rhosp-rhel9/osp-director-operator——No patch
rhtap-task-runner/rhtap-task-runner-rhel9——No patch
rhtas/client-server-rhel9——No patch
rhtas/cosign-rhel9——No patch
rhtas/createctconfig-rhel9——No patch
rhtas/ctlog-managectroots-rhel9——No patch
rhtas/fulcio-createcerts-rhel9——No patch
rhtas/gitsign-rhel9——No patch
rhtas/trillian-createdb-rhel9——No patch
rhtas/tuf-server-rhel9——No patch
rhtpa/rhtpa-guac-rhel9——No patch

How severe is it?

CVSS 3.1
3.7 / 10
EPSS
0.5%
chance of exploitation in 30 days
Higher than 45% of all CVEs
Exploitation Status
No known exploitation
Sophistication
Advanced

What is the attack surface?

AVACPRUISCIA
AVNetwork
ACHigh
PRNone
UINone
SUnchanged
CLow
INone
ANone

What should I do?

1 step
  1. 1) Upgrade the CIRCL Go module to v1.6.1 or later, and rebuild any Go binaries that vendor it. 2) For Red Hat products, apply the updated container images referenced in the Red Hat advisory (access.redhat.com/security/cve/CVE-2025-8556) and bugzilla 2371624. 3) Use SBOM and container scanning (for example Trivy, Grype or ACS) to find images embedding github.com/cloudflare/circl. 4) Check whether any in-house code calls the FourQ DH API directly, and add explicit validation of public keys and rejection of low-order points if so. 5) Prefer standard curves (X25519, P-256) with TLS 1.3 for session establishment. 6) No special detection signal exists, so track remediation through vulnerability management.

How is it classified?

Data LeakageSupply ChainFrameworkTraining DataAML.T0010.001

Which compliance frameworks are affected?

This CVE is relevant to:

ISO 42001
A.10.3-Suppliers
NIST AI RMF
MANAGE 2.3-Responses to identified AI risks, including third-party components
OWASP LLM Top 10
LLM03-Supply Chain

Frequently Asked Questions

What is CVE-2025-8556?

CVE-2025-8556 is a flaw in the FourQ elliptic curve implementation of Cloudflare's CIRCL Go cryptography library, where missing point validation and low-order point injection during Diffie-Hellman exchange can weaken session security. This is a general-purpose crypto library issue rather than an AI-specific one; it reaches AI/ML estates only indirectly, through container images (Red Hat OpenShift AI, RHEL AI InstructLab, Pipelines, Service Mesh) that bundle CIRCL as a Go dependency. Risk is low: CVSS is 3.7 with high attack complexity and confidentiality-only impact, it is not in CISA KEV, no public exploit or Nuclei template exists, and no EPSS score is available. Track it through your container vulnerability scanner and apply the vendor-patched images from Red Hat and CIRCL v1.6.1 or later on the normal patch cycle, with no emergency response needed.

Is CVE-2025-8556 actively exploited?

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

How to fix CVE-2025-8556?

1) Upgrade the CIRCL Go module to v1.6.1 or later, and rebuild any Go binaries that vendor it. 2) For Red Hat products, apply the updated container images referenced in the Red Hat advisory (access.redhat.com/security/cve/CVE-2025-8556) and bugzilla 2371624. 3) Use SBOM and container scanning (for example Trivy, Grype or ACS) to find images embedding github.com/cloudflare/circl. 4) Check whether any in-house code calls the FourQ DH API directly, and add explicit validation of public keys and rejection of low-order points if so. 5) Prefer standard curves (X25519, P-256) with TLS 1.3 for session establishment. 6) No special detection signal exists, so track remediation through vulnerability management.

What systems are affected by CVE-2025-8556?

This vulnerability affects the following AI/ML architecture patterns: training pipelines, MLOps orchestration, container-based model deployment, service mesh for model serving.

What is the CVSS score for CVE-2025-8556?

CVE-2025-8556 has a CVSS v3.1 base score of 3.7 (LOW). The EPSS exploitation probability is 0.53%.

What is the AI security impact?

Affected AI Architectures

training pipelinesMLOps orchestrationcontainer-based model deploymentservice mesh for model serving

MITRE ATLAS Techniques

AML.T0010.001AI Software

Compliance Controls Affected

ISO 42001: A.10.3
NIST AI RMF: MANAGE 2.3
OWASP LLM Top 10: LLM03

What are the technical details?

Original Advisory

A flaw was found in CIRCL's implementation of the FourQ elliptic curve. This vulnerability allows an attacker to compromise session security via low-order point injection and incorrect point validation during Diffie-Hellman key exchange.

Exploitation Scenario

An attacker with a man-in-the-middle position between two internal components, such as a pipeline controller and a worker in an MLOps platform, substitutes a low-order FourQ public key during the Diffie-Hellman handshake. Because CIRCL does not correctly validate the point, the shared secret falls into a tiny predictable set. The attacker can then guess or brute-force the session key and read some of the exchanged data, for example pipeline parameters or artifact metadata. This needs a custom protocol that uses FourQ, a privileged network position and high attack complexity, so it is unlikely in practice.

Weaknesses (CWE)

CWE-1287 — Improper Validation of Specified Type of Input: The product receives input that is expected to be of a certain type, but it does not validate or incorrectly validates that the input is actually of the expected type.

  • [Implementation] Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does. When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, "boat" may be syntactically valid because it only contains alphanumeric characters, but it is not valid if the input is only expected to contain colors such as "red" or "blue." Do not rely exclusively on looking for malicious or malformed inputs. This is likely to miss at least one undesirable input, especially if the code's environment changes. This can give attackers enough room to bypass the intended validation. However, denylis

Source: MITRE CWE corpus.

CVSS Vector

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

Timeline

Published
August 6, 2025
Last Modified
October 27, 2026
First Seen
October 27, 2026

Related Vulnerabilities