Open no-usernames-left opened 9 months ago
Actual behavior
Sadness
Indeed :(
But for this, we need https://github.com/USBGuard/usbguard/issues/67 implemented first.
I wouldn't want an infected keyboard to be able to give dom0 usb access to other devices included within the keyboard as if it were a usb-hub with dom0 access. I might be too much of a noob to understand why this^ isn't an issue but I still wanted to mention why it made my raise my eyebrow.
I wouldn't want an infected keyboard to be able
If your USB keyboard is malicious (and you allowed USB keyboard), you are in pretty bad situation already. See https://www.qubes-os.org/doc/device-handling-security/#security-warning-on-usb-input-devices
But still, we'd like to not make attacker life easier. If you choose to allow keyboard, lets allow just "keyboard", not "keyboard and everything else provided by the same physical device". But for that, we need interface-level control in usbguard, which is not implemented yet.
For now users can adjust the dom0 usbguard policy to allow their specific device and re-create initramfs afterwards.
How's that achieved? It doesn't seem to be anywhere in the documentation.
On 2/4/24 11:07, no-usernames-left wrote:
How's that achieved? It doesn't seem to be anywhere in the documentation.
Use the standard usbguard rules folder at /etc/usbguard/rules.d/ and check the dracut manpage on how to regenerate your initramfs.
After I first rebooted my computer after installing Qubes 4.2.2 I ran into this bug. I use a Moonlander keyboard.
I had to remove the usbcore.authorized_default=0 from my Grub config in order to have a bootable system, which I then had to update the grub config via dom0 so that it would be fixed moving forward.
Qubes OS release
R4.2.0
Brief summary
The presence of
usbcore.authorized_default=0
inGRUB_CMDLINE_LINUX
seems to prevent multifunction keyboards, such as ones with a smart card slot, from being able to enter the LUKS passphrase at boot.Steps to reproduce
sudo qubesctl state.sls qvm.usb-keyboard
usbcore.authorized_default=0
is present inGRUB_CMDLINE_LINUX
, which it should beExpected behavior
Be able to type your LUKS passphrase
Actual behavior
Sadness
Relevant output of
lsusb -v