Has anyone seen this: When Good Randomness Goes Bad: Virtual Machine Reset Vulnerabilities and Hedging Deployed Cryptography?
http://www.isoc.org/isoc/conferences/ndss/10/pdf/15.pdfRandom number generators (RNGs) are consistently a weak link in the secure use of cryptography. Routine cryptographic operations such as encryption and signing can fail spectacularly given predictable or repeated randomness, even when using good long-lived key material. This has proved problematic in prior settings when RNG implementation bugs, poor design, or low-entropy sources have resulted in predictable randomness. We investigate a new way in which RNGs fail due to reuse of virtual machine (VM) snapshots. We exhibit such VM reset vulnerabilities in widely-used TLS clients and servers: the attacker takes advantage of (or forces) snapshot replay to compromise sessions or even expose a server’s DSA signing key. Our next contribution is a backwards-compatible framework for hedging routine cryptographic operations against bad randomness, thereby mitigating the damage due to randomness failures. We apply our framework to the OpenSSL library and experimentally confirm that it has little overhead.
I imagine some of the larger websites run in VMs and people might be running their wallet in a VM as well.
"The attacks work because the VM resets lead to cryptographic
operations (here, key exchange and signing) using
the same randomness more than once. These cryptographic
operations, in turn, fail to provide any security given repeat
randomness. One conceptually simple solution, then,
is to ensure that applications sample sufficiently fresh randomness
immediately before use. Unfortunately, there are
lurking complexities to overcome. Besides the difficulty of
ensuring every RNG-using application is updated, there is
the more subtle problem of where to find good randomness
after VM resets. For example, the state of traditional RNGs
(e.g., Linux’s /dev/random) is also reset with the rest of the
guest. We provide more discussion of systems solutions in
the body, but leave the bulk of this task to future work."