mirror of
https://github.com/QubesOS/qubes-doc.git
synced 2025-02-05 09:25:19 -05:00
Adapt security warning from qubes-app-linux-input-proxy
https://github.com/QubesOS/qubes-doc/pull/310
This commit is contained in:
parent
2992dc8067
commit
54938518f1
@ -128,21 +128,34 @@ directly to dom0.
|
|||||||
7. Run the command `grub2-mkconfig -o /boot/grub2/grub.cfg` in dom0.
|
7. Run the command `grub2-mkconfig -o /boot/grub2/grub.cfg` in dom0.
|
||||||
8. Reboot.
|
8. Reboot.
|
||||||
|
|
||||||
|
|
||||||
|
Security Warning about USB Input Devices
|
||||||
|
----------------------------------------
|
||||||
|
|
||||||
|
**Important security warning. Please read this section carefully!**
|
||||||
|
|
||||||
|
If you connect USB input devices (keyboard and mouse) to a VM, that VM will effectively have control over your system.
|
||||||
|
Because of this, the benefits of using a USB qube are much smaller than using a fully untrusted USB qube.
|
||||||
|
In addition to having control over your system, such VM can also sniff all the input your enter there (for example, passwords in the case of a USB keyboard).
|
||||||
|
|
||||||
|
There is no simple way to protect against sniffing, but you can make it harder to exploit control over input devices.
|
||||||
|
|
||||||
|
If you have only a USB mouse connected to a USB qube, but the keyboard is connected directly to dom0 (using a PS/2 connector, for example), you simply need to lock the screen when you are away from your computer.
|
||||||
|
You must do this every time you leave your computer unattended, even if there no risk of anyone else having direct physical access to your computer.
|
||||||
|
This is because you are guarding the system not only against anyone with local access, but also against possible actions from a potentially compromised USB qube.
|
||||||
|
|
||||||
|
If your keyboard is also connected to a USB qube, things are much harder.
|
||||||
|
Locking the screen (with a traditional password) does not solve the problem, because the USB qube can simply sniff this password and later easily unlock the screen.
|
||||||
|
One possibility is to set up the screen locker to require an additional step to unlock (i.e., two-factor authentication).
|
||||||
|
One way to achieve this is to use a [YubiKey], or some other hardware token, or even to manually enter a one-time password.
|
||||||
|
|
||||||
How to use a USB keyboard
|
How to use a USB keyboard
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
In order to use a USB keyboard, you must first attach it to a USB qube, then
|
**Caution:** Please carefully read the [Security Warning about USB Input Devices] before proceeding.
|
||||||
give that qube permission to pass keyboard input to dom0. Note that allowing
|
|
||||||
keyboard access from a USB qube gives it great power. In short:
|
|
||||||
|
|
||||||
* It will see whatever you type on that keyboard (including passwords).
|
In order to use a USB keyboard, you must first attach it to a USB qube, then give that qube permission to pass keyboard input to dom0.
|
||||||
* It will be able to inject keystrokes, which basically means that it will be
|
Edit the `qubes.InputKeyboard` policy file in dom0, which is located here:
|
||||||
able to enter any command. For example, if some malware catches your
|
|
||||||
screenlocker password, it will be able to unlock the screen when you are not
|
|
||||||
present. (For more details, see [here][input-proxy].)
|
|
||||||
|
|
||||||
If you are sure you wish to proceed, then you must edit the
|
|
||||||
`qubes.InputKeyboard` policy file in dom0, which is located here:
|
|
||||||
|
|
||||||
/etc/qubes-rpc/policy/qubes.InputKeyboard
|
/etc/qubes-rpc/policy/qubes.InputKeyboard
|
||||||
|
|
||||||
@ -157,19 +170,10 @@ You can now use your USB keyboard.
|
|||||||
How to use a USB mouse
|
How to use a USB mouse
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
In order to use a USB mouse, you must first attach it to a USB qube, then
|
**Caution:** Please carefully read the [Security Warning about USB Input Devices] before proceeding.
|
||||||
give that qube permission to pass mouse input to dom0. Note that allowing
|
|
||||||
mouse access from a USB qube gives it great power. In short:
|
|
||||||
|
|
||||||
* It will be able to change any global and per-domain setting available within GUI
|
In order to use a USB mouse, you must first attach it to a USB qube, then give that qube permission to pass mouse input to dom0.
|
||||||
* It will be able to attach untrusted devices to domains that should not
|
Edit the `qubes.InputMouse` policy file in dom0, which is located here:
|
||||||
have device access
|
|
||||||
* It will be able to enable networking in network-disconnected domains
|
|
||||||
* It will be able to initiate file transfer between domains.
|
|
||||||
(For more details, see [here][input-proxy].)
|
|
||||||
|
|
||||||
If you are sure you wish to proceed, then you must edit the
|
|
||||||
`qubes.InputMouse` policy file in dom0, which is located here:
|
|
||||||
|
|
||||||
/etc/qubes-rpc/policy/qubes.InputMouse
|
/etc/qubes-rpc/policy/qubes.InputMouse
|
||||||
|
|
||||||
@ -362,7 +366,8 @@ This feature is not yet available in Qubes Manager however, if you would like to
|
|||||||
[AEM]: /doc/anti-evil-maid/
|
[AEM]: /doc/anti-evil-maid/
|
||||||
[1618]: https://github.com/QubesOS/qubes-issues/issues/1618
|
[1618]: https://github.com/QubesOS/qubes-issues/issues/1618
|
||||||
[create a USB qube]: #creating-and-using-a-usb-qube
|
[create a USB qube]: #creating-and-using-a-usb-qube
|
||||||
[input-proxy]: https://github.com/qubesos/qubes-app-linux-input-proxy
|
|
||||||
[usb-challenges]: http://blog.invisiblethings.org/2011/05/31/usb-security-challenges.html
|
[usb-challenges]: http://blog.invisiblethings.org/2011/05/31/usb-security-challenges.html
|
||||||
[project-page]: https://www.qubes-os.org/gsoc/
|
[project-page]: /gsoc/
|
||||||
[gsoc-page]: https://summerofcode.withgoogle.com/organizations/6239659689508864/
|
[gsoc-page]: https://summerofcode.withgoogle.com/organizations/6239659689508864/
|
||||||
|
[YubiKey]: /doc/YubiKey/
|
||||||
|
[Security Warning about USB Input Devices]: #security-warning-about-usb-input-devices
|
||||||
|
Loading…
x
Reference in New Issue
Block a user