Only the relevant sections included below: ----- Original Message ----- From: "Bruce Schneier" To: Sent: Sunday, June 15, 2003 6:15 AM Subject: CRYPTO-GRAM, June 15, 2003 CRYPTO-GRAM June 15, 2003 by Bruce Schneier Founder and CTO Counterpane Internet Security, Inc. schneier@counterpane.com A free monthly newsletter providing summaries, analyses, insights, and commentaries on computer security and cryptography. Back issues are available at . To subscribe, visit or send a blank message to crypto-gram-subscribe@chaparraltree.com. Copyright (c) 2003 by Counterpane Internet Security, Inc. ** *** ***** ******* *********** ************* Attacking Virtual Machines with Memory Errors This is a clever side-channel attack. An attacker can use memory errors to attack a virtual machine. Here's how it works: First, he loads two Java applets into the target system's memory. The first applet is large, and consists only of pointers to the second applet. The second applet is the attack code, and can do whatever the attacker wants. The trick is to cause a random memory error occur. The researchers used a light bulb to heat the target system, but you can imagine the same sort of result from a microwave oven, static electricity, or a host of other environmental factors. It turns out that a random error is likely to cause the system to run the attack code. If, for example, the first applet fills up 60% of the target system's memory, then a random error (a bit flip) will cause the execution to pass to the pointer and then to the attack code more than 70% of the time. The attacker needs physical access to the machine being attacked, so its main uses are in breaking smart cards and other devices that attempt to remain secure against the person in possession of it. There are lots of such devices that allow the owner to run any program on it he wants, and maintains security by internal separation of programs. This attack demonstrates that internal separation isn't as good as people might think. Now that the attack is known, it can easily be prevented. Simple measures like parity checking or error-correcting codes can defeat this technique. But you can be sure there are other attacks like this. In general, there is no way to secure secrets inside a device from someone who has physical possession of the device. News article: Paper: ** *** ***** ******* *********** ************* CRYPTO-GRAM is a free monthly newsletter providing summaries, analyses, insights, and commentaries on computer security and cryptography. Back issues are available on . To subscribe, visit or send a blank message to crypto-gram-subscribe@chaparraltree.com. To unsubscribe, visit . Please feel free to forward CRYPTO-GRAM to colleagues and friends who will find it valuable. Permission is granted to reprint CRYPTO-GRAM, as long as it is reprinted in its entirety. CRYPTO-GRAM is written by Bruce Schneier. Schneier is founder and CTO of Counterpane Internet Security Inc., the author of "Secrets and Lies" and "Applied Cryptography," and an inventor of the Blowfish, Twofish, and Yarrow algorithms. He is a member of the Advisory Board of the Electronic Privacy Information Center (EPIC). He is a frequent writer and lecturer on computer security and cryptography. Counterpane Internet Security, Inc. is the world leader in Managed Security Monitoring. Counterpane's expert security analysts protect networks for Fortune 1000 companies world-wide. Copyright (c) 2003 by Counterpane Internet Security, Inc.