Компания Google
https://opensource.googleblog.com/20...rotection.html утилиту
https://github.com/google/ukip, позволяющую отслеживать и блокировать
https://www.opennet.ru/opennews/art.shtml?num=40309, осуществляемые с использованием вредоносных USB-устройств, симулирующих USB-клавиатуру для скрытой подстановки фиктивных нажатий клавиш (например, в ходе атаки может быть
https://www.opennet.ru/opennews/art.shtml?num=40744 последовательность нажатий, приводящих к открытию терминала и выполнению в нём произвольных команд). Код написан на языке Python и
https://github.com/google/ukip под лицензией Apache 2.0.
Утилита запускается в форме сервиса systemd и может работать в режимах мониторинга и предотвращения атак. В режиме мониторинга осуществляется определение возможных атак и занесение в лог активности, связанной с попытками использования USB-устройств не по назначению для подстановки ввода. В режиме защиты при выявлении потенциально вредоносного устройства осуществляется его отсоединение от системы на уровне драйвера.
Вредоносная активность определяется на основе эвристического анализа характера ввода и задержек между нажатиями клавиш - атака обычно проводится в присутствии пользователя и для того, чтобы она осталась незамеченной, симулированные нажатия отправляются с нетипичными для обычного клавиатурного ввода минимальными задержками. Для изменения логики определения атак предложены две настройки KEYSTROKE_WINDOW и ABNORMAL_TYPING (первая определяет число нажатий для анализа, а вторая пороговый интервал между нажатиями).
Атака может быть совершена при помощи не вызывающего подозрений устройства с модифицированной прошивкой, например, симулировать клавиатуру можно в
https://opensource.srlabs.de/project...ki/USB_storage,
https://opensource.srlabs.de/projects/badusb/wiki/Hubs,
https://opensource.srlabs.de/project...b/wiki/Webcams или
https://opensource.srlabs.de/project...iki/BadAndroid (в
https://www.kali.org/kali-linux-nethunter/ предлагается специальная утилита для подстановки ввода с подключённого к USB-порту смартфона под управлением платформы Android). Для усложнения атак через USB помимо ukip также можно использовать пакет
https://usbguard.github.io/, который разрешает подключение устройств только из белого списка или блокирует возможность подключения посторонних USB-устройств во время блокировки экрана и не допускает работу с такими устройствами после возвращения пользователя.