Режим 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 — это эмуляция клавиатуры, а не эксплойт. Скрипт лишь ускоряет ввод команд, которые пользователь мог бы набрать вручную.