this post was submitted on 27 Aug 2024
67 points (97.2% liked)

Linux

48187 readers
1500 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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I've made the effort to secure mine and am aware of how the trusted protection module works with keys, Fedora's Anaconda system, the shim, etc. I've seen where some here have mentioned they do not care or enable secure boot. Out of open minded curiosity for questioning my biases, I would like to know if there is anything I've overlooked or never heard of. Are you hashing and reflashing with a CH341/Rπ/etc, or is there some other strategy like super serious network isolation?

all 35 comments
sorted by: hot top controversial new old
[–] [email protected] 31 points 2 months ago

I consider bootloader attacks a very low-probability threat, and quite honestly I don't trust the average board vendor to produce anything that's actually secure anyway. If I were in the habit of carrying a laptop back and forth across international borders I might feel differently, but for a desktop stuck in a room in Canada that hardly anyone enters when I'm not present, Secure Boot is a major hassle in return for a small security gain. So I just don't bother.

[–] Ltcpanic 15 points 2 months ago
[–] [email protected] 13 points 2 months ago (1 children)

I have my home folder encrypted and I enter my password on boot. I'm not really sure what benefits Secure Boot has in environments where you have to enter your password anyway. And in environments where you don't have to enter your password, someone could just steal your system anyway and boot it to get your data.

[–] [email protected] 47 points 2 months ago (1 children)

Secureboot is meant to help protect you against the evil maid attack. IE someone with physical access to your computer can compromise your boot loader with a keylogger that can capture your encryption password so that when they return they can gain access to your computer as they now know your password. Though the vast majority of people just don't need to worry about that level of attack so I have never really bothered with secureboot.

[–] [email protected] 35 points 2 months ago (3 children)

The thing is... If someone has access to your system enough to replace your bootloader, they could probably just slip a USB keylogger between your keyboard and computer. Or set up a small hidden camera. Or plug all your devices into a raspberry pi to spoof the login screen.

It strikes me as odd that people assume that an attacker with a few hours physical access is going to bother going down the "change the bootloader" route when there are other, easier routes available.

Ironically, the only practical use case I can see for Secure Boot is when you have a dual boot setup where you don't trust one of the OSes. Which I'm betting wasn't Microsoft's intention at all.

[–] [email protected] 27 points 2 months ago* (last edited 2 months ago) (2 children)

Just because they can do X doesn't mean you shouldn't protect against Y.

Just as an example scenario, say border guards took my laptop out of my eyesight. A camera or USB keylogger won't do anything in that case. Hijacking my bootloader though potentially gives them access to my machine without me having any clue.

Secure Boot is useful and worth setting up. But everyone has to decide their own level of comfort when it comes to security.

[–] [email protected] 7 points 2 months ago

You need to correctly set it up tho. ie. remove all default keys because some were discovered ages ago anyway.

[–] [email protected] 5 points 2 months ago

They could open up the laptop to insert a small device that reads the usb header. Or just replace the guts of the laptop with something else. Or replace one of the usb leads in your bag with one with a tracker. Or sell a usb-c cable with a tracker for cheap in the gift shop.

There's a bunch of other ways to compromise your system and some might be easier than putting a backdoored bootloader on your device.

Also, if it's the TSA, they could almost certainly create a bootloader that was signed by Microsoft to replace any existing one.

[–] [email protected] 3 points 2 months ago

Basically xkcd 538 as always.

[–] [email protected] 1 points 2 months ago (1 children)

No point in putting locks on your house, because an attacker can just drive their car through your front door.

The attacks you mention have their own ways of being detected: usually eyeballs. But eyeballs can't help you against something hiding in your bootloader. So Secure Boot was made.

And I don't really follow your dual boot claim. If you don't trust one of the OSes, and you boot it up on your hw, you're already hosed. At that point it can backdoor your bootloader and compromise your other OS. Secure Boot prevents malicious OSes from being booted, it can't help you if you willingly boot a malicious OS.

[–] [email protected] 3 points 2 months ago (1 children)

Okay, so my original post I think I was thinking of TPM rather than Secure Boot. TPM would protect against a hostile OS, I think. I think most of my greviences mentioned above are to do with TPM rather than Secure Boot. But they still apply to either.

There are ways to put keyloggers in devices stealthily to where they're not perceptible to a normal person. For example, they could replace one of the USB leads in your bag with one that transmits keystrokes over bluetooth. If you're at home, a maid could just plug a keylogger behind your desktop because most people don't check behind their system when they boot it.

It all feels like a wierd threat model to me. You can either assume that physical access is or isn't covered by it. If you are worried about physical access (beyond your device being stolen), there is a lot more you need to do to secure it. "It's better than nothing" isn't really that convincing to me with regards security models; either you're protected or you aren't.

[–] [email protected] 1 points 2 months ago

I'm actually not sure what TPM can guard against, but I think you're right, I think if a malicious OS borked with the bootloader, TPM would catch it and complain before you decrypt the other OS.

Yeah, physical access usually means all bets are off, but you still lock your doors even though a hammer through a window easily circumvents it. Because you don't know what the attacker is willing to do/capable of. If you only ever check for physical devices, you'll miss the attack in software, similarly if you only rely on Secure Boot you'll miss any hardware based attacks. It's there as a tool to plug one attack vector.

Also, my guess is the most common thing this protects against are stupid employees plugging a USB they found in the parking lot into their PC. If they do it while the OS is running, IT can have a policy that blocks it from taking action. But if they leave it there during a reboot, IT is otherwise helpless.

[–] [email protected] 12 points 2 months ago* (last edited 2 months ago)

You can use measured boot as part of the firmware boot process, store a hash of the known good boot files on a trusted media and compare that.

This is done with the Heads payload in Coreboot. But support is like only Thinkpads and now also soon Novacustom, Nitrokey and maybe System76 laptops.

The thing is, then you know your kernel is safe, but what about the rest? Depending on the attack vector, a system like on Android with full immutability and a recovery that verified the whole OS root partition would be safer.

But this means that you have no ability to customize, without breaking things.

[–] [email protected] 11 points 2 months ago (1 children)

Keep EFI bootloader off the computer (n+1 copies on a flash drive). Make /boot partition fully encrypted.

Don't trust Secure Boot.

If you can, try the coreboot.

[–] [email protected] 9 points 2 months ago* (last edited 2 months ago)

Don't trust Secure Boot.

That's the second best thing as long as you don't worry about nation state actors (you're fucked by then anyway). Only requirement is a board/laptop manufacturer with a proper uefi setup (eg ability to set your own keys, not using those "do not use" test keys, etc) - that usually comes with business machines.

[–] [email protected] 6 points 2 months ago

Now I'm not very smart, but I see no purpose of it, so I just turn it off so it doesn't fuck with my ability to boot.

[–] [email protected] 4 points 2 months ago (1 children)

Just use disk encryption and be done

[–] [email protected] 7 points 2 months ago

Disk encryption doesn't protect against what Secure Boot does. They are very different, often complimentary, systems.

[–] [email protected] 3 points 2 months ago

Mandatory read on the subject for the curious (also goes over Secure Boot, Boot Guard etc):

Trusted Boot (Anti-Evil-Maid, Heads, and PureBoot)

[–] [email protected] -2 points 2 months ago (2 children)

You have to turn off Secure Boot to enable hibernation, and I value hibernation enough to do so.

[–] 69420 15 points 2 months ago (2 children)

This is patently false. Secure boot and hibernation are not mutually exclusive.

[–] [email protected] 4 points 2 months ago (1 children)

Not mutually exclusive, but it's highly probable that if you're running a mainstream distro, the default kernel is in lockdown mode, preventing hibernation while secure boot is enabled.

[–] [email protected] 4 points 2 months ago (1 children)

While I believe you, I haven't been able to enable hibernation with it on.

[–] [email protected] 7 points 2 months ago* (last edited 2 months ago) (1 children)

It's a kernel build config. Debian for one ships with support disabled due to security concerns.

[–] [email protected] 6 points 2 months ago (1 children)

So I'd have to rebuild the kernel, not just provide a kernel argument? That's definitely not a step I'm ready for.

[–] [email protected] 4 points 2 months ago
[–] [email protected] 10 points 2 months ago (1 children)

I believe if your swap partition is on an encrypted LVM, you can still hibernate with kernel lockdown enabled.

[–] [email protected] 2 points 2 months ago

This is my setup on debian. Works without any issues.