---
id: CVE-2026-111061
title: >-
  russh agent server converts constraint records into unbounded
  never-rolled-back tasks
summary: >-
  russh is a Rust SSH client and server library that includes an SSH agent
  protocol implementation. Prior to 0.64.1, the agent server spawns a separate
  long-lived task for every SSH_AGENT_CONSTRAIN_LIFETIME record in a constrained
  add-key …
severity: medium
cvss: 4.3
cvssVector: 'CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L'
cvssSource: cna
cwe:
  - CWE-770
vendor: Eugeny
product: russh
affected:
  - russh < 0.64.1
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-19T18:29:25.468418Z'
exploitAvailable: true
published: '2026-10-19'
updated: '2026-10-19'
sourceUpdated: '2026-10-19T18:29:47.486Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-111061'
references:
  - url: 'https://github.com/Eugeny/russh/security/advisories/GHSA-4wc5-f2rc-q74m'
    label: 'https://github.com/Eugeny/russh/security/advisories/GHSA-4wc5-f2rc-q74m'
  - url: >-
      https://github.com/Eugeny/russh/commit/4c305033d72f8e5dd21a3fd4c53a6c291a16ebd1
    label: >-
      https://github.com/Eugeny/russh/commit/4c305033d72f8e5dd21a3fd4c53a6c291a16ebd1
  - url: 'https://github.com/Eugeny/russh/releases/tag/v0.64.1'
    label: 'https://github.com/Eugeny/russh/releases/tag/v0.64.1'
  - url: 'https://github.com/advisories/GHSA-4wc5-f2rc-q74m'
tags:
  - cve.org
  - exploit-available
  - ghsa
  - rust
aliases:
  - GHSA-4wc5-f2rc-q74m
ecosystem: rust
patched:
  - russh 0.64.1
ingestedAt: '2026-10-19T17:33:42.442Z'
---

## Overview

russh is a Rust SSH client and server library that includes an SSH agent protocol implementation. Prior to 0.64.1, the agent server spawns a separate long-lived task for every SSH_AGENT_CONSTRAIN_LIFETIME record in a constrained add-key request. The loop accepts repeated lifetime records, clones the key blob into each task, and does not roll back tasks when later constraint parsing fails. An attacker that can speak the agent protocol locally or through agent forwarding can exhaust memory and tasks until the agent process is starved or terminated, denying SSH agent service. This issue is fixed in version 0.64.1.

## Affected

- `russh < 0.64.1`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-111061)

Affected packages:

- `russh <= 0.64.0`

Patched in:

- `russh 0.64.1`

Source: https://github.com/advisories/GHSA-4wc5-f2rc-q74m
