The API function ssh_get_hexa() is vulnerable, when 0-lenght
input is provided to this function. This function is used internally
in ssh_get_fingerprint_hash() and ssh_print_hexa() (deprecated),
which is vulnerable to the same input (length is provided by the
calling application).
The function is also used internally in the gssapi code for logging
the OIDs received by the server during GSSAPI authentication. This
could be triggered remotely, when the server allows GSSAPI authentication
and logging verbosity is set at least to SSH_LOG_PACKET (3). This
could cause self-DoS of the per-connection daemon process.
To mitigate this issue, consider disabling GSSAPI authentication if it is not required, or reduce the LogLevel in the sshd_config file to a value lower than SSH_LOG_PACKET (e.g., INFO).
To disable GSSAPI authentication, add or modify the following line in /etc/ssh/sshd_config:
GSSAPIAuthentication no
To reduce logging verbosity, add or modify the following line in /etc/ssh/sshd_config:
LogLevel INFO
After making changes to sshd_config, the sshd service must be restarted for the changes to take effect. This may temporarily interrupt active SSH sessions.