Zum Hauptinhalt springen
LIVE Intel Feed
criticalCVSS 9.1/10·Published: 2024-12-11·Go standard library (crypto/ssh)

How to fix CVE-2024-45337 – Step-by-Step Guide

CVE-2024-45337 is a critical vulnerability (CVSS 9.1) affecting the Go standard library's crypto/ssh package. It allows for an unauthorized SSH authentication bypass in Go applications. This flaw arises from a logic error in how ServerConfig.PublicKeyCallback is handled.

CVE ID
CVE-2024-45337
Severity
CRITICAL
CVSS Score
9.1/10
Affected
Go standard library (crypto/ssh)

What is Go crypto/ssh – Misuse of ServerConfig.PublicKeyCallback?

CVE-2024-45337 is a logic flaw in Go's crypto/ssh ServerConfig.PublicKeyCallback. It allows applications to incorrectly authorize SSH connections. This happens when the callback approves a key, but the subsequent authentication fails, creating an authentication bypass. The callback's approval isn't correctly tied to the final authentication outcome.

Affected Versions
Go < 1.22.10, < 1.23.4
Fixed In
Go 1.22.10+, 1.23.4+

Impact and Risks for your Infrastructure

The impact is severe: unauthorized SSH authentication bypass in affected Go applications. Attackers can authenticate to SSH servers using any public key, regardless of its validity, if the PublicKeyCallback is improperly implemented. This grants unauthorized access to critical infrastructure and sensitive data, posing a significant risk to system integrity and confidentiality.

gosshauth-bypasscritical2024

Step-by-Step Mitigation Guide

To mitigate CVE-2024-45337, update your Go environment to a fixed version. Upgrade to Go 1.22.10+ or Go 1.23.4+. Verify the update by checking your Go version (`go version`) and recompiling any affected applications to ensure the patched crypto/ssh library is used. This ensures the authentication flow correctly handles PublicKeyCallback.

  1. 1Upgrade Go to 1.22.10+ or 1.23.4+.
  2. 2Review your PublicKeyCallback implementation to ensure it rejects unauthorized keys.
  3. 3Add explicit key allowlist validation inside PublicKeyCallback.
  4. 4Rotate SSH host keys and audit SSH access logs for anomalies.
  5. 5Run static analysis (govulncheck) to detect usage of vulnerable patterns.
  6. 6Pin allowed public keys in your callback rather than relying on post-callback checks.

Frequently Asked Questions

What is the CVSS score for CVE-2024-45337?
CVE-2024-45337 has a CVSS score of 9.1/10 (critical severity). This reflects the most severe potential impact, requiring immediate remediation.
Which versions of Go standard library (crypto/ssh) are affected?
Affected: Go < 1.22.10, < 1.23.4. The vulnerability was fixed in: Go 1.22.10+, 1.23.4+.
How long does it take to fix CVE-2024-45337?
For most teams: 15–60 minutes to apply the patch, plus 15 minutes of post-patch verification. Complex multi-service environments may require 2–4 hours including staging validation.
Is CVE-2024-45337 being actively exploited?
Check the NVD entry and CISA KEV catalog for exploitation status. As a critical-severity vulnerability, treat it as a priority remediation regardless of known exploitation status.
This CVE fix guide is based on publicly available security advisories (NVD, vendor bulletins). Always test changes in a staging environment before applying to production. Verify against the official vendor advisory for the most up-to-date guidance.
🔒 Quantum-Resistant Mycelium Architecture
🛡️ 3M+ Runbooks – täglich von SecOps-Experten geprüft
🌐 Zero Known Breaches – Powered by Living Intelligence
🏛️ SOC2 & ISO 27001 Aligned • GDPR 100 % compliant
⚡ Real-Time Global Mycelium Network – 347 Bedrohungen in 60 Minuten
🧬 Trusted by SecOps Leaders worldwide