In libssh2 v1.9.0 and earlier versions, the SSH_MSG_DISCONNECT logic in packet.c has an integer overflow in a bounds check, enabling an attacker to specify an arbitrary (out-of-bounds) offset for a subsequent memory read. A crafted SSH server may be able to disclose sensitive information or cause a denial of service condition on the client system when a user connects to the server.
https://security.netapp.com/advisory/ntap-20220909-0004/
https://lists.debian.org/debian-lts-announce/2023/09/msg00006.html
https://lists.debian.org/debian-lts-announce/2021/12/msg00013.html
https://lists.debian.org/debian-lts-announce/2019/11/msg00010.html
https://github.com/libssh2/libssh2/commit/dedcbd106f8e52d5586b0205bc7677e4c9868f9c
https://github.com/libssh2/libssh2/blob/42d37aa63129a1b2644bf6495198923534322d64/src/packet.c#L480
https://blog.semmle.com/libssh2-integer-overflow-CVE-2019-17498/
http://packetstormsecurity.com/files/172835/libssh2-1.9.0-Out-Of-Bounds-Read.html
http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00026.html