> From: tech-boun...@lists.lopsa.org [mailto:tech-boun...@lists.lopsa.org] > On Behalf Of David Lang > > Full disk encryption of local drives on the servers would theoretically give > you > similar protection, except that people are very reluctant to have servers that > cannot boot up without human intervention, and for most servers, it's easier > to > steal (or dispose of) the entire server, and the drives have everything on
I've given a few talks on this subject, and it's always fun - but your comment about human intervention suggests I haven't given that talk to you. ;-) There are many ways to implement non-interactive whole disk encryption, but the one I talk about is bitlocker. It goes like this: Years ago, when I was working at an IT consulting gig for a semiconductor company, the CEO of the company asked me to lockdown the development environment. Disable CD burning, restrict access to the internet, funnel everything through a proxy, log it all, fill the USB ports with hot glue. Seriously, fill the usb ports with glue. And put locks on the chassis so users can't easily open them up to access non-USB ports. Etc. The problem has always been physical security. If somebody steals your laptop and takes out the hard drive, then they get to bypass all the security you might have enabled in your OS. But if you similarly take your laptop and fill the *whole chassis* with hot glue, then you sort-of eliminate the problem. Not really, cuz of course, people can use cutting tools to extract the HD from the glue, etc. But it becomes more difficult to implement this type of attack vector. Enter the concept of the TPM. The TPM is basically a teeny tiny computer, sitting on your motherboard, which is its own separate, entirely isolated and filled with concrete little computer. It has its own cpu, memory, and nonvolatile storage. The only way to interact with it is via a bus on your motherboard. The TPM is all contained within a single chip. Virtually all systems nowadays have them. (Not apple). Your OS tells the TPM, "I have a secret key I want you to store, and don't release it to anybody except me." The TPM takes your fingerprint, in the form of some black magic - A checksum of your bios, which device you boot from, all the non-encrypted blocks at the beginning of the hard drive, and some of the encrypted blocks. So if the hard drive is moved to a different computer, of course, the new TPM doesn't know the key. So that attack vector fails. If you boot from a different device in the right computer, then the fingerprint checksum fails, and the key is not released. If you hack the BIOS, or hack the OS, or basically do anything to modify the boot process, then the system fingerprint fails, and the TPM won't release the key. The end result is: Now you can trust your security as much as you trust your OS. If you have a hardened OS with strong password policy, etc, suddenly those features *matter* even when the system is physically in a hostile environment. You get to boot your system without human interaction. Strong keys, strong encryption all around. It's a very good solution. The most obvious drawback: What happens if your motherboard dies and you get the motherboard replaced? Well, your system won't boot. So whenever the TPM fails to release the proper key, the OS handles it by prompting you to type in a key. This is a 40-digit long random string of digits. I didn't mention before, that part of the process to enable bitlocker includes saving a copy of the decryption key somewhere. You have a few choices - the best one in any sort of scale environment is to store all the bitlocker keys in AD automatically so the helpdesk folks can take support calls from users with locked laptops and read the key to them over the phone. You have to be careful about applying BIOS updates. Because that will invalidate the checksum and lock the system. You need to know, before applying the bios update, you go into control panel and toggle bitlocker off (temporarily disabled, by storing the key in plaintext on disk). Then apply bios update, and after successful reboot, re-enable bitlocker. (Which re-keys so you don't have to worry about the previously unencrypted one being compromised by reading free blocks of the unencrypted disk.) But of course, *during* the period of time when you have bitlocker disabled, you're vulnerable. The whole idea is, that should be a matter of minutes, during which, you personally keep the system physically secure. I've been, step by step, very impressed with the implementation of bitlocker. Even when you disable and re-enable bitlocker, requiring re-keying... They don't actually store the *key* on disk. They just store a key that can be used to decrypt the real key. So when you re-key, it's a near-instantaneous operation. They select a new key1, re-encrypt key2 using the new key1, so even if somebody were to later discover the plaintext key that was formerly written on disk, it would be irrelevant. Because the ciphertext that the key was able to unlock no longer exists. There's only a new ciphertext, and a new key, which was never written to disk. And in fact, your TPM doesn't know your key either. The TPM only knows the key that can be used to unlock the real key. So once again, re-keying your TPM is near instant. Doesn't require re-encrypting the whole disk. Just a tiny block. _______________________________________________ Tech mailing list Tech@lists.lopsa.org https://lists.lopsa.org/cgi-bin/mailman/listinfo/tech This list provided by the League of Professional System Administrators http://lopsa.org/