Bad USB атаки

Bad USB атаки

Михаил Жмайло

Всем привет! Меня зовут Миша, я работаю пентестером в команде CICADA8, сегодня разберем одну интересную и очень эффектную атаку под названием Bad USB.

Наверное, каждый слышал про "хакерские" флешки, которые при подключении к устройству взламывают его. Действительно существуют такие девайсы, но не все так просто, как кажется :)

Итак, атака, в ходе которой жертва должна воткнуть флешку в свое устройство, называется Bad USB. Наибольшую популярность этот метод взлома приобрел после его демонстрации в сериале Mister Robot.


Bad USB ждет своего хода

Злоумышленники разбрасывают подобные устройства около большого офисного здания, а затем дожидаются, когда любопытный пользователь подберет флешку и воткнет в свое устройство. После чего компьютер оказывается заражен вирусом, а хитрый хакер получает доступ ко всем данным устройства.


Сколько проблем таит в себе такая кроха....

Что же, вроде бы все и так, а вроде бы и нет. Во-первых, это не флешки. Флешка представляет собой лишь устройство для хранения данных, редкие экземпляры имеют больший функционал. Хакеры разбрасывают устройства, внешне похожие на флешку.


Сможете найти BadUSB? :)

У них может быть схожий форм-фактор, такой же USB-порт, но функционал кардинально отличается. В качестве BadUSB можно использовать любое устройство, которое отвечает следующим характеристикам:

  1. Имеет маленькую форму (до 5 см в длину, до 3 в ширину)
  2. Имеет USB-порт
  3. Может эмулировать клавиатуру или сетевую карту

Существуют разные виды BadUSB, одним из самых популярных считается Rubber Ducky.


Флешка Rubber Ducky


Цена этого инструмента на текущий момент составляет 79$ , что чрезвычайно дорого, так как для успешной атаки желательно разбросать около 20 флешек. Поэтому для удешевления производства покупается плата Arduino Pro Micro (либо любая другая), ее можно найти где-то за 600-1300 рублей за штуку. К этой плате припаивается USB-порт, а затем берется корпус от какой-нибудь большой флешки, куда идеально помещается плата. Чаще всего делается все своими руками за один вечер, так как вещица расходная. Какие-то экземпляры потеряются, какие-то сломаются. Да и не ходить ведь вокруг бизнес-центра после проекта, доставая из снега флешки. Что люди подумают? :D

Я попросил своих коллег сделать фотографии их собственных BadUSB, как видите, варианты очень разные:


Самая маленькая BadUSB


BadUSB с функционалом WiFi модуля
BadUSB с Arduino MicroPro

Как видите, отличить от обычной флешки вредоносную ну просто невозможно.


Каким образом осуществляется получение доступа к компьютеру? Как вы помните, одним из важных факторов являлось наличие эмулятора клавиатуры или сетевого интерфейса. В случае, если плата умеет эмулировать клавиатуру, то после подключения в USB-порт она просто отправляет компьютеру нажатия клавиш, а компьютер эти нажатия обрабатывает, думая, что пользователь подключил обычную клавиатуру. Хакеру остается лишь запрограммировать BadUSB так,чтобы отправлялись нужные нажатия клавиш. Например, может быть следующая последовательность:

  1. Win + R (появление окна) и ввод туда cmd.exe

2. Запуск командной строки и загрузка вируса с удаленного сервера:

Загрузка файла с удаленного сервера


Если же устройство умеет эмулировать сетевой интерфейс, то при подключении оно укажет такую конфигурацию сети, при которой получится перехватывать все пакеты от других сетевых интерфейсов компьютера. Фактически, злоумышленник сможет видеть все, что вы отправляете по сети :)


Графическое представление перехвата данных

Если вдаваться в технические подробности, то компьютер будет отправлять все данные в новый USB-интерфейс (в BadUSB) по той причине, что этот интерфейс пропишет маршруты с более короткими масками, поэтому, как приличное устройство, работающее с интернетом, компьютер отправит данные по маршруту с наиболее короткой маской, то есть, на наш BadUSB.

Логичный вопрос - а как защититься? Самый надежный способ - просто не втыкать что попало в свой компьютер) Если у вас паранойя, то можно использовать USB-презерватив (так и называется), хотя в крупных корпорациях обычно настраивается антивирус с технологией USBGuard, предотвращающей подключение новых устройств к компьютеру.

Кстати, если вы хотите погрузиться и узнать еще больше технических деталей, то у моего коллеги, Андрея Жукова, вышла книга "Хакерство. Физические атаки с использованием хакерских устройств". В ней автор своими руками создает полноценную BadUSB-флешку, подробно описывая каждый момент создания этой интересной вещицы :)


Report Page