Researchers keep coming up with memory side-channel vulnerabilities in modern processors and DRAMs, like Rowhammer, RAMBleed, Spectre and Meltdown. All of these attacks bypass architectural safeguards that are supposed to keep data behind an unscalable wall. The attacks act to infer memory-resident data that is being stored in plaintext for operational reasons.
Now, many researchers have demonstrated their side-channel attacks against the OpenSSH application installed on a targeted computer. This is because OpenSSH keeps a copy of your SSH key available in memory for multiple connections to the same remote server in a session.
OpenSSH is used to remotely access and manage computer systems and servers, and also for other automated machine-to-machine communications. While first designed for OpenBSD, it's also used by default in most Linux distributions today as well as being supported in Windows 10.
The latest update from the OpenSSH developers introduces a new security feature designed to mitigate this problem. It encrypts private keys before storing them into the system memory, which will protect the keys against almost all types of side-channel attacks.
Damien Miller said in the release notes for the update that, "This change encrypts private keys when they are not in use with a symmetric key that is derived from a relatively large 'prekey' consisting of random data (currently 16KB). Attackers must recover the entire prekey with high accuracy before they can attempt to decrypt the shielded private key, but the current generation of attacks have bit error rates that, when applied cumulatively to the entire prekey, make this unlikely. Implementation-wise, keys are encrypted 'shielded' when loaded and then automatically and transparently unshielded when used for signatures or when being saved/serialized."
The team is not looking to make this approach permanent. Indeed, they said that, "Hopefully we can remove this in a few years' time when computer architecture has become less unsafe."
There are limitations to what the developers have come up with. As they state in their patch notes, the technique makes successful side-channel attacks less likely, but not impossible.
The hardware that makes speculative and side-channel attacks possible in the first place will have to change in the future. But, even after that change, there will be legacy computers out there that will remain vulnerable to these kinds of attacks. Anything that can be done to deal with these compromised hardware designs now will have long-lasting effects on the security landscape.
— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.