Take the 2-minute tour ×
Information Security Stack Exchange is a question and answer site for Information security professionals. It's 100% free, no registration required.

VMWare Fusion 5 has an encryption feature that I have enabled, with what I would consider a hard-to-brute-force-crack password.

How secure is the data in this VM? If I shut down the VM each time (instead of just pausing, perhaps), will this protect the data on the host machine's physical hard drive?

Sort of a follow up -- I would like to establish a "base" snapshot, and then work, work, work, produce deliverable, and then revert to the base snapshot. It seems all the data for the snapshots are stored in delta files, which I would guess are encrypted as well. Would this snapshot-revert process protect the data in that delta after it has been reverted (deleted)?

share|improve this question
add comment

1 Answer

I find very little detail on what kind of encryption they use; at best, I find on this page that VMWare Fusion 4:

[...] incorporates advanced encryption standard (AES 128-bit) technology to allow you to encrypt virtual machine data, such as the virtual machine state including both the disks and memory, as well as the information for the virtual machine configuration.

So, presumably, the encryption covers everything that goes to the host disk, including the contents of the guest RAM in "pause" state. "AES 128-bit" means that it is possible that the encryption is properly applied. But this is not a guarantee. There is nothing on how the password is converted to a key (a common source of weaknesses).

It can be hazarded that the encryption method does not include an integrity check -- because checking a global MAC upon booting or recomputing it when shutting down the VM would entail reading the whole virtual hard disk, which would take a non-negligible amount of time. I don't believe in partial MAC either because that would wreck page alignment, and chaining the MAC together is a difficult subject. Therefore, I deem it probable that the encryption is "just" encryption, and does not detect malicious alterations.

A consequence is that the confidentiality obtained through encryption is probably not robust against attackers who can have some degree of control on the data inside the VM (e.g. people with guest accounts inside the VM). Mutatis mutandi, the same kind of vulnerability plagued the hard disk encryption of PlayStation 3 in earlier versions (encryption of a disk sector was deterministic and did not depend on the sector location, so you could swap around the sectors from a basic PC to bring target sector into locations which were nominally a user file). It is possible that the VMWare people did a better job, because it can be done, but the lack of information makes it difficult to confirm or infirm.

Due to the unavailability of details, I suggest that you rely on solutions where what happens is more obvious, namely putting your VM on an encrypting volume (e.g. with TrueCrypt, which has much better documentation).

share|improve this answer
    
It doesn't seem they have much documented. I have asked them on twitter (twitter.com/kenny/status/253564825744052224), so we'll see what they say, if anything. I'm not worried about whoever getting access to the internal system particularly. It would only ever be running when I'm physically present, and I consider myself to be enough security in that regard :) Getting the deliverable out securely is easy enough, but I'd like to erase those 'work, work, work' steps with confidence. –  kenny Oct 3 '12 at 18:57
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.