Executive brief
A vulnerability in the Go SSH library could allow an attacker to crash or slow down a server by sending a specially crafted security key. This component is widely used to secure remote access and data transfers in Go-based applications. An exploit could lead to a denial-of-service, making the affected service unavailable to legitimate users for several minutes at a time.
Technical details
A denial-of-service (DoS) vulnerability exists in the golang.org/x/crypto/ssh package due to improper verification of cryptographic signature parameters (CWE-347). The RSA and DSA public key parsers fail to enforce size limits on key parameters, such as the modulus. An unauthenticated remote attacker can trigger this by providing a crafted public key with excessively large parameters during the public key authentication phase. This results in several minutes of CPU exhaustion during signature verification. The issue is resolved in version 0.52.0 by limiting RSA moduli to 8192 bits and validating DSA parameters according to FIPS 186-2.
Affected products
- Go golang.org/x/crypto/ssh < 0.52.0
Timeline
- 2026-05-22: advisory: NVD and Go Project published the vulnerability details.
- 2026-06-25: patched: GitHub Advisory Database reviewed and published the advisory for version 0.52.0.