Unauthenticated Biscuit credential disclosure in Google OSS Agent Mesh (SAM)
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Security bypass, Information disclosure
- Confidentiality · integrity · availability
- High · Low · Low
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-306 and CWE-522.
Summary
Google OSS Agent Mesh (SAM) from 0.1.0-alpha.1 before 0.1.0-alpha.9 lacks authentication on the enrollment status handler at GET /enroll/status, which exposes credentials. An unauthenticated remote attacker can retrieve an approved bootstrap-enrolled peer's signed Biscuit identity token using a peer_id obtained from the unauthenticated GET /info endpoint. The attacker can then replay the token as a bearer credential to read mesh authorization policies and overwrite advertised router multiaddrs.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
Description from the CNA
Missing Authentication for Critical Function (CWE-306) and Insufficiently Protected Credentials (CWE-522) in the control plane enrollment status handler (HandleEnrollStatus at GET /enroll/status in internal/controlplane/server.go) in Google OSS Agent Mesh (SAM) versions 0.1.0-alpha.1 through 0.1.0-alpha.8 allow an unauthenticated remote attacker to retrieve an approved bootstrap-enrolled peer's signed Biscuit identity token by supplying a peer_id obtainable from the unauthenticated GET /info endpoint. A related flaw in POST /enroll allowed any bootstrap-token holder to re-fetch another peer's credential. An attacker can replay the disclosed Biscuit token as a bearer credential on /policies to read mesh authorization policies and on /routers/lease to overwrite advertised router multiaddrs. Users should upgrade to version 0.1.0-alpha.9 or later, which requires cryptographic proof of possession of the enrollment private key on credential-releasing endpoints, enforces rate limiting, and validates router lease addresses.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade Google SAM to version 0.1.0-alpha.9 or later, which requires proof of possession of the enrollment private key on credential-releasing endpoints.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
- Fix · CNA SAM (Google) Fixed in 0.1.0-alpha.9
Timeline
- 2026-10-21 Threatist record created from CVE-2026-103090
- 2026-10-22 Alias added: GHSA-xhg2-hv24-f4rp
- 2026-10-23 Priority changed: MEDIUM → LOW
- 2026-10-30 CISA SSVC decision points changed
- 2026-10-30 Priority changed: LOW → HIGH
References
More Google vulnerabilities
- 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
Sources
- CVE-2026-103090 · CVE Program
- CVE-2026-103090 · NVD
- FIRST EPSS
- GHSA-xhg2-hv24-f4rp · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences