Read the docs

Insecure default policy lets attackers self-enroll in Google SAM mesh

Priority HIGH 75CWE-1188Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Information disclosure, Security bypass
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-200 and CWE-306.

Summary

Google OSS Agent Mesh (SAM) from 0.1.0-alpha.1 before 0.1.0-alpha.9 has missing authorization and an insecure default policy (CWE-862) in its MCP proxy and OIDC registration flow. A remote attacker with a valid OIDC token can self-enroll, because the registration endpoint admits any token holder without claim filtering or ban checks. The default policy binds sam:system:authenticated to wildcard services and targets, so the attacker gets a mesh credential and can invoke arbitrary tools on connected MCP backends with full read, write and execution access. CISA's SSVC rates exploitation as proof-of-concept, with no known exploitation in the wild.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Description from the CNA

Missing Authorization (CWE-862) and Initialization of a Resource with an Insecure Default (CWE-1188) in the MCP proxy (HandleStreamPassThrough in mcp_service.go) and OIDC registration flow (GET /info and POST /register in internal/controlplane/server.go) in Google OSS Agent Mesh (SAM) versions 0.1.0-alpha.1 through 0.1.0-alpha.8 allow a remote attacker to self-enroll into the mesh and invoke arbitrary tools across all connected MCP backend nodes. Because GET /info publicly discloses OIDC configuration, POST /register auto-enrolls any valid OIDC token holder without claim filtering or ban checks, and the default policy binds sam:system:authenticated to wildcard services and targets, an attacker can obtain a mesh credential with full read, write, and execution access on backend services. Users should upgrade to version 0.1.0-alpha.9 or later, which enforces a fail-closed default policy, explicit policy-binding requirements on enrollment, and ban checks.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00642 51st percentileScored 2026-11-07
Fix Fixed SAM (Google): 0.1.0-alpha.9

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
GoogleSAM0.1.0-alpha.1 to before 0.1.0-alpha.90.1.0-alpha.9Patch availableCNA
  • SAM VendorGoogle Affected 0.1.0-alpha.1 to before 0.1.0-alpha.9 Fixed in 0.1.0-alpha.9 Patch available CNA

Remediation

Upgrade Google SAM to version 0.1.0-alpha.9 or later, which enforces a fail-closed default policy, explicit policy-binding requirements on enrollment and ban checks. The sources list no workaround.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

  • Fix · CNA SAM (Google) Fixed in 0.1.0-alpha.9

Timeline

  1. 2026-10-19 Threatist record created from CVE-2026-103091
  2. 2026-10-19 Alias added: GHSA-qx8v-pq9p-7g7v
  3. 2026-10-20 CISA SSVC decision points changed
  4. 2026-10-20 Priority changed: MEDIUM → HIGH
  5. 2026-10-25 EPSS moved to the 50th–90th percentile

References

  • TI-2025-09686 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.8
  • TI-2024-07390 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
  • TI-2024-04898 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
  • TI-2024-04600 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
  • TI-2024-04346 Use after free in Google Chrome KEVCVSS 3.1CRITICAL 9.6
  • TI-2023-05824 Integer overflow in Google Chrome KEVCVSS 3.1CRITICAL 9.6
See all 17247 →

Sources