CVE-2023-45287 Before Go 1.20, the RSA based key exchange methods in crypto/tls may exhibit a timing side channel

High 7.5 Published Updated
Exploited in the wild
Not known
Fix
Available

What is CVE-2023-45287?

CVE-2023-45287 is a high-severity vulnerability in Golang Go, published on 5 Dec 2023.

Official description

Before Go 1.20, the RSA based TLS key exchanges used the math/big library, which is not constant time. RSA blinding was applied to prevent timing attacks, but analysis shows this may not have been fully effective. In particular it appears as if the removal of PKCS#1 padding may leak timing information, which in turn could be used to recover session key bits. In Go 1.20, the crypto/tls library switched to a fully constant time RSA implementation, which we do not believe exhibits any timing side channels.

Weakness: CWE-203

Which versions are affected by CVE-2023-45287?

2 open source packages ship an affected version, including golang and stdlib. It affects 1 product.

PackageAffectedFixed in
golang BitnamiAll versions1.20.0
stdlib GoAll versions1.20.0
Linux distribution packages (9)
skopeo AlmaLinux:9All versions2:1.14.3-0.1.el9
skopeo-tests AlmaLinux:9All versions2:1.14.3-0.1.el9
skopeo Red Hat:enterprise_linux:9::appstreamAll versions2:1.14.3-0.1.el9
skopeo-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions2:1.14.3-0.1.el9
skopeo-debugsource Red Hat:enterprise_linux:9::appstreamAll versions2:1.14.3-0.1.el9
skopeo-tests Red Hat:enterprise_linux:9::appstreamAll versions2:1.14.3-0.1.el9
containernetworking-plugins Red Hat:rhel_eus:9.2::appstreamAll versions1:1.2.0-3.el9_2
containernetworking-plugins-debuginfo Red Hat:rhel_eus:9.2::appstreamAll versions1:1.2.0-3.el9_2
containernetworking-plugins-debugsource Red Hat:rhel_eus:9.2::appstreamAll versions1:1.2.0-3.el9_2

Products include Golang Go.

How do I fix CVE-2023-45287?

Upgrade golang to 1.20.0 or later.

Is CVE-2023-45287 being exploited?

There is no known exploitation of CVE-2023-45287 in the wild and no public exploit code.

All Golang Go vulnerabilities

Sources

Also known as ALSA-2024:2239, AZL-32100, AZL-32123, AZL-34764, AZL-37310, AZL-37380 and 11 more.

Is CVE-2023-45287 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free