=========================================================== == Subject: Missing principal-to-user check in gssapi-keyex == == CVE ID#: CVE-2026-59851 == == Versions: libssh 0.12.0 == == Summary: A client with valid Kerberos credentials can == impersonate any user on a libssh server with == enabled GSSAPIKeyExchange. == == Component: server =========================================================== =========== Description =========== The libssh server implementation did not dispatch any authorization callback when handling the gssapi-keyex authentication request. SSH servers built on libssh which enable GSSAPIKeyExchange therefore did not have means to check that an authenticated client (with a valid Kerberos ticket for some principal) is authorized to log in under the requested username. As a result, any client with valid Kerberos credentials would be able to log in as an arbitrary local user. Note that SSH server implementations built on libssh are still expected to provide the callback themselves, as there are multiple ways to implement the authorization. ================== Patch Availability ================== Patches addressing the issues have been posted to: https://www.libssh.org/security/ Additionally, libssh 0.12.1 has been issued as a security release to correct the defect. SSH administrators are advised to upgrade to this release or apply the patch as soon as possible. ================== CVSSv3 calculation ================== CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H (8.8) ========== Workaround ========== Disable GSSAPIKeyExchange. ======= Credits ======= Reported by Aisle Research in partnership with Red Hat, patch provided by Pavol Zacik of the libssh team. ========================================================== == The libssh team ==========================================================