libssh2 through 1.11.1, fixed in commit 5e47761, contains a double-free vulnerability in the sftp_open() function in src/sftp.c that allows a malicious SSH server to corrupt the heap of any authenticated client opening an SFTP session. When a server responds to SSH_FXP_OPEN with SSH_FXP_STATUS containing FX_OK, the response data buffer is freed, and if a subsequent sftp_packet_require() call returns a specific error such as LIBSSH2_ERROR_CHANNEL_PACKET_EXCEEDED, the same pointer is freed a second time, enabling tcache dup conditions on glibc systems that allow overlapping allocations and function pointer overwrites.
1.8.0-11.8.0-1ubuntu0.11.8.0-2.1build11.8.0-2.1ubuntu0.11.10.0-21.10.0-2build11.10.0-31.9.0-31.11.0-4.1ubuntu0.24.04.41.11.1-1ubuntu0.26.04.41.4.3-11.4.3-21.4.3-2ubuntu0.11.4.3-2ubuntu0.21.4.3-2ubuntu0.2+esm11.4.3-2ubuntu0.2+esm21.4.3-2ubuntu0.2+esm31.5.0-21.5.0-2ubuntu0.11.5.0-2ubuntu0.1+esm11.5.0-2ubuntu0.1+esm2Exploitability
AV:NAC:LAT:NPR:NUI:PVulnerable System
VC:HVI:HVA:HSubsequent System
SC:NSI:NSA:NCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N