Re: About CVE-2016-4484: - Cryptsetup Initrd root Shell

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Am 15.11.2016 um 20:19 schrieb Robert Nichols:
On 11/15/2016 12:40 PM, Sven Eschenberg wrote:


Am 15.11.2016 um 16:18 schrieb Robert Nichols:
On 11/15/2016 07:32 AM, Sven Eschenberg wrote:
Obviously it is not a bug in cryptsetup, but rather in dracut and some
distributions initrd scripts. What's really annoying about the CVE is
the fact, that it is mostly irrelevant. If I can get to the password
entry of an initrd, I obviously have control over the boot process.
If I
do have control over the boot process I have a splendid variety of
options to do all the things described in the CVE.

I wonder why the authors of the CVE recommend to freeze the system,
instead of adding auth to get a shell. Seems quite stupid to completely
remove the ability to investigate problems.

The boot process can be configured to deny that control (BIOS configured
to boot from the internal drive only, GRUB set up to require a password
for all except the default selection).

Interesting, haven't seen any such firmware so far for PC. A firmware
that indeed can disable the bootmenu etc. whilst not requiring a
password during boot would be the one exception of course.
Most firmwares will actually happily boot the configured port, even when
the device is switched over, with one exception: Secure Boot with a
uniquely signed bootloader and a unique key installed in the firmware.
(Requires a non vendor key).

The machines I have all either (a) if a BIOS administrator password is
set, requires that password in order to enter the boot menu, or (b)
allow all alternative devices to be excluded as boot device candidates.
Either way, you need the BIOS administrator password to get to an
alternative boot device.


Surprisingly this seems to be the case for the machine I just tested. I'd assume an extra option+PW for the boot menu however, since it is not a direct access to the setup nor a persistent change. So, yes, admitted, with an admin PW one can get all the way to the initram without entering an extra password. I wonder however how securely that password is stored?

On a Red Hat system with an encrypted root filesystem, I get 5 attempts
to enter the encryption password. Then the system locks up, and the only
options are to (a) press <ESC> to dismiss the graphical boot screen and
see a "wrong password" message, and/or (b) press CTRL-ALT-DEL to reboot.


I'm still considering this a stupid approach, I prefer a sulogin with
auth approach and happily live with it.

sulogin is going to be hard to do if the root filesystem (where
/etc/shadow resides) has not been decrypted. You would have to have some
alternative password mechanism, and you can already accomplish that in
GRUB with password-protected alternatives.


No, the root filesystem is the initram (initrd) until rootfs is switched over - all you have to do is adding a passwd(file) with an entry to it. You won't need shadow anyway, since the only login supported is a root login, which implies full access to shadow (usually). Of course you would probably not want to just grep the root line from the system, but generate a single line passwd(file) with an entry for root with some seperate password. If you trust on the cryptographic strength of the hashing and salting in the passwd/shadow files, you could include them aswell and support user and root logins with sulogin (during initrd). Using shadow in this particular case makes sense again.

-Sven

_______________________________________________
dm-crypt mailing list
dm-crypt@xxxxxxxx
http://www.saout.de/mailman/listinfo/dm-crypt



[Index of Archives]     [Device Mapper Devel]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux