CVE-2026-55199: libssh2 CPU exhaustion in SSH_MSG_EXT_INFO handler

CVE-2026-55199 · Severity: medium · CVSS 5.9 · Published 2026-06-17

libssh2 is a widely used library that allows applications to communicate securely using the SSH protocol. A vulnerability in how the library handles initial connection messages allows a malicious server to force a client application into an unresponsive state. This results in a denial of service where the client consumes excessive processor power for over a minute, potentially crashing the application or disrupting automated tasks.

Technologies: Libssh2. Vendors: Libssh2.

Quick answers

Is CVE-2026-55199 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-55199 being exploited in the wild.
How severe is CVE-2026-55199?
Medium severity, with a CVSS score of 5.9, published 17 June 2026.
Which products and versions are affected?
Libssh2 through 1.11.1.
Is there a fix for CVE-2026-55199?
A patch was published on 2026-04-21: Fix merged into master branch via commit 1762685 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-55199 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-55199?
Check whether you run Libssh2 at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A denial of service vulnerability exists in the SSH_MSG_EXT_INFO handler within src/packet.c of libssh2. The root cause is a failure to check the return values of _libssh2_get_string() when parsing extension name/value pairs. An attacker-controlled SSH server can send a crafted extension count (nr_extensions) of 0xFFFFFFFF; if the buffer is exhausted, the client enters a tight CPU loop performing no-op iterations. Because session timeouts do not apply to these CPU-bound loops, the client remains unresponsive for a significant duration. The issue is fixed in commit 1762685 by ensuring the loop breaks upon parsing failures.

Affected products

  • libssh2 libssh2 through 1.11.1

Timeline

  • 2026-04-15: disclosed: Initial pull request submitted by researcher
  • 2026-04-21: patched: Fix merged into master branch via commit 1762685
  • 2026-06-17: advisory: CVE-2026-55199 published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.