BadUSB и как от него защищаться
BadUSB — это устройство, которое представляется системе клавиатурой (HID) и «печатает» заранее записанные команды. Антивирус тут почти бесполезен: с точки зрения ОС ничего подозрительного нет, просто очень быстрый пользователь.
Почему это работает
Операционные системы доверяют клавиатурам по умолчанию: драйвер HID есть везде, подтверждения не требуется. Сделать такое устройство можно на любом недорогом микроконтроллере с поддержкой USB, например на Raspberry Pi Pico.
Защита: USBGuard
USBGuard работает по принципу белого списка: разрешает только те устройства, которые уже были подключены при настройке.
sudo apt install usbguard
sudo usbguard generate-policy | sudo tee /etc/usbguard/rules.conf
sudo systemctl enable --now usbguard
В /etc/usbguard/usbguard-daemon.conf стоит проверить параметр ImplicitPolicyTarget=block: всё, чего нет в правилах, блокируется. Новое устройство можно посмотреть и разрешить вручную:
usbguard list-devices --blocked
sudo usbguard allow-device <id>
Что ещё помогает
- блокировка экрана при уходе от компьютера: атаке нужен разблокированный сеанс;
- физический контроль портов в общих помещениях;
- журналирование подключений USB (
journalctl -k | grep -i usb).