{"id":"CVE-2021-3634","aliases":["ALPINE-CVE-2021-3634","ALSA-2022:2031","BELL-CVE-2021-3634","CLSA-2023-1685023099","CLSA-2023-1685023501","DEBIAN-CVE-2021-3634","DSA-4965-1","EUVD-2021-26935","GHSA-4wwm-f449-qwpq","MGASA-2021-0441","OESA-2021-1343","RHSA-2022:2031","RLSA-2022:2031","SUSE-SU-2024:0525-1","SUSE-SU-2024:0539-1","UBUNTU-CVE-2021-3634","USN-5053-1","openSUSE-SU-2024:10998-1"],"status":"published","title":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two...","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.04683,"percentile":0.91846,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-119","CWE-787"],"published":"2021-08-26T00:00:00Z","modified":"2026-11-03T06:32:39Z","fixes":[{"ecosystem":"Alpine:v3.14","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.15","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.16","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.17","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.18","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.19","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.20","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.21","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.22","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.23","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.24","package":"libssh","fixed_in":["0.9.6-r0"],"sources":["osv"]},{"ecosystem":"AlmaLinux:8","package":"libssh","fixed_in":["0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"AlmaLinux:8","package":"libssh-config","fixed_in":["0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"AlmaLinux:8","package":"libssh-devel","fixed_in":["0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.4","package":"libssh","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.4","package":"libssh-config","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.4","package":"libssh-devel","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.5","package":"libssh","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.5","package":"libssh-config","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"TuxCare:CentOS:8.5","package":"libssh-devel","fixed_in":["0.9.4-3.el8.tuxcare.els1"],"sources":["osv"]},{"ecosystem":"Debian:12","package":"libssh","fixed_in":["0.9.6-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"libssh","fixed_in":["0.9.6-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"libssh","fixed_in":["0.9.6-1"],"sources":["osv"]},{"ecosystem":"Debian:11","package":"libssh","fixed_in":["0.9.5-1+deb11u1"],"sources":["osv"]},{"ecosystem":"Mageia:8","package":"libssh","fixed_in":["0.9.6-1.mga8"],"sources":["osv"]},{"ecosystem":"openEuler:20.03-LTS-SP1","package":"libssh","fixed_in":["0.9.4-5.oe1"],"sources":["osv"]},{"ecosystem":"openEuler:20.03-LTS-SP2","package":"libssh","fixed_in":["0.9.4-5.oe1"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-debuginfo","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-debugsource","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-devel","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-config","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-debuginfo","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-debugsource","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Rocky Linux:8","package":"libssh","fixed_in":["0:0.9.6-3.el8"],"sources":["osv"]},{"ecosystem":"Ubuntu:20.04:LTS","package":"libssh","fixed_in":["0.9.3-2ubuntu2.2"],"sources":["osv"]},{"ecosystem":"Ubuntu:22.04:LTS","package":"libssh","fixed_in":["0.9.6-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Alpine:v3.14","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.15","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.16","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.17","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.18","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.19","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.20","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.21","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.22","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.23","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.24","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.9.1"},{"fixed":"0.9.6-r0"}]}]},{"source":"osv","ecosystem":"AlmaLinux:8","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"AlmaLinux:8","package":"libssh-config","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"AlmaLinux:8","package":"libssh-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.4","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.4","package":"libssh-config","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.4","package":"libssh-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.5","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.5","package":"libssh-config","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"TuxCare:CentOS:8.5","package":"libssh-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-3.el8.tuxcare.els1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1"}]}]},{"source":"osv","ecosystem":"Debian:11","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.5-1+deb11u1"}]}],"versions":["0.9.5-1"]},{"source":"osv","ecosystem":"Mageia:8","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1.mga8"}]}]},{"source":"osv","ecosystem":"openEuler:20.03-LTS-SP1","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-5.oe1"}]}]},{"source":"osv","ecosystem":"openEuler:20.03-LTS-SP2","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.4-5.oe1"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::appstream","package":"libssh-devel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-config","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Red Hat:enterprise_linux:8::baseos","package":"libssh-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"Rocky Linux:8","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.9.6-3.el8"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP2-LTSS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP3-LTSS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP2","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP3","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.1","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.2","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 7.1","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-150200.13.3.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Software Development Kit 12 SP5","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-3.12.2"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP5","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-3.12.2"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 12 SP5","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.8-3.12.2"}]}],"bundled":9},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.3-2ubuntu2.2"}]}],"versions":["0.9.0-1ubuntu1","0.9.0-1ubuntu4","0.9.0-1ubuntu5","0.9.3-2ubuntu1","0.9.3-2ubuntu2","0.9.3-2ubuntu2.1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1"}]}]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.3-2ubuntu2.2"}]}],"versions":["0.9.0-1ubuntu1","0.9.0-1ubuntu4","0.9.0-1ubuntu5","0.9.3-2ubuntu1","0.9.3-2ubuntu2","0.9.3-2ubuntu2.1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"libssh","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.6-1.2"}]}],"bundled":4}],"products":[{"vendor":"debian","product":"debian_linux"},{"vendor":"fedoraproject","product":"fedora"},{"vendor":"libssh","product":"libssh"},{"vendor":"netapp","product":"cloud_backup"},{"vendor":"oracle","product":"mysql_workbench"},{"vendor":"redhat","product":"enterprise_linux"},{"vendor":"redhat","product":"virtualization"}],"references":[{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1978810","tags":["x_transferred","Issue Tracking","Third Party Advisory","report"]},{"url":"https://www.debian.org/security/2021/dsa-4965","tags":["vendor-advisory","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/SVWAAB2XMKEUMPMDALINKAA4U2QM4LNG/","tags":["vendor-advisory","x_transferred","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/JKYD3ZRAMDAQX3ZW6THHUF3GXN7FF6B4/","tags":["vendor-advisory","x_transferred","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DRK67AJCWYYVAGF5SGAHNZXCX3PN3ZFP/","tags":["vendor-advisory","x_transferred","web"]},{"url":"https://www.oracle.com/security-alerts/cpujan2022.html","tags":["x_transferred","Patch","Third Party Advisory","fix"]},{"url":"https://security.netapp.com/advisory/ntap-20211004-0003/","tags":["x_transferred","Third Party Advisory","advisory"]},{"url":"https://security.gentoo.org/glsa/202312-05","tags":["vendor-advisory","x_transferred","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-3634","tags":["advisory"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/DRK67AJCWYYVAGF5SGAHNZXCX3PN3ZFP/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JKYD3ZRAMDAQX3ZW6THHUF3GXN7FF6B4/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SVWAAB2XMKEUMPMDALINKAA4U2QM4LNG/"},{"url":"https://github.com/advisories/GHSA-4wwm-f449-qwpq"},{"url":"https://security.alpinelinux.org/vuln/CVE-2021-3634","tags":["advisory"]},{"url":"https://errata.almalinux.org/8/ALSA-2022-2031.html","tags":["advisory"]},{"url":"https://vulners.com/cve/CVE-2021-3634","tags":["report"]},{"url":"https://docs.bell-sw.com/security/cves/CVE-2021-3634","tags":["advisory"]},{"url":"https://errata.cloudlinux.com/centos8.4-els/CLSA-2023-1685023099.html","tags":["advisory"]},{"url":"https://errata.cloudlinux.com/centos8.5-els/CLSA-2023-1685023501.html","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-3634","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2021-0441.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=29419","tags":["report"]},{"url":"https://www.libssh.org/security/advisories/CVE-2021-3634.txt","tags":["advisory"]},{"url":"https://www.libssh.org/2021/08/26/libssh-0-9-6-security-release/","tags":["web"]},{"url":"https://ubuntu.com/security/notices/USN-5053-1","tags":["advisory"]},{"url":"https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2021-1343","tags":["advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2022:2031","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#low","tags":["article"]},{"url":"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/8.6_release_notes/","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1896651","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2020159","tags":["report"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2022/rhsa-2022_2031.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2021-3634","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-3634","tags":["advisory","report"]},{"url":"https://errata.rockylinux.org/RLSA-2022:2031","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20240525-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1158095","tags":["report"]},{"url":"https://bugzilla.suse.com/1168699","tags":["report"]},{"url":"https://bugzilla.suse.com/1174713","tags":["report"]},{"url":"https://bugzilla.suse.com/1189608","tags":["report"]},{"url":"https://bugzilla.suse.com/1211188","tags":["report"]},{"url":"https://bugzilla.suse.com/1211190","tags":["report"]},{"url":"https://bugzilla.suse.com/1218126","tags":["report"]},{"url":"https://bugzilla.suse.com/1218186","tags":["report"]},{"url":"https://bugzilla.suse.com/1218209","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2019-14889","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-16135","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-1730","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2021-3634","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-1667","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-2283","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-48795","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-6004","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-6918","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20240539-1/","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2021-3634","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2018-10933","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T00:00:00Z","modified":"2024-08-03T17:01:07.562Z","cwes":["CWE-787"],"updated_at":"2026-11-02T14:33:04.020035Z"}],"euvd":[{"id":"EUVD-2021-26935","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T00:00:00Z","modified":"2024-08-03T17:01:07Z","updated_at":"2026-11-03T03:25:12.535968Z"}],"ghsa":[{"id":"GHSA-4wwm-f449-qwpq","title":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two...","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2022-05-24T19:12:35Z","modified":"2023-12-22T12:31:45Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-119","CWE-787"],"updated_at":"2026-11-02T14:55:16.323735Z"}],"nvd":[{"id":"CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T17:15:08.323Z","modified":"2026-06-17T04:05:28.78Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary"},{"version":"2.0","score":4,"vector":"AV:N/AC:L/Au:S/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-787"],"updated_at":"2026-11-02T14:06:57.67549Z"}],"osv":[{"id":"ALPINE-CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T17:15:08.323Z","modified":"2026-11-03T06:32:39.347419122Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-03T07:17:20.312441Z"},{"id":"BELL-CVE-2021-3634","title":"CVE-2021-3634 does not affect BellSoft software","status":"withdrawn","published":"2023-08-31T12:13:39.944774Z","modified":"2026-01-26T09:49:31.79252Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:28:16.5265Z"},{"id":"CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T17:15:08.323Z","modified":"2026-10-24T10:30:15.951426769Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:44:20.434873Z"},{"id":"DEBIAN-CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-31T17:15:08.323Z","modified":"2026-10-23T18:05:22.856398014Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:45:35.233346Z"},{"id":"OESA-2021-1343","title":"libssh security update","description":"The ssh library was designed to be used by programmers needing a working SSH implementation by the mean of a library. The complete control of the client is made by the programmer. With libssh, you can remotely execute programs, transfer files, use a secure and transparent tunnel for your remote programs. With its Secure FTP implementation, you can play with remote files easily, without third-party programs others than libcrypto (from openssl).\r\n\r\nSecurity Fix(es):\r\n\r\nA flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \u0026quot;secret_hash\u0026quot; of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.(CVE-2021-3634)","status":"published","published":"2021-09-18T11:04:37Z","modified":"2026-08-18T01:15:36.399721771Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:52:38.987987Z"},{"id":"RHSA-2022:2031","title":"Red Hat Security Advisory: libssh security, bug fix, and enhancement update","status":"published","published":"2024-09-16T06:50:21Z","modified":"2026-06-26T12:22:10.127636059Z","cvss":[{"version":"3.1","score":3.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L","level":"low"}],"updated_at":"2026-11-02T15:53:09.62945Z"},{"id":"RLSA-2022:2031","title":"Low: libssh security, bug fix, and enhancement update","description":"libssh is a library which implements the SSH protocol. It can be used to implement client and server applications.\n\nThe following packages have been upgraded to a later upstream version: libssh (0.9.6). (BZ#1896651)\n\nSecurity Fix(es):\n\n* libssh: possible heap-based buffer overflow when rekeying (CVE-2021-3634)\n\nFor more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.\n\nAdditional Changes:\n\nFor detailed information on changes in this release, see the Rocky Linux 8.6 Release Notes linked from the References section.","status":"published","published":"2022-05-10T08:14:06Z","modified":"2026-02-05T03:00:11.778184Z","cvss":[{"version":"3.1","score":3.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:L","level":"low"}],"updated_at":"2026-11-02T15:53:24.322216Z"},{"id":"UBUNTU-CVE-2021-3634","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH protocol keeps track of two shared secrets during the lifetime of the session. One of them is called secret_hash and the other session_id. Initially, both of them are the same, but after key re-exchange, previous session_id is kept and used as an input to new secret_hash. Historically, both of these buffers had shared length variable, which worked as long as these buffers were same. But the key re-exchange operation can also change the key exchange method, which can be based on hash of different size, eventually creating \"secret_hash\" of different size than the session_id has. This becomes an issue when the session_id memory is zeroed or when it is used again during second key re-exchange.","status":"published","published":"2021-08-26T00:00:00Z","modified":"2026-04-22T12:57:55.223174Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:54:27.870979Z"},{"id":"ALSA-2022:2031","title":"Low: libssh security, bug fix, and enhancement update","description":"libssh is a library which implements the SSH protocol. It can be used to implement client and server applications.\n\nThe following packages have been upgraded to a later upstream version: libssh (0.9.6). (BZ#1896651)\n\nSecurity Fix(es):\n\n* libssh: possible heap-based buffer overflow when rekeying (CVE-2021-3634)\n\nFor more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.\n\nAdditional Changes:\n\nFor detailed information on changes in this release, see the AlmaLinux Release Notes linked from the References section.","status":"published","published":"2022-05-10T08:14:06Z","modified":"2026-10-29T11:01:18.849558245Z","updated_at":"2026-11-02T15:27:51.196609Z"},{"id":"CLSA-2023-1685023099","title":"libssh: Fix of CVE-2021-3634","description":"- CVE-2021-3634: create a separate length for session_id","status":"published","published":"2023-05-25T13:58:24Z","modified":"2026-06-01T00:33:20.258768236Z","updated_at":"2026-11-02T15:43:40.509998Z"},{"id":"CLSA-2023-1685023501","title":"libssh: Fix of CVE-2021-3634","description":"- CVE-2021-3634: create a separate length for session_id","status":"published","published":"2023-05-25T14:05:21Z","modified":"2026-06-01T00:33:13.167417119Z","updated_at":"2026-11-02T15:43:40.509998Z"},{"id":"DSA-4965-1","title":"libssh - security update","status":"published","published":"2021-08-31T00:00:00Z","modified":"2026-03-09T02:11:30.547741Z","updated_at":"2026-11-02T15:46:17.19998Z"},{"id":"MGASA-2021-0441","title":"Updated libssh packages fix security vulnerability","description":"A flaw has been found in libssh in versions prior to 0.9.6. The SSH\nprotocol keeps track of two shared secrets during the lifetime of the\nsession. One of them is called secret_hash and the other session_id.\nInitially, both of them are the same, but after key re-exchange, previous\nsession_id is kept and used as an input to new secret_hash. Historically,\nboth of these buffers had shared length variable, which worked as long as\nthese buffers were same. But the key re-exchange operation can also change\nthe key exchange method, which can be based on hash of different size,\neventually creating \"secret_hash\" of different size than the session_id\nhas. This becomes an issue when the session_id memory is zeroed or when it\nis used again during second key re-exchange. (CVE-2021-3634)\n","status":"published","published":"2021-09-23T04:49:29Z","modified":"2026-04-16T04:43:47.083148576Z","updated_at":"2026-11-02T15:49:41.849028Z"},{"id":"openSUSE-SU-2024:10998-1","title":"libssh-config-0.9.6-1.2 on GA media","description":"These are all security issues fixed in the libssh-config-0.9.6-1.2 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T03:55:16.21137Z","updated_at":"2026-11-02T16:58:34.894275Z"},{"id":"SUSE-SU-2024:0525-1","title":"Security update for libssh","description":"This update for libssh fixes the following issues:\n\nUpdate to version 0.9.8 (jsc#PED-7719):\n\n* Fix CVE-2023-6004: Command injection using proxycommand (bsc#1218209)\n* Fix CVE-2023-48795: Potential downgrade attack using strict kex (bsc#1218126)\n* Fix CVE-2023-6918: Missing checks for return values of MD functions (bsc#1218186)\n* Allow @ in usernames when parsing from URI composes\n\nUpdate to version 0.9.7:\n\n* Fix CVE-2023-1667: a NULL dereference during rekeying with algorithm\n  guessing (bsc#1211188)\n* Fix CVE-2023-2283: a possible authorization bypass in\n  pki_verify_data_signature under low-memory conditions (bsc#1211190)\n* Fix several memory leaks in GSSAPI handling code\n\nUpdate to version 0.9.6 (bsc#1189608, CVE-2021-3634):\n\n* https://git.libssh.org/projects/libssh.git/tag/?h=libssh-0.9.6\n\n\nUpdate to 0.9.5 (bsc#1174713, CVE-2020-16135):\n\n* CVE-2020-16135: Avoid null pointer dereference in sftpserver (T232)\n* Improve handling of library initialization (T222)\n* Fix parsing of subsecond times in SFTP (T219)\n* Make the documentation reproducible\n* Remove deprecated API usage in OpenSSL\n* Fix regression of ssh_channel_poll_timeout() returning SSH_AGAIN\n* Define version in one place (T226)\n* Prevent invalid free when using different C runtimes than OpenSSL (T229)\n* Compatibility improvements to testsuite \n\nUpdate to version 0.9.4\n\n* https://www.libssh.org/2020/04/09/libssh-0-9-4-and-libssh-0-8-9-security-release/\n* Fix possible Denial of Service attack when using AES-CTR-ciphers\n  CVE-2020-1730 (bsc#1168699)\n\nUpdate to version 0.9.3\n\n* Fixed CVE-2019-14889 - SCP: Unsanitized location leads to command execution (bsc#1158095)\n* SSH-01-003 Client: Missing NULL check leads to crash in erroneous state\n* SSH-01-006 General: Various unchecked Null-derefs cause DOS\n* SSH-01-007 PKI Gcrypt: Potential UAF/double free with RSA pubkeys\n* SSH-01-010 SSH: Deprecated hash function in fingerprinting\n* SSH-01-013 Conf-Parsing: Recursive wildcards in hostnames lead to DOS\n* SSH-01-014 Conf-Parsing: Integer underflow leads to OOB array access\n* SSH-01-001 State Machine: Initial machine states should be set explicitly\n* SSH-01-002 Kex: Differently bound macros used to iterate same array\n* SSH-01-005 Code-Quality: Integer sign confusion during assignments\n* SSH-01-008 SCP: Protocol Injection via unescaped File Names\n* SSH-01-009 SSH: Update documentation which RFCs are implemented\n* SSH-01-012 PKI: Information leak via uninitialized stack buffer\n\nUpdate to version 0.9.2\n\n* Fixed libssh-config.cmake\n* Fixed issues with rsa algorithm negotiation (T191)\n* Fixed detection of OpenSSL ed25519 support (T197)\n\nUpdate to version 0.9.1\n\n* Added support for Ed25519 via OpenSSL\n* Added support for X25519 via OpenSSL\n* Added support for localuser in Match keyword\n* Fixed Match keyword to be case sensitive\n* Fixed compilation with LibreSSL\n* Fixed error report of channel open (T75)\n* Fixed sftp documentation (T137)\n* Fixed known_hosts parsing (T156)\n* Fixed build issue with MinGW (T157)\n* Fixed build with gcc 9 (T164)\n* Fixed deprecation issues (T165)\n* Fixed known_hosts directory creation (T166)\n\n- Split out configuration to separate package to not mess up the\n  library packaging and coinstallation\n\nUpdate to verion 0.9.0\n\n* Added support for AES-GCM\n* Added improved rekeying support\n* Added performance improvements\n* Disabled blowfish support by default\n* Fixed several ssh config parsing issues\n* Added support for DH Group Exchange KEX\n* Added support for Encrypt-then-MAC mode\n* Added support for parsing server side configuration file\n* Added support for ECDSA/Ed25519 certificates\n* Added FIPS 140-2 compatibility\n* Improved known_hosts parsing\n* Improved documentation\n* Improved OpenSSL API usage for KEX, DH, and signatures\n\n- Add libssh client and server config files\n","status":"published","published":"2024-02-19T07:04:14Z","modified":"2026-02-04T03:01:50.419082Z","updated_at":"2026-11-02T15:53:54.239786Z"},{"id":"SUSE-SU-2024:0539-1","title":"Security update for libssh","description":"This update for libssh fixes the following issues:\n\nUpdate to version 0.9.8 (jsc#PED-7719):\n\n* Fix CVE-2023-6004: Command injection using proxycommand (bsc#1218209)\n* Fix CVE-2023-48795: Potential downgrade attack using strict kex (bsc#1218126)\n* Fix CVE-2023-6918: Missing checks for return values of MD functions (bsc#1218186)\n* Allow @ in usernames when parsing from URI composes\n\nUpdate to version 0.9.7\n\n* Fix CVE-2023-1667: a NULL dereference during rekeying with algorithm\n  guessing (bsc#1211188)\n* Fix CVE-2023-2283: a possible authorization bypass in\n  pki_verify_data_signature under low-memory conditions (bsc#1211190)\n* Fix several memory leaks in GSSAPI handling code\n\nUpdate to version 0.9.6 (bsc#1189608, CVE-2021-3634)\n\n* https://git.libssh.org/projects/libssh.git/tag/?h=libssh-0.9.6\n\nUpdate to version 0.9.5 (bsc#1174713, CVE-2020-16135):\n\n* CVE-2020-16135: Avoid null pointer dereference in sftpserver (T232)\n* Improve handling of library initialization (T222)\n* Fix parsing of subsecond times in SFTP (T219)\n* Make the documentation reproducible\n* Remove deprecated API usage in OpenSSL\n* Fix regression of ssh_channel_poll_timeout() returning SSH_AGAIN\n* Define version in one place (T226)\n* Prevent invalid free when using different C runtimes than OpenSSL (T229)\n* Compatibility improvements to testsuite \n\nUpdate to version 0.9.4:\n\n* https://www.libssh.org/2020/04/09/libssh-0-9-4-and-libssh-0-8-9-security-release/\n* Fix possible Denial of Service attack when using AES-CTR-ciphers\n  CVE-2020-1730 (bsc#1168699)\n\nUpdate to version 0.9.3:\n\n* Fixed CVE-2019-14889 - SCP: Unsanitized location leads to command execution (bsc#1158095)\n* SSH-01-003 Client: Missing NULL check leads to crash in erroneous state\n* SSH-01-006 General: Various unchecked Null-derefs cause DOS\n* SSH-01-007 PKI Gcrypt: Potential UAF/double free with RSA pubkeys\n* SSH-01-010 SSH: Deprecated hash function in fingerprinting\n* SSH-01-013 Conf-Parsing: Recursive wildcards in hostnames lead to DOS\n* SSH-01-014 Conf-Parsing: Integer underflow leads to OOB array access\n* SSH-01-001 State Machine: Initial machine states should be set explicitly\n* SSH-01-002 Kex: Differently bound macros used to iterate same array\n* SSH-01-005 Code-Quality: Integer sign confusion during assignments\n* SSH-01-008 SCP: Protocol Injection via unescaped File Names\n* SSH-01-009 SSH: Update documentation which RFCs are implemented\n* SSH-01-012 PKI: Information leak via uninitialized stack buffer\n\nUpdate to version 0.9.2:\n\n* Fixed libssh-config.cmake\n* Fixed issues with rsa algorithm negotiation (T191)\n* Fixed detection of OpenSSL ed25519 support (T197)\n\nUpdate to version 0.9.1:\n\n* Added support for Ed25519 via OpenSSL\n* Added support for X25519 via OpenSSL\n* Added support for localuser in Match keyword\n* Fixed Match keyword to be case sensitive\n* Fixed compilation with LibreSSL\n* Fixed error report of channel open (T75)\n* Fixed sftp documentation (T137)\n* Fixed known_hosts parsing (T156)\n* Fixed build issue with MinGW (T157)\n* Fixed build with gcc 9 (T164)\n* Fixed deprecation issues (T165)\n* Fixed known_hosts directory creation (T166)\n\nUpdate to verion 0.9.0:\n\n* Added support for AES-GCM\n* Added improved rekeying support\n* Added performance improvements\n* Disabled blowfish support by default\n* Fixed several ssh config parsing issues\n* Added support for DH Group Exchange KEX\n* Added support for Encrypt-then-MAC mode\n* Added support for parsing server side configuration file\n* Added support for ECDSA/Ed25519 certificates\n* Added FIPS 140-2 compatibility\n* Improved known_hosts parsing\n* Improved documentation\n* Improved OpenSSL API usage for KEX, DH, and signatures\n\n- Add libssh client and server config files\n","status":"published","published":"2024-02-20T15:03:55Z","modified":"2026-02-04T03:19:38.620325Z","updated_at":"2026-11-02T15:53:54.239786Z"},{"id":"USN-5053-1","title":"libssh vulnerability","description":"It was discovered that libssh incorrectly handled rekeying. A remote\nattacker could use this issue to cause libssh to crash, resulting in a\ndenial of service, or possibly execute arbitrary code.\n","status":"published","published":"2021-08-26T15:37:38Z","modified":"2026-04-22T10:17:38.070194Z","updated_at":"2026-11-02T16:58:15.683829Z"}]}}
