Skip to main content

golang.org/x/crypto/ssh CVE-2026-46597

| EUVDEUVD-2026-31388 HIGH
Incorrect Type Conversion or Cast (CWE-704)
2026-05-22 Go GHSA-q4h4-gmj2-qvw2
7.5
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
SUSE
HIGH
qualitative

Primary rating from NVD.

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

4
Analysis Generated
May 28, 2026 - 15:08 vuln.today
CVSS changed
May 28, 2026 - 15:07 NVD
7.5 (None) 7.5 (HIGH)
Patch available
May 22, 2026 - 04:31 EUVD
CVE Published
May 22, 2026 - 02:31 nvd
UNKNOWN (no severity yet)

DescriptionCVE.org

An incorrectly placed cast from bytes to int allowed for server-side panic in the AES-GCM packet decoder for well-crafted inputs.

AnalysisAI

Denial of service in the Go golang.org/x/crypto/ssh package (versions prior to 0.52.0) allows remote unauthenticated attackers to crash SSH server processes by sending crafted AES-GCM encrypted packets. An incorrectly placed bytes-to-int cast in the AES-GCM packet decoder triggers a server-side panic when processing well-crafted inputs. No public exploit identified at time of analysis, and EPSS exploitation probability is very low at 0.02%.

Technical ContextAI

The vulnerability resides in golang.org/x/crypto/ssh, the official Go SSH protocol implementation widely embedded in Go-based servers, bastions, CI/CD agents, and tooling (per CPE cpe:2.3:a:golang.org/x/crypto:golang.org/x/crypto/ssh). The root cause is classified as CWE-704 (Incorrect Type Conversion or Cast): an incorrectly placed cast from bytes to int within the AES-GCM packet decoder. When the decoder processes a malformed but well-formed-enough encrypted packet, the bad cast leads to a runtime panic, terminating the SSH server goroutine or process. AES-GCM is one of the default authenticated encryption modes negotiated during SSH transport setup, so the decoder is reached early in any SSH session.

RemediationAI

Upgrade the golang.org/x/crypto dependency to version 0.52.0 or later (Vendor-released patch: 0.52.0), then rebuild and redeploy any Go binary that embeds an SSH server - run 'go get golang.org/x/crypto@v0.52.0' followed by 'go mod tidy' and verify with 'govulncheck ./...' against GO-2026-5013. The fix landed in Go change https://go.dev/cl/781620 and was announced at https://groups.google.com/g/golang-announce/c/a082jnz-LvI. If immediate patching is not possible, compensating controls include restricting SSH server exposure to trusted source IPs via firewall/security-group ACLs and disabling AES-GCM ciphers in the server's negotiated cipher list (falling back to ChaCha20-Poly1305 or AES-CTR) - the trade-off is reduced interoperability with clients that only support GCM and a small performance penalty for ChaCha20-Poly1305 on platforms without AES-NI.

Vendor StatusVendor

SUSE

Severity: High
Product Status
openSUSE Leap 16.0 Fixed
openSUSE Tumbleweed Fixed
SLES15-SP6-CHOST-BYOS-GCE Fixed
SLES15-SP7-CHOST-BYOS-GCE Fixed
SUSE Linux Enterprise Desktop 15 SP7 Fixed

Share

CVE-2026-46597 vulnerability details – vuln.today

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