Skip to main content

Privasys Go EUVDEUVD-2026-96017

| CVE-2026-108267 CRITICAL
Origin Validation Error (CWE-346)
2026-10-09 GitHub_M
9.1
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Obtain enclave TLS private key
  2. Delivery
    Capture genuine attestation quote
  3. Exploit
    Relay quote onto attacker-terminated TLS session
  4. Execution
    Pass relying-party attestation verification
  5. Impact
    Impersonate attested enclave to victim

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
Exploitation Conditions

Exploitation requires challenge-mode RA-TLS to be in use and, critically, the attacker must already possess a valid enclave TLS private key - the quote's report_data was computed as SHA-512(public_key_sha256 || nonce) with no binding to the live TLS session, so a holder of that key can replay a genuine quote on a different connection. It further requires a relying party / verifier that does not independently bind attestation to the session channel. Limiting factors: the stolen-private-key prerequisite (reflected in AC:H/AT:P) sharply narrows who can exploit this; the fix adds an HKDF-derived 32-byte session binder (privasys-ratls-binder-v1) so that binding-aware verifiers fail closed, and TLS 1.2 is fail-closed by design.

Impact

The input CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N, base 9.1) accurately captures a high-impact but high-bar flaw. The network attack vector and PR:N are counterbalanced by AC:H and AT:P, which encode the central precondition stated in the description: the attacker must already possess a genuine enclave TLS private key. This is a privilege-escalation-of-trust / origin-validation issue (CWE-346), not a wormable RCE. No EPSS score, no CISA KEV listing, and no public exploit code were provided, so the realistic status is 'no public exploit identified at time of analysis'; the only exploit-relevant artifact is the fix commit itself. The signals are internally consistent rather than conflicting - a very high CVSS is tempered by a demanding prerequisite (a stolen enclave key) and by the niche deployment footprint of a Go fork. Net assessment: this is a genuine correctness/security defect in the attestation-binding logic that matters acutely to the small population of confidential-computing operators using challenge-mode RA-TLS, but it is NOT a broad, opportunistically-exploitable internet threat. Prioritize if you run Privasys Go enclaves; otherwise low urgency. Note: with no EPSS/KEV/POC data supplied, exploitation-likelihood signals are absent rather than low - treat 'no exploit' as unconfirmed availability, not as proof of difficulty.

Exploit ScenarioDerived

An attacker who has extracted or otherwise obtained an enclave's TLS private key relays a legitimate, freshly-generated attestation quote (bound only to the public key and client nonce) onto a separate TLS connection that the attacker terminates. The relying party verifies the quote as valid and accepts the attacker-controlled endpoint as a genuine attested enclave, trusting it with sensitive data or commands. No public exploit code was identified; exploitation also requires the victim verifier to be unaware of the new session-channel binding.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 09, 2026

RA-TLS session binding bypass in Privasys Go before privasys-v0.5.1-go1.26.5 allows remote attackers who already possess a valid enclave TLS private key to relay a genuine attestation quote onto a different TLS connection, causing a relying party to accept an attacker-terminated handshake as an attested enclave connection. The flaw stems from challenge-mode RA-TLS certificates binding quote ReportData to the certificate public key and client nonce but not to the active TLS session (CWE-346). No public exploit code has been identified, and exploitation requires both a stolen enclave TLS private key and a verifier that does not independently bind attestation to the session channel; the vendor has released a fix in privasys-v0.5.1-go1.26.5.

RemediationAI

Upgrade to privasys-v0.5.1-go1.26.5, which is the vendor-released patch that introduces session channel binding for RA-TLS quotes. The fix derives a 32-byte HKDF binder from the TLS 1.3 key schedule (using the client_handshake_traffic_secret and transcript hash with label privasys-ratls-binder-v1) and folds it into the attestation quote's report_data, so binding-aware verifiers reject relayed quotes. If immediate upgrade is not possible, disable challenge-mode RA-TLS where feasible, or update relying-party verifiers to independently recompute and validate the session binder against the live TLS session; note that this requires custom verification logic and may not be compatible with all deployments. TLS 1.2 is fail-closed by design in this fork, so no RA-TLS session binding is expected there. See the advisory at https://github.com/Privasys/go/security/advisories/GHSA-7jfw-53rm-phh2 and the blog post at https://privasys.org/blog/binding-attestation-to-the-tls-session for details. Disabling RA-TLS removes attestation guarantees and should be a last resort; verifier-side changes must be carefully tested to avoid false negatives.

Affected VersionsENISA

Go < privasys-v0.5.1-go1.26.5

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

Privasys Go is a fork of the Go programming language that adds Remote Attestation TLS (RA-TLS) support to crypto/tls. It introduces a custom TLS extension (0xFFBB) to carry a challenge nonce in ClientHello and CertificateRequest messages, enabling a server enclave to embed SHA-512(public_key_sha256 || nonce) into an attestation quote's report_data. The vulnerability, classified as CWE-346 (Origin Validation Error), arises because that report_data did not commit to the live TLS session, so an attacker holding the enclave TLS private key could replay a genuine quote on a different connection. The fix (commit 00a7d21ba53bba0ea09ac7a67eb2c6714e651700) derives a 32-byte session channel binder using HKDF-Expand-Label from the client_handshake_traffic_secret with label privasys-ratls-binder-v1 and the transcript hash (ClientHello..ServerHello); folding this binder into report_data causes binding-aware verifiers to fail closed. The affected product is identified by CPE cpe:2.3:a:privasys:go:*:*:*:*:*:*:*:*. TLS 1.2 is fail-closed by design in this fork.

Know when Go 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 (GitHub_M) PRIMARY 9.1 CRITICAL
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.4 HIGH

Network relay attack (AV:N) requires a pre-stolen enclave private key, so AC:H and PR:N; it defeats attestation integrity and exposes the attested channel's data (I:H/C:H), with no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Privasys Go is a maintained fork of the Go programming language that adds RA-TLS support to crypto/tls. Prior to privasys-v0.5.1-go1.26.5, challenge-mode RA-TLS certificates bound quote ReportData to the certificate public key and client nonce but not to the active TLS session. An attacker who obtained an enclave TLS private key could relay a genuine quote onto another connection, causing a relying party to accept a handshake terminated by the attacker as an attested enclave connection. This issue is fixed in privasys-v0.5.1-go1.26.5.

Technical POC Analysis

Bug class: CWE-346 Origin Validation Error.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A critical flaw in Privasys Go versions prior to privasys-v0.5.1-go1.26.5 undermines the remote attestation trust model used to prove that a workload is running inside a genuine secure enclave, allowing an attacker holding a stolen enclave TLS private key to make a relying party accept a non-attested connection as trustworthy. This matters to any team whose security architecture, key management, or regulatory commitments depend on attestation as a root of trust, because forged enclave connections could silently bypass integrity guarantees for data in use. Leadership should care less about the code defect itself and more about the small set of reliance decisions and partner integrations that assume attestation is unforgeable.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Rare
niche confidential-computing Go fork for SGX/TDX enclaves, tiny deployment footprint
Threat Intel
1
1 sources
Social Media
3
Sightings
Data Quality
5 sources
Confidence: Medium

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 CRITICAL
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
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· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Go

View all
CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2016-5386 HIGH
8.1 Jul 19

The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and there

CVE-2025-68121 CRITICAL POC
10.0 Feb 05

Critical certificate validation bypass in Go crypto/tls during session resumption. If ClientCAs or RootCAs fields are mu

CVE-2019-14809 CRITICAL POC
9.8 Aug 13

net/url in Go before 1.11.13 and 1.12.x before 1.12.8 mishandles malformed hosts in URLs, leading to an authorization by

CVE-2026-90942 CRITICAL POC
9.3 Sep 14

Casdoor through 4.4.0 exposes its instance-wide built-in JWT signing private key unmasked through the /api/get-certs and

CVE-2026-101090 CRITICAL POC
9.3 Sep 27

Host header injection in Nezha 2.2.3's OAuth2 redirect endpoint (/api/v1/oauth2/{provider}) allows an unauthenticated re

CVE-2026-78428 HIGH POC
8.8 Sep 17

Session cross-wiring in SUSE NeuVector before 5.6.1 allows an unauthenticated remote attacker to obtain another user's a

CVE-2026-92791 HIGH POC
8.7 Sep 16

Unauthenticated path traversal in Uber Kraken through 0.1.29 allows remote attackers to read files outside the configure

CVE-2018-7187 HIGH POC
8.8 Feb 16

The "go get" implementation in Go 1.9.4, when the -insecure command-line option is used, does not validate the import pa

CVE-2026-16651 HIGH POC
8.7 Sep 21

Denial of service in Temporal Server allows an authenticated caller holding at least namespace read permission to crash

CVE-2026-82405 HIGH POC
8.7 Sep 23

Account takeover in Klever-Go's KleverUpdateAccountPermission built-in (all versions prior to 1.7.20) allows an attacker

CVE-2026-82409 HIGH POC
8.4 Sep 23

Maliciously crafted on-chain account names processed by Klever-Go prior to 1.7.20 are spliced into Elasticsearch _bulk r

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