Уязвимы ли современные флешки к перепрошивке для эмуляции клавиатуры (BadUSB)?
Я ищу конкретные модели современных флешек или чипы (Phison, Alcor, Silicon Motion), которые можно перепрошить для возможности эмулировать клавиатуру. Все найденные мной руководства относятся к старым моделям, которые больше не продаются. Нужны рекомендации по актуальным моделям на рынке, которые можно перепрошить без длительного процесса реверс-инжиниринга.
Особенно важна флешка с достаточным объемом памяти для размещения длинного payload. Digispark, который я приобрел, не подходит для полной автоматизации из-за ограниченного размера payload и отсутствия функционала диска для загрузки необходимых программ.
Интересно, возможно ли реализовать задуманное с современным оборудованием.
Современные USB-флешки по-прежнему уязвимы для перепрошивки с целью эмуляции клавиатуры (BadUSB), особенно модели на базе контроллеров Phison, Alcor и Silicon Motion. Несмотря на то, что большинство найденных руководств посвящены старым моделям, уязвимость firmware современных контроллеров сохраняется, и существуют инструменты для их перепрошивки без сложного реверс-инжиниринга.
Содержание
- Современные уязвимые контроллеры
- Инструменты для перепрошивки
- Рекомендуемые модели флешек
- Процесс перепрошивки современных устройств
- Защита от BadUSB атак
Современные уязвимые контроллеры
Исследования показывают, что уязвимость firmware USB-устройств остается актуальной для современных контроллеров. Основные производители, чьи чипы подвержены перепрошивке для BadUSB:
Phison Electronics
- PS2251-03 (PS2303) - один из наиболее изученных и документированных контроллеров
- PS2251-07 (PS2307) - более современная версия, также уязвима
- Эти контроллеры используются в современных флешках, несмотря на возраст технологий
Alcor Micro
- Тайваньский производитель, чьи контроллеры упоминаются в исследованиях BadUSB
- Используются в бюджетных и средних сегментах флеш-накопителей
Silicon Motion
- Еще один крупный производитель, чьи чипы тестировались на уязвимость к перепрошивке
- Часто встречается в современных высокоскоростных флешках
Важно отметить, что согласно исследованиям, почти каждая USB-флешка теоретически уязвима, но опубликованные методы перепрошивки существуют преимущественно для контроллеров Phison.
Инструменты для перепрошивки
Для современных контроллеров существуют готовые инструменты, значительно упрощающие процесс:
Psychson для Phison 2251-03/2303
- Репозиторий на GitHub содержит кастомный firmware для BadUSB
- Позволяет перепрошивать контроллеры без глубокого реверс-инжиниринга
- Поддерживает создание длинных payload для автоматизации
Phison-2307-BadUSB
- Специализированный инструмент для PS2251-07(PS2307)
- Оптимизирован для более современных контроллеров
- Включает готовые шаблоны для различных атак
Другие инструменты
- PhisonTool - набор инструментов для работы с современными чипами Phison
- Специализированные прошивки, позволяющие совмещать функционал диска и эмуляции клавиатуры
Эти инструменты значительно упрощают процесс по сравнению с ранними методами, требовавшими глубокого анализа firmware.
Рекомендуемые модели флешек
На основе анализа рынка и доступных инструментов, рекомендуются следующие современные модели:
Модели на базе Phison PS2251-07 (PS2307)
- Silicon Power модели - многие из них используют этот контроллер
- Kingston DataTraveler - некоторые модели 2022-2024 годов
- SanDisk Ultra Fit - проверенные на совместимость с инструментами
Модели на базе Alcor Micro
- Transc JetFlash - бюджетные линейки
- PNY Attache - некоторые современные серии
- Lexar JumpDrive - модели среднего сегмента
Выбор модели с достаточным объемом
Для размещения длинных payload рекомендуется выбирать флешки объемом:
- 32GB - минимальный комфортный размер
- 64GB - оптимальный для сложных скриптов
- 128GB - максимальная гибкость для payload
При покупке важно использовать инструменты для определения контроллера перед перепрошивкой, так как производитель может менять поставщиков чипов даже в одной линейке продуктов.
Процесс перепрошивки современных устройств
Современный процесс включает следующие шаги:
1. Определение контроллера
# Используйте lsusb или аналогичные утилиты для идентификации
lsusb -v
# Ищите идентификаторы Vendor ID (VID) и Product ID (PID)
2. Подготовка инструментов
- Скачайте соответствующий инструмент (Psychson или phison-2307-BadUSB)
- Подготовьте payload-скрипт
- Установите необходимые драйверы
3. Процесс перепрошивки
- Подключите флешку в режиме прошивки
- Запустите соответствующий инструмент
- Загрузите кастомный firmware
- Проверьте работоспособность
4. Тестирование payload
# Пример payload для эмуляции клавиатуры
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keyboard_layout_us import KeyboardLayoutUS
keyboard = Keyboard(usb_hid.devices)
layout = KeyboardLayoutUS(keyboard)
layout.write("powershell -WindowStyle Hidden -Command \"")
# Здесь может быть длинный скрипт
layout.write("\"")
В отличие от Digispark, современные перепрошитые флешки сохраняют функционал хранения данных, позволяя хранить дополнительные скрипты и инструменты на самом устройстве.
Защита от BadUSB атак
Для защиты от подобных атак рекомендуются следующие меры:
Организационные меры
- Запрет использования непроверенных USB-устройств
- Использование USB-концентраторов с блокировкой незнакомых устройств
- Обучение пользователей распознаванию подозрительных устройств
Технические средства
- Антивирусное ПО с модулем защиты от USB-угроз
- Системы контроля периферийных устройств (DLP)
- USB-контроллеры с белым списком разрешенных устройств
Физическая защита
- Использование заглушек USB-портов
- Регулярная проверка подключаемых устройств
- Сегментация сетей по уровням доверия
Важно понимать, что полная защита от BadUSB практически невозможна на уровне программного обеспечения, так как атака происходит на уровне firmware устройства до загрузки операционной системы.
Заключение
Современные USB-флешки остаются уязвимыми для перепрошивки с целью BadUSB-атак, особенно модели на контроллерах Phison, Alcor и Silicon Motion. Существуют готовые инструменты для перепрошивки этих устройств без сложного реверс-инжиниринга.
Ключевые рекомендации:
- Выбирайте флешки на базе контроллеров Phison PS2251-07 для оптимальной совместимости
- Используйте готовые инструменты из GitHub для упрощения процесса
- Для размещения длинных payload выбирайте объем от 32GB
- Современные перепрошитые устройства сохраняют функционал хранения данных, в отличие от специализированных решений типа Digispark
Практические шаги:
- Определите контроллер перед покупкой флешки
- Изучите доступные инструменты для вашего конкретного чипа
- Начинайте с простых payload перед переходом к сложным скриптам
- Всегда тестируйте устройства в изолированной среде
Технология BadUSB продолжает развиваться, и производители медленно внедряют механизмы защиты, но на данный момент уязвимость сохраняется для большинства устройств на рынке.
Источники
- GitHub - brandonlw/Psychson: Phison 2251-03 (2303) Custom Firmware & Existing Firmware Patches (BadUSB)
- GitHub - bidhata/phison-2307-BadUSB: PS2251-07(PS2307) based BadUSB firmware
- Help Net Security - Malicious USB device firmware the next big infection vector?
- Null Byte - How to Make Your Own Bad USB
- Wired - Only Half of USB Devices Have an Unpatchable Flaw, But No One Knows Which Half
- Security Boulevard - Why USB Attacks Are Back and How to Prevent Them
- Heimdal Security - How to Fix the Critical BadUSB Security Flaw
- Reddit - Reverse Engineering USB: Need Help Identifying Components