OpenSSH developers have patched a serious flaw in the popular open source remote access protocol that could compromise encryption keys, with users urged to upgrade their OpenSSH installations straight away.
According to the advisory, the vulnerability has been blamed on an experimental roaming feature, aimed at resuming SSH connections, in OpenSSH versions 5.4 to 7.1.
Attackers who control servers could use the vulnerability to discover a client's private encryption keys, the OpenSSH developers said.
"The matching server code has never been shipped, but the client code was enabled by default and could be tricked by a malicious server into leaking client memory to the server, including private client user keys.
"The authentication of the server host key prevents exploitation by a man-in-the-middle, so this information leak is restricted to connections to malicious or compromised servers," the advisory said.
As a workaround, it's possible to disable the code in the OpenSSH client by adding "UseRoaming no" to the ssh_config configuration file, or to the per-user configuration in the ~/.ssh/config file.
It is also possible to pass the -oUseRoaming=no parameter to the OpenSSH client via the command line.
Open source projects such as OpenBSD have issued alerts about the vulnerability, and users are asked to upgrade to OpenSSH 7.1p2 urgently.