Режим Bad USB на Flipper Zero заставляет устройство определяться компьютером как обычная USB-клавиатура и автоматически «печатать» заранее записанный скрипт — поэтому любая ошибка в файле скрипта или случайный запуск на неподготовленной системе приводит к вводу команд не туда, куда планировалось. Именно с проверки содержимого скрипта и окружения, в котором он будет исполняться, начинается любая работа с этой функцией.

В этой статье разберём, как устроен режим Bad USB, как писать и отлаживать скрипты на языке Ducky Script, какие ошибки встречаются чаще всего и где проходит граница легального применения. Материал ориентирован на владельцев Flipper Zero, которые используют устройство для обучения, тестирования собственной инфраструктуры и автоматизации рутинных действий на своих компьютерах.

Как работает режим Bad USB

Принцип основан на доверии операционных систем к HID-устройствам (Human Interface Device). Когда Flipper Zero подключается к компьютеру в режиме Bad USB, он отправляет дескриптор клавиатуры, и система принимает его «нажатия клавиш» так же, как ввод с физической клавиатуры — без запроса разрешений и дополнительных драйверов.

Скрипт представляет собой текстовый файл с расширением .txt, написанный на языке Ducky Script. Каждая строка — это команда: задержка, ввод строки, нажатие сочетания клавиш. Flipper исполняет файл последовательно, сверху вниз, с заданной скоростью.

Важно понимать ограничение: Bad USB не «взламывает» компьютер сам по себе. Он лишь автоматизирует ввод — всё, что делает скрипт, в принципе мог бы сделать человек за клавиатурой. Эффективность сценария зависит от состояния системы: открыт ли нужный интерфейс, есть ли права, не заблокирован ли экран.

💡

Bad USB — это эмуляция клавиатуры, а не эксплойт. Скрипт лишь ускоряет ввод команд, которые пользователь мог бы набрать вручную.