CVE-2026-58051

NameCVE-2026-58051
Descriptionlibssh2 through 1.11.1 grows its publickey list with SSH2_REALLOC but does not zero-initialize new entries before parsing populates them, so a parse failure reaching the cleanup path leaves libssh2_publickey_list_free operating on an uninitialized entry. A malicious SSH server offering the publickey subsystem can use a malformed response to make cleanup free an uninitialized, attacker-influenceable attrs pointer in a connecting libssh2 client.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1144415

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
libssh2 (PTS)bullseye1.9.0-2+deb11u1vulnerable
bookworm1.10.0-3vulnerable
trixie (security), trixie1.11.1-1+deb13u1vulnerable
forky, sid1.11.1-6fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
libssh2source(unstable)1.11.1-61144415

Notes

[trixie] - libssh2 <no-dsa> (Minor issue; can be fixed via point release)
https://github.com/bikini/exploitarium/tree/main/libssh2-publickey-list-calc-poc
https://github.com/libssh2/libssh2/pull/2127
Fixed by: https://github.com/libssh2/libssh2/commit/a9758da45a52bc8c630ec9493804d0c6ea30b24a

Search for package or bug name: Reporting problems