What’s Vulnerable › Vulnerabilities
CVE-2026-116696: russh's SSH agent server is susceptible to unbound allocations via repeated SSH_AGENT_CONSTRAIN_CONFIRM messages
- Severity: low (CVSS 3.3 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-10-27 · updated 2026-10-27
- Weakness: CWE-770
Description
russh is a Rust SSH client and server library that includes an SSH agent protocol implementation. Prior to 0.65.0, russh::keys::agent::server::serve in russh/src/keys/agent/server.rs accepts repeated SSH_AGENT_CONSTRAIN_CONFIRM records while adding a key and appends every Constraint::Confirm record to the key's retained constraint vector without a count or memory limit. A process that can connect to the agent socket, including the remote side of a forwarded agent session, can repeatedly add constrained keys and cause renewable memory growth that persists for the process lifetime because keys without a lifetime constraint do not expire. This issue is fixed in version 0.65.0.
Affected products
- Eugeny russh: before 0.65.0
References
- https://github.com/Eugeny/russh/commit/23aa5d28fe9601c5bdfe9e60b7ec5d4f882c3de6
- https://github.com/Eugeny/russh/releases/tag/v0.65.0
- https://github.com/Eugeny/russh/security/advisories/GHSA-9wfm-jcj8-jfv9
Get alerted when CVE-2026-116696 or the next vulnerability affects your stack