!ZRgXNaHrdpGqwUnGnj:nixos.org

NixOS Security Triage

690 Members
Coordination and triage of security issues in nixpkgs216 Servers

Load older messages


SenderMessageTime
5 Jul 2024
@septem9er:fairydust.spaceSeptem9er
In reply to @emilazy:matrix.org
https://github.com/NixOS/calamares-nixos-extensions/pull/25 says "#21 broke encrypted swap by mishandling the removal of crypto_keyfile.bin. This reverts the original fix. Instead, we leave BIOS the same; that was secure as it was before", I guess this was just a misunderstanding of the vuln? :/

Thanks, I didn't look at the pull request yet.

They also write:

NOTE: This is likely not a completely sufficient solution for users who choose manual partitioning. Mainly, if they create an unencrypted root partition with BIOS boot, it will still insecurely use crypto_keyfile.bin for other partitions that are encrypted.

Since they are specifically writing about unencrypted root partitions only, it seems like they thought it wouldn't be an issue for an encrypted root partiton?

Anyway, I guess this was a misunderstanding about the vulnerability. BIOS setups were definitly affected, the GHSA did specifically say it affects "non-UEFI systems".

11:57:52
@emilazy:matrix.orgemily
In reply to @raitobezarius:matrix.org
but BIOS GRUB users are protected by cryptodisk

the advisory says

Users who installed NixOS through the graphical calamares installer, with an unencrypted /boot, on either:

  • non-UEFI systems
11:58:16
@emilazy:matrix.orgemily I guess the key there is "unencrypted /boot"? 11:58:22
@septem9er:fairydust.spaceSeptem9er
In reply to @raitobezarius:matrix.org
but BIOS GRUB users are protected by cryptodisk
Could you elaborate on that?
11:58:27
@emilazy:matrix.orgemily UEFI ~always has unencrypted /boot, but on BIOS the happy path is for it to be encrypted? 11:58:36
@raitobezarius:matrix.orgraitobezariusok the key is indeed forcing to create an unencrypted /boot11:58:40
@raitobezarius:matrix.orgraitobezariusthis should be an invalid configuration11:58:51
@raitobezarius:matrix.orgraitobezariuswithout manual partitioning, you cannot reach that state, right?11:59:08
@raitobezarius:matrix.orgraitobezariusso not sure if it's vuln or (big big) footgun11:59:22
@emilazy:matrix.orgemilythe manual partitioning caveats are pretty scary if users have managed to independently construct an insecure configuration in the wild :(11:59:41
@raitobezarius:matrix.orgraitobezarius
In reply to @septem9er:fairydust.space
Could you elaborate on that?
well /boot is a cryptodisk in that situation so the keys over there are still as protected as before
11:59:49
@raitobezarius:matrix.orgraitobezariusoriginal reporter says12:00:27
@raitobezarius:matrix.orgraitobezarius

I have a similar setup with an unencrypted /boot and an encrypted /. When I start the OS it just boots all the way to user login not requiring my decryption password at any time.

12:00:28
@raitobezarius:matrix.orgraitobezariusbut makes no mention of BIOs or UEFI12:00:37
@raitobezarius:matrix.orgraitobezarius * but makes no mention of BIOS or UEFI12:00:41
@septem9er:fairydust.spaceSeptem9er
In reply to @raitobezarius:matrix.org
well /boot is a cryptodisk in that situation so the keys over there are still as protected as before
Yeah. The key is an unencryped boot partition, like it was already said.
12:00:48
@raitobezarius:matrix.orgraitobezarius
In reply to @septem9er:fairydust.space
Yeah. The key is an unencryped boot partition, like it was already said.
yeah but let's distinguish two things
12:01:04
@raitobezarius:matrix.orgraitobezarius(a) the installer creates an unencrypted /boot with an encrypted / by itself12:01:15
@raitobezarius:matrix.orgraitobezarius(b) the user forcibly creates an unencrypted /boot with an encrypted / via manual partitioning12:01:25
@raitobezarius:matrix.orgraitobezariusif we don't have (a), but we have (b)12:01:31
@raitobezarius:matrix.orgraitobezarius i'm not exactly sure we can call it a vuln, it's a footgun and we should assert not to do that or warn 12:01:46
@raitobezarius:matrix.orgraitobezariusbut you can do (b) all the time with any tooling12:01:59
@emilazy:matrix.orgemilyI think it probably makes sense to err on the side of issuing an advisory if people have managed to attempt to set up an encrypted setup and been surprised to find out that it's not?12:02:14
@raitobezarius:matrix.orgraitobezariuswhat i understand Septem9er, is that, you proved (b)12:02:19
@raitobezarius:matrix.orgraitobezariusi think it's premature to think of filing an advisory without proving (a) at least once12:02:47
@raitobezarius:matrix.orgraitobezariusvia static analysis or some recipe to reproduce12:02:53
@raitobezarius:matrix.orgraitobezariusas soon as (a) is proved, yes, an advisory must be filled12:03:04
@septem9er:fairydust.spaceSeptem9er
In reply to @raitobezarius:matrix.org
(b) the user forcibly creates an unencrypted /boot with an encrypted / via manual partitioning
Yeah sure, it's less of an issue if it only applies to manual partitioning. However, the installer should not place secrets in the boot partition in this case. That is an issue.
12:03:23
@raitobezarius:matrix.orgraitobezariusthat's inherent to how this graphical installer works12:03:46
@raitobezarius:matrix.orgraitobezariuswhat is missing is an warning or an assertion12:04:17

Show newer messages


Back to Room ListRoom Version: 6