CVE-2026-66035

Name
CVE-2026-66035
Description
libssh2 through 1.11.1, fixed in commit 42e33d8, contains a pre-authentication heap buffer overflow vulnerability that allows a malicious SSH server to corrupt heap metadata in any connecting client by sending a packet with a packet_length smaller than the cipher's block size during Encrypt-then-MAC cipher negotiation. In the fullpacket() function in src/transport.c, the ETM path allocates a buffer of packet_length bytes but copies blocksize minus one bytes via memcpy, causing an overflow that on 32-bit glibc writes attacker-controlled bytes into an adjacent chunk's SIZE field, enabling tcache bin confusion, overlapping live objects, and function pointer overwrite during the session handshake before authentication.
NVD Severity
unknown
Other trackers
Mailing lists
Exploits
Forges
GitHub (code, issues), Aports (code, issues)

References

Type URI
disclosure@vulncheck.com https://github.com/libssh2/libssh2/commit/42e33d81577ed4b95d4b4f6f845e5ee8efe5eeb4
disclosure@vulncheck.com https://github.com/libssh2/libssh2/pull/2198
disclosure@vulncheck.com https://www.vulncheck.com/advisories/libssh2-heap-buffer-overflow-via-etm-cipher-negotiation

Match rules

CPE URI Source package Min version Max version
cpe:2.3:a:libssh2:libssh2:*:*:*:*:*:*:*:* libssh2 >= None <= 1.11.1

Vulnerable and fixed packages

Source package Branch Version Maintainer Status
libssh2 edge-main 1.11.1-r3 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.11.1-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.11.1-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.11.1-r0 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.11.0-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.9.0-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.9.0-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 edge-main 1.9.0-r0 None possibly vulnerable
libssh2 edge-main 1.8.1-r0 None possibly vulnerable
libssh2 3.24-main 1.11.1-r3 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.24-main 1.11.1-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.23-main 1.11.1-r3 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.23-main 1.11.1-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.23-main 1.11.1-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.22-main 1.11.1-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.22-main 1.11.1-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.22-main 1.11.1-r0 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.22-main 1.11.0-r1 None possibly vulnerable
libssh2 3.22-main 1.9.0-r1 None possibly vulnerable
libssh2 3.22-main 1.9.0-r0 None possibly vulnerable
libssh2 3.22-main 1.8.1-r0 None possibly vulnerable
libssh2 3.21-main 1.11.1-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.21-main 1.11.1-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.21-main 1.11.1-r0 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.21-main 1.11.0-r1 None possibly vulnerable
libssh2 3.21-main 1.9.0-r1 None possibly vulnerable
libssh2 3.21-main 1.9.0-r0 None possibly vulnerable
libssh2 3.21-main 1.8.1-r0 None possibly vulnerable
libssh2 3.20-main 1.11.0-r3 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.20-main 1.11.0-r2 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.20-main 1.11.0-r1 None possibly vulnerable
libssh2 3.20-main 1.9.0-r1 None possibly vulnerable
libssh2 3.20-main 1.9.0-r0 None possibly vulnerable
libssh2 3.20-main 1.8.1-r0 None possibly vulnerable
libssh2 3.19-main 1.11.0-r1 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
libssh2 3.19-main 1.9.0-r1 None possibly vulnerable
libssh2 3.19-main 1.9.0-r0 None possibly vulnerable
libssh2 3.19-main 1.8.1-r0 None possibly vulnerable