subscribe: Posts | Comments

FileVault Vulnerability and How to Protect Yourself

0 comments

Recently, we posted a video screencast tutorial on configuring FileVault whole-disk encryption on your Mac. In that post, we commented that there were some known vulnerabilities, but that most users didn’t need to worry about them. Our comment from back in mid-January is below:

We are still working on researching a post about theoretical attacks against FileVault. The obvious one is weak passwords– a weak password will make your content easier to compromise since your password (rather than the encryption itself) would be more vulnerable to a traditional “brute force” attack.

However, the circumstances I was referring to was the attack vector mentioned here:
http://www.frameloss.org/wp-content/uploads/2011/09/Lion-Memory-Acquisition.pdf

This makes it theoretically possible to acquire the FileVault encryption key from memory if the system is in sleep mode via a firewire-based attack. If your computer is shut down or in hibernate mode (rather than sleep mode) it should not be vulnerable to this attack.

Bottom line, make sure you have a strong password, and stay tuned for more information on preventing the firewire memory acquisition attack, which is highly theoretical (and extremely unlikely to be exploited in the real world.)

Well, theory has become practice, albeit in a very constrained way. A forensic software company called Passware has announced that the latest version of their Passware Kit Forensic (version 11.4, cost: US$995) can extract the keys to FileVault 2 in an average of 40 minutes regardless of the length and complexity of the passwords. This is a bit of hyperbole, however, as the conditions under which the password can be recovered are highly constrained, and it turns out, easily remedied.

In order to be effective, the Passware software requires that ALL of the following conditions be met:

  1. The device must have a Thunderbolt port (most new Macs have this port, but if you purchased your Mac before 2011 you don’t) or a FireWire port. The attack does not work over USB.
  2. The device must be powered on and logged in (though it may be in “sleep” mode and/or locked.)
  3. The attacker must have physical access not only to your drive, but the running computer itself.
Bottom line, the FileVault keys must be in memory for Passware Kit Forensic to extract them. Passware is not able to acquire the encryption keys on static data, and it cannot acquire the keys before they’ve been requested as part of the log-in process.

Protecting Your Mac from Passware

How can you protect yourself? It’s quite easy– you can make one or more of the above conditions false, which will mean Passware (and any software using a similar attack vector) will be unable to acquire the encryption keys necessary to decrypt your drive’s content…

To disable automatic login on your Mac, simply go to System Preferences > Users & Groups > Login Options and make sure that “Off” is selected from the drop-down.

Then, to ensure that your encryption keys are not in memory, simply turn off your laptop when not in use (especially before traveling) and you will not have to worry about Passware being able to decrypt your FileVault protected hard drive.

It’s important to remember that Passware’s process (and any attack based on this vulnerability) cannot be pulled off via any form of remote access– it requires physical access to a machine that has been logged in. Additionally, older MacBook Airs and White MacBooks that only have USB ports are safe from this method. (USB, unlike FireWire and Thunderbolt, does not share memory or CPU with the main system.)

So, in other words, even though this has been exploited in the wild now, it’s nothing to worry about as long as you disable auto-login and shut down your computer when not in use. Again, computers in “sleep” mode are vulnerable, so make sure you shut down the machine before traveling if you are concerned about having your system inspected.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>