ssh: reject RSA keys with excessively large moduli Previously, the RSA key parser accepted keys with arbitrary modulus sizes. Processing keys with extremely large moduli (e.g., > 8192 bits) can consume excessive CPU resources during verification, potentially leading to a Denial of Service (DoS). This change introduces a limit of 8192 bits for the RSA modulus in parseRSA, rejecting keys that exceed this size in line with the limit enforced by crypto/tls. This issue was found during a security audit by NCC Group Cryptography Services, sponsored by Teleport. Fixes golang/go#79565 Fixes CVE-2026-39829 Change-Id: Ibdddad1859a4d9db5c9f052d06c82f29bfc2e5e5 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/781641 Reviewed-by: Neal Patel <nealpatel@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org>
This repository holds supplementary Go cryptography packages.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.
The git repository is https://go.googlesource.com/crypto.
The main issue tracker for the crypto repository is located at https://go.dev/issues. Prefix your issue with “x/crypto:” in the subject line, so it is easy to find.
Note that contributions to the cryptography package receive additional scrutiny due to their sensitive nature. Patches may take longer than normal to receive feedback.