this post was submitted on 27 Nov 2024
156 points (97.0% liked)
Linux
48732 readers
970 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I'm not the most up to speed on TPM's, but does it have the capability to directly do network access in order to pull the key? Otherwise, you're going to need the regular OS to get it to the TPM somehow, in which case that's the weak link to pull the key instead of ripping it from the TPM itself.
And once they have the key once, how do you enforce them having to re-request it? Is there a reason that that point they couldn't just unplug from the Internet (if even necessary) and copy the entirety of that drive/partition somewhere else?
No, that's why signed kernel+initramfs+LUKS+dm-verity: protect the boot process all the way into userspace where you do have network access. From there you can request the TPM signs messages with a preloaded key it will only allow using it if you went through the whole secure boot process. It's exactly what Android does with Play Integrity and the strong integrity flag.
That way you can prove to the server that the computer is still secured and untampered with up to that point, which means the script that deals with the periodic checkin should be running untampered as well. If you've secured down the Linux install appropriately, it should be impossible for the user to gain enough privileges to request the key again from the TPM or extract the data key out of the mounted filesystem. That also means you can trust the system to block mounting any drives, force VPN on, make sure your MDM runs, all that stuff.
You can reset the BIOS, boot from USB, all that stuff still, but then it would also wipe the TPM and so the OS no longer bootable, and obviously no signed TPM messages either so even if you find the script and how it works, at that point you don't have the ability to sign the messages so the server won't give you the data partition's key either. The moment you tamper with it, it breaks the trust chain and the keys are gone. Can't flip a single bit on the system and boot partitions without the checks failing.
It's not bulletproof, some laptops you can sniff the TPM bus in minutes due to design flaws, but in theory as long as the hardware holds it's pretty secure. And obviously you can always just take a picture of the screen, no avoiding that. But it puts enough hurdles it'll stop most opportunistic exfiltration. One bad move and you wipe the keys, so you better know exactly what you're dealing with or you have one embarassing and incriminating email to write to IT to have them reprovision the keys.
Ah, gotcha, I was thinking more in terms of software attacks than hardware, and that some vulnerability would come up at some point for them to get root access, at which point I think they'd be able to get the key one way or another. I'd imagine it also depends on how locked down the system can be based on the nature of their duties; arbitrary internet access makes shipping it off somewhere a bit easier. Another consideration would be that the drive could also be imaged, and if the key were ever recovered at a later date through whatever method/mistake/etc. the entirety of the data could be recovered.
But, yeah, definitely agree that that's all moving well outside the bounds of disgruntled/opportunistic employee and more into the persistent adversary realm.