Track vulnerabilities like this one. Sign up free to get alerted when software you use is affected.
9.1

CVE-2026-39832: golang.org/x/crypto key forwarding may drop restrictions

CVE-2026-39832 · published 4 months ago
Summary

The Go crypto library could omit destination limits when a key is sent to a remote agent, letting the key be used without the intended restrictions. This could allow wider access on the remote host than intended. Update the library to the latest version to ensure all constraints are correctly applied.

What to do
  • Update x golang.org/x/crypto to version 0.52.0.
  • Update golang.org x to version 0.52.0.
  • Update x rootio-golang.org/x/crypto to version v0.45.0-root.io.1.
  • Update x golang.org/x/crypto to version v0.45.0-aikido.1.
  • Update x rootio-golang.org/x/crypto to version v0.31.0-root.io.8.
  • Update x golang.org/x/crypto to version v0.31.0-aikido.8.
  • Update x rootio-golang.org/x/crypto to version v0.35.0-root.io.3.
  • Update x golang.org/x/crypto to version v0.35.0-aikido.3.
  • Update x rootio-golang.org/x/crypto to version v0.46.0-root.io.2.
  • Update x golang.org/x/crypto to version v0.46.0-aikido.2.
  • Update canonical golang-go.crypto to version 1:0.0~git20200221.2aa609c-1ubuntu0.1~esm2.
  • Update canonical golang-go.crypto to version 1:0.0~git20211202.5770296-1ubuntu0.1~esm2.
  • Update canonical golang-go.crypto to version 1:0.19.0-1ubuntu0.1~esm2.
  • Update canonical golang-go.crypto to version 1:0.47.0-1ubuntu0.1~esm1.
  • Update debian golang-go.crypto to version 1:0.52.0-1.
  • Update x golang.org/x/crypto to version v0.32.0-aikido.3.
  • Update x rootio-golang.org/x/crypto to version v0.32.0-root.io.3.
  • Update x golang.org/x/crypto to version v0.32.0-aikido.5.
  • Update x rootio-golang.org/x/crypto to version v0.32.0-root.io.5.
  • Update x golang.org/x/crypto to version v0.32.0-aikido.4.
  • Update x rootio-golang.org/x/crypto to version v0.32.0-root.io.4.
  • Update x golang.org/x/crypto to version v0.31.0-aikido.9.
  • Update x rootio-golang.org/x/crypto to version v0.31.0-root.io.9.
  • Update x golang.org/x/crypto to version v0.46.0-aikido.3.
  • Update x rootio-golang.org/x/crypto to version v0.46.0-root.io.3.
  • Update golang crypto to version 0.52.0 or later.
  • Update golang.org/x/crypto golang.org/x/crypto/ssh/agent to version 0.52.0 or later.
Affected software
Ecosystem VendorProductAffected versions
Ubuntu:Pro:16.04:LTS canonical golang-go.crypto All versions
Ubuntu:Pro:16.04:LTS canonical lxd All versions
Ubuntu:Pro:16.04:LTS canonical snapd All versions
Ubuntu:Pro:16.04:LTS canonical google-guest-agent All versions
Ubuntu:Pro:18.04:LTS canonical lxd All versions
Ubuntu:Pro:18.04:LTS canonical snapd All versions
Ubuntu:Pro:18.04:LTS canonical golang-go.crypto All versions
Ubuntu:Pro:18.04:LTS canonical google-guest-agent All versions
Ubuntu:Pro:20.04:LTS canonical google-guest-agent All versions
Ubuntu:Pro:20.04:LTS canonical snapd All versions
Ubuntu:Pro:20.04:LTS canonical golang-go.crypto < 1:0.0~git20200221.2aa609c-1ubuntu0.1~esm2
Fix: upgrade to 1:0.0~git20200221.2aa609c-1ubuntu0.1~esm2
Ubuntu:22.04:LTS canonical google-guest-agent All versions
Ubuntu:22.04:LTS canonical snapd All versions
Ubuntu:Pro:22.04:LTS canonical golang-go.crypto < 1:0.0~git20211202.5770296-1ubuntu0.1~esm2
Fix: upgrade to 1:0.0~git20211202.5770296-1ubuntu0.1~esm2
Ubuntu:24.04:LTS canonical google-guest-agent All versions
Ubuntu:24.04:LTS canonical snapd All versions
Ubuntu:Pro:24.04:LTS canonical golang-go.crypto < 1:0.19.0-1ubuntu0.1~esm2
Fix: upgrade to 1:0.19.0-1ubuntu0.1~esm2
Ubuntu:25.10 canonical golang-go.crypto All versions
Ubuntu:25.10 canonical google-guest-agent All versions
Ubuntu:25.10 canonical snapd All versions
Ubuntu:26.04:LTS canonical golang-go.crypto All versions
Ubuntu:26.04:LTS canonical google-guest-agent All versions
Ubuntu:26.04:LTS canonical snapd All versions
Go x golang.org/x/crypto < 0.52.0
Fix: upgrade to 0.52.0
Debian:11 debian golang-go.crypto All versions
Debian:12 debian golang-go.crypto All versions
Debian:13 debian golang-go.crypto All versions
Debian:14 debian golang-go.crypto < 1:0.52.0-1
Fix: upgrade to 1:0.52.0-1
– golang crypto < 0.52.0
cpe:2.3:a:golang:crypto:*:*:*:*:*:go:*:*
go golang.org x < 0.52.0
Fix: upgrade to 0.52.0
Root:Go x rootio-golang.org/x/crypto < v0.45.0-root.io.1
< v0.31.0-root.io.8
< v0.35.0-root.io.3
< v0.46.0-root.io.2
< v0.32.0-root.io.3
< v0.32.0-root.io.5
< v0.32.0-root.io.4
< v0.31.0-root.io.9
< v0.46.0-root.io.3
Fix: upgrade to v0.45.0-root.io.1
Root:Go x golang.org/x/crypto < v0.45.0-aikido.1
< v0.31.0-aikido.8
< v0.35.0-aikido.3
< v0.46.0-aikido.2
< v0.32.0-aikido.3
< v0.32.0-aikido.5
< v0.32.0-aikido.4
< v0.31.0-aikido.9
< v0.46.0-aikido.3
Fix: upgrade to v0.45.0-aikido.1
– golang.org/x/crypto golang.org/x/crypto/ssh/agent < 0.52.0
Ubuntu:Pro:26.04:LTS canonical golang-go.crypto < 1:0.47.0-1ubuntu0.1~esm1
Fix: upgrade to 1:0.47.0-1ubuntu0.1~esm1
Original advisory text
CVE-2026-39832 in golang.org/x/crypto - Patched by Root
When adding a key to a remote agent constraint extensions such as [email protected] were not serialized in the request. Destination restrictions were silently stripped when forwarding keys, allowing unrestricted use of the key on the remote host. The client now serializes all constraint extensions. Additionally, the in-memory keyring returned by NewKeyring() now rejects keys with unsupported constraint extensions instead of silently ignoring them.
References
Fix within
Internet-facing 3 days
Internal 60 days
  • Not known to be exploited
  • Can be exploited automatically
  • Gives an attacker full control
Severity
9.1 Critical
Exploitation
<1% chance of attack within 30 days
Type
CWE-502Deserialization of Untrusted Data
CWE-281Improper Preservation of Permissions
Timeline
Published22 May 2026
Updated11 Oct 2026
First seen22 May 2026
Track software like this
Free during beta