CVE-2026-39834
cAdvisor Analyse et atténuation des vulnérabilités

Aperçu

CVE-2026-39834 is an integer overflow vulnerability in the golang.org/x/crypto/ssh package that causes an infinite loop when writing data larger than 4GB in a single SSH channel Write call. The flaw affects all versions of golang.org/x/crypto prior to 0.52.0. It was published on May 22, 2026, and has a CVSS v3.1 base score of 9.1 (Critical) with no authentication required for exploitation (pkg.go.dev, Feedly).

Détails techniques

The root cause is an integer overflow (CWE-190) in the internal payload size calculation within the SSH channel write loop of golang.org/x/crypto/ssh. When a caller passes a buffer exceeding 4GB (the 32-bit integer boundary), the size variable truncates, causing the loop condition to never advance — resulting in an infinite loop that continuously sends empty SSH packets. The fix, applied in Go change list 781663, replaces the size comparison variable type with int64 to prevent truncation. The vulnerability is reachable over the network without authentication, as an attacker only needs to establish an SSH connection and trigger a large write operation (pkg.go.dev, oss-sec).

Impact

Successful exploitation causes the affected SSH channel's write loop to spin indefinitely, consuming CPU and potentially exhausting server resources, resulting in a denial of service for legitimate users. Because no authentication is required, any network-accessible service built on golang.org/x/crypto/ssh — including tools like rclone, Portainer, and Pulumi Kubernetes — is potentially affected. Integrity is also rated HIGH in the CVSS score, reflecting the possibility that the infinite loop disrupts data transmission guarantees on the SSH channel (Feedly, pkg.go.dev).

Étapes d’exploitation

  1. Reconnaissance: Identify services built on golang.org/x/crypto/ssh versions prior to 0.52.0 that are exposed to the network (e.g., using Shodan, Censys, or banner grabbing to identify Go-based SSH services).
  2. Establish SSH connection: Initiate a standard SSH connection to the target service. No credentials are required if the service accepts unauthenticated connections or if credentials are otherwise available.
  3. Open an SSH channel: After connection, open an SSH channel (e.g., a session or direct-tcpip channel) as part of the normal SSH protocol handshake.
  4. Trigger large Write call: Send a single Write call on the SSH channel with a payload exceeding 4GB (2^32 bytes). This causes the internal int32 size variable to overflow and truncate to zero or a small value.
  5. Induce infinite loop: The truncated size causes the write loop's progress condition to never be satisfied, locking the goroutine in an infinite loop sending empty packets and consuming server CPU/resources, resulting in denial of service (pkg.go.dev, oss-sec).

Indicateurs de compromis

  • Network: Sustained high-volume SSH connections from a single source IP with abnormally large data transfer attempts; SSH sessions that remain open indefinitely without completing data transfer.
  • Process: Go-based SSH server processes showing 100% CPU utilization on one or more goroutines; process hangs or unresponsiveness correlated with active SSH sessions.
  • Logs: SSH server logs showing sessions that open channels but never close them; application logs indicating stalled or non-progressing write operations on SSH channels.
  • System: Elevated system load average without corresponding legitimate workload; SSH service becoming unresponsive to new connection attempts due to resource exhaustion.

Atténuation et solutions de contournement

The primary remediation is to upgrade golang.org/x/crypto to version 0.52.0 or later, which fixes the integer overflow by using int64 for the size comparison (pkg.go.dev). Downstream projects such as rclone, Portainer (fixed in 2.39.3), and Pulumi Kubernetes have already released updates incorporating the patched library (Portainer Release). As a temporary workaround, implement network-level rate limiting or connection limits on SSH services, and consider adding application-level timeouts for SSH write operations to prevent indefinite blocking. Amazon Linux 2, Amazon Linux 2023, and openSUSE have also issued security advisories with updated packages (Amazon Linux, openSUSE).

Réactions de la communauté

The Go security team disclosed the vulnerability via the golang-announce mailing list and published a detailed advisory in the Go vulnerability database (golang-announce). The oss-sec mailing list also carried the disclosure, prompting awareness in the open-source security community (oss-sec). Multiple Linux distributions including openSUSE and Amazon Linux issued security advisories, and several downstream Go projects rapidly released patched versions, reflecting the broad reach of the golang.org/x/crypto library in the ecosystem.

Ressources additionnelles


SourceCe rapport a été généré à l’aide de l’IA

Apparenté cAdvisor Vulnérabilités:

Identifiant CVE

Sévérité

Score

Technologies

Nom du composant

Exploit CISA KEV

A corrigé

Date de publication

CVE-2026-39822HIGH7.8
  • Go logoGo
  • temporal-ui-server
NonOuiJul 08, 2026
CVE-2026-42306HIGH7.2
  • cAdvisor logocAdvisor
  • ko-fips
NonOuiJun 12, 2026
CVE-2026-41568MEDIUM6.1
  • cAdvisor logocAdvisor
  • paketo-buildpacks-mri
NonOuiJun 12, 2026
CVE-2026-42505MEDIUM5.3
  • Go logoGo
  • crossplane-provider-aws-acmpca
NonOuiJul 08, 2026
CVE-2026-41579LOW3.3
  • cAdvisor logocAdvisor
  • gpu-operator-26.3
NonOuiJul 01, 2026

Évaluation gratuite des vulnérabilités

Évaluez votre posture de sécurité dans le cloud

Évaluez vos pratiques de sécurité cloud dans 9 domaines de sécurité pour évaluer votre niveau de risque et identifier les failles dans vos défenses.

Demander une évaluation

Obtenez une démo personnalisée

Prêt(e) à voir Wiz en action ?

"La meilleure expérience utilisateur que j’ai jamais vue, offre une visibilité totale sur les workloads cloud."
David EstlickRSSI
"Wiz fournit une interface unique pour voir ce qui se passe dans nos environnements cloud."
Adam FletcherChef du service de sécurité
"Nous savons que si Wiz identifie quelque chose comme critique, c’est qu’il l’est réellement."
Greg PoniatowskiResponsable de la gestion des menaces et des vulnérabilités