что такое bad usb

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

Все операции с памятью на USB-Flash обрабатываются контроллером, управляющий микрокод которого хранится в служебной области адресного пространства. У пользователя нет доступа к ней штатными средствами, а некоторые модели и вовсе требуют использования аппаратного программатора. Сегодня для упрощения процедуры записи и обновления прошивки многие производители выполняют эту операцию непосредственно через интерфейс USB. Обычная прошивка – это закрытый (проприетарный) код, поэтому считается, что изменить его может только сам разработчик.

На проходившей в штате Кентукки ежегодной конференции DerbyCon Адам Коудил (Adam Caudill) и Брэндон Уилсон (Brandon Wilson) в совместном докладе рассказали об успешной обратной разработке прошивки для контроллера Phison 2303 (2251-03) и показали практические варианты реализации атаки Bad USB.

Универсальный контроллер Phison 2251-03 (фото: Adam Caudill and Brandon Wilson).

Такой двухканальный контроллер USB 3.0 со встроенным восьмиразрядным микропроцессором архитектуры Intel 8051 встречается во многих съёмных носителях. Для демонстрации авторами был выбран сменный носитель Patriot Supersonic Xpress ёмкостью 8 ГБ.

Изначально Phison 2303 поддерживает создание нескольких дисковых разделов. Он может ограничивать доступ к одному из них паролем, скрывая присутствие других логических дисков. Последнее обстоятельство используется в некоторых вариантах атаки Bad USB. Во-первых, на скрытом разделе удобно хранить «боевую нагрузку». Во-вторых, так можно подсунуть «сейф без задней стенки»: пользователь будет продолжать считать скрытый раздел своего USB-Flash носителя защищённым, в то время как контроллер с изменённой прошивкой откроет его при вводе любого пароля.

Также Phison 2303 позволяет изменять идентификаторы производителя, продукта и серийный номер, что удобно для имитации других устройств. Однако этот контроллер был выбран прежде всего потому, что его прошивку можно обновлять непосредственно по USB и безо всякой проверки подлинности. Соответственно, её можно заменить не просто на новую официальную версию, а записать вместо неё свою, содержащую любые изменения и дополнительный функционал.
Перевод USB-Flash в служебный режим замыканием контактов (фото: wired.com).

Обратная разработка и модификация подразумевает получение копии исходной прошивки. Для этого USB-Flash накопитель надо перевести в служебный режим с помощью инженерной утилиты, или просто закоротив определённые контакты в момент подключения.

Оригинальная прошивка занимает не весь отведённый для неё объём, поэтому увеличение размера микрокода после добавления новых функций не стало проблемой.

По результатам реверс-инжиниринга была создана альтернативная прошивка с открытым исходным кодом. Её можно записать на любой USB-Flash носитель с соответствующим контроллером, превратив его в хакерский инструмент.

При подключении к компьютеру такая флэшка (от flash, а не flesh) с модифицированной прошивкой может опознаваться как другое устройство и скрыто выполнять функции, предусмотренные атакующей стороной. В приводимой на DerbyCon презентации флэшка опознаётся как клавиатура и отправляет команды от имени вошедшего в систему пользователя. В большинстве случаев им окажется администратор, а если и нет – существуют способы повышения привилегий, основанные на различных эксплоитах.

В примере флэшка запускает «Блокнот» и пишет в нём текст с ASCII графикой, но это могут быть совершенно любые действия. Как вариант – загрузка трояна через Wget или скрытая отправка приватных данных.

Автоматическое создание текстового документа с ASCII-графикой с помощью BadUSB (изображение: DerbyCon 4.0).

Вероятность успеха такой сложной тактики в неизвестном системном окружении считается низкой, однако она ненулевая. Действительно, для слепой атаки этот метод подходит мало: трудно предугадать конфигурацию компьютера, к которому подключат хакнутую флэшку, и перечень незакрытых на нём уязвимостей. Скорее, метод упрощает проведение целенаправленной атаки на компьютер конкретного пользователя, чьи данные требуется получить или от чьего имени совершить какую-то операцию.

Сходным образом реализована атака Bad USB группой Offensive Security в специализированном дистрибутиве Kali Linux NetHunter. Это дальнейшее развитие проекта BackTrack, предназначенного для выполнения тестов на проникновение с использованием мобильных устройств. Его можно установить на современные смартфоны и планшеты серии Nexus. Поддерживаются Asus Nexus 7 (версии 2012 и 2013 года), Samsung Nexus 10 и LG Nexus 5. Любой из этих гаджетов NetHunter превращает в мощный инструмент для выполнения аудита безопасности.

Читайте также:  что значит интравагинальное применение

NetHunter — реализация Bad USB на гаджетах серии Nexus (изображение: kali.org).

В режиме Bad USB на Nexus с NetHunter выполняется вариант атаки посредника (MITM). Смартфон или планшет подключается к компьютеру по USB под предлогом зарядки или копирования файлов. Далее гаджет подменяет сетевую карту, выполняя перенаправление трафика.

Фрагмент файла kali_linux_nethunter_nexus7_2012.zipsystemxbinstart-badusb

Появление подробных инструкций и готовых программных инструментов для реализации Bad USB с использованием различных серийно выпускаемых устройств свидетельствует о широком интересе к данному виду атаки. Не надо быть аналитиком, чтобы спрогнозировать резкое повышение частоты её применения в ближайшее время.

В ОС Windows можно вручную ограничить подключение по USB, разрешив его только для определённых устройств. Для этого необходимо изменить http://www.sql.ru/forum/847468/podkluchenie-konkretnogo-usb-ustroystva права доступа к соответствующим ключам реестра в разделе [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetEnumUSBSTOR].

Вероятно, разработчики антивирусных решений скоро добавят отдельные модули для более гибкого дополнительного контроля над подключаемыми по USB устройствами. Ограничивать доступ к сменным носителям и разрешать активацию согласно «белому списку» уже сейчас умеют ESET Endpoint Antivirus, Kaspersky Endpoint Security, компонент «Родительский контроль» у Dr.Web AV-Desk и другие современные средства комплексной защиты. Другое дело, что в случае Bad USB таких мер может оказаться недостаточно. Скорее всего, пользователь сам разрешит подключение опасного устройства, опрометчиво считая его неспособным навредить.

Реализация Bad USB с использованием серийно выпускаемых устройств (коллаж А.В.).

Особо подчеркну, что Bad USB – это не какая-то недавно открытая проблема на уровне самого интерфейса. Речь идёт лишь о том, что благодаря работе нескольких гиков пользователю без соответствующей квалификации стало значительно проще вмешаться в работу контроллеров некоторых устройств, допускающих обновление прошивки без использования специализированной техники.

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

В самой возможности сделать это мне трудно усмотреть что-то негативное. Часть пользователей получит более глубокие представления о работе современных устройств и ещё один стимул быть осторожнее. Просто теперь флэшку нельзя считать безопасной, даже если её дисковый раздел совершенно чист.

Источник

Мы изобрели лекарство от BadUSB

Любой USB-гаджет можно превратить в зомбированного агента киберпреступников. Универсальной защиты от этой атаки не существовало — пока мы ее не придумали!

Пожалуй, самый страшный кошмар любого пользователя — когда невидимый вирус заражает само железо компьютера, а не операционную систему. К сожалению, это вовсе не фантастика — позволяющие это делать уязвимости вполне себе существуют. Одну из них пару лет назад обнаружили в интерфейсе USB, исследователи назвали ее BadUSB.

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

Скажем, обычная флешка после такой перепрошивки может научиться притворяться USB-клавиатурой — и вводить команды от имени пользователя. Например, в определенный момент скомандовать стереть все ваши файлы — или отдать любую другую команду. Та же самая флешка может притвориться сетевой картой — и «прослушивать» идущий через компьютер поток данных.

Проблема в том, что такое вредоносное ПО содержится в контроллере флешки, его не видно снаружи. Поэтому обычные антивирусы, проверяющие файлы, тут не помогут — ведь никаких вредоносных файлов на флешке нет, вирус сидит гораздо глубже. Вторая проблема состоит в том, что взять и разом исправить те особенности работы USB-устройств, на которых основана данная атака, тоже нельзя.

Память, USB, BIOS и другие места современных компьютеров, об уязвимости которых стоит знать: http://t.co/gSHxjVdWaX pic.twitter.com/wlUKGwtuez

Однако специалисты «Лаборатории Касперского» Олег Зайцев, Ольга Домке, Константин Манурин и Михаил Левинский нашли способ справиться с этой напастью. Разработанная ими технология позволяет автоматически отслеживать, что происходит с USB-устройствами в системе, обнаруживать аномальное поведение — и блокировать устройства, если они пытаются делать что-то подозрительное.

Эта технология уже реализована в нашем корпоративном продукте Kaspersky Endpoint Security, а на днях команда разработчиков получила на нее патент в США.

Читайте также:  что делать если у меня ожог

«Несмотря на то что атаки с использованием модифицированных USB-устройств пока принято относить к теоретическим, они уже вызывают заинтересованность клиентов компании в соответствующих защитных решениях — никто не хочет оказаться безоружным при переходе от теории к практике, — говорит Ольга Домке. — Объединив усилия продуктовой и компонентной команд, мы разработали компонент защиты от атак BadUSB для продукта Kaspersky Endpoint Security для Windows, в котором, как и в любом решении для корпоративной среды, постарались соблюсти баланс между удобством конечного пользователя и спокойствием администратора».

Источник

Компьютерный форум

Здесь решают различные задачи сообща. Присоединяйтесь!

Уязвимость BadUSB на практике. Попытаемся разобраться

Сообщение DesignerMix » 01 ноя 2014, 20:14

Я думаю что многие уже слышали про уязвимость которой страдают все (ну или почти все) USB-устройства, она называется BadUSB.

Суть уязвимости заключается в том, что в абсолютном большинстве USB-устройств, будь то флешки, мобильные телефоны с возможностью подключаться к компьютеру, контроллеры USB-HDD и прочем подобном оборудовании есть контроллер в котором записана прошивка которая и говорит компьютеру что за устройство к нему подключено. И если эту прошивку изменить, то можно сделать с из устройства что угодно, например из флешки можно сделать клавиатуру и подавать с нее команды на компьютер от имени пользователя который подключил эту флешку. Пример использования смотрите в видео ниже.


Так вот, разработчики Adam Caudill и Brandon Wilson на проходившей недавно конференции DerbyCon поделились своими наработками по созданию «кастомной» прошивки для контроллеров Phison 2251-03 (2303). Они написали несколько программ которые доступны в репозитории на GitHub и скачав их у меня получилось провести атаку в реальности.

Если вы разместили папку fw из архива не в корне диска C: а где-то в другом месте, то измените пути в командах!

Источник

Мобильник как BadUSB. Используем BadUSB в Kali NetHunter по-взрослому

О BadUSB го­вори­лось и писалось мно­жес­тво раз, в стать­ях и виде­оро­ликах давалась общая информа­ция об этом клас­се атак, делал­ся обзор сущес­тву­ющих девай­сов на рын­ке, и, конеч­но же, опи­сыва­лись схе­мы сбор­ки самодель­ных устрой­ств. Как ты зна­ешь, эта ата­ка поз­воля­ет в крат­чай­шие сро­ки выпол­нить дей­ствия на целевом компь­юте­ре. Дела­ется это так: в сво­бод­ный USB-порт встав­ляет­ся заранее под­готов­ленная флеш­ка или прос­той USB-кабель, который име­ет встро­енный мик­рокон­трол­лер с осо­бой про­шив­кой. Эти устрой­ства иден­тифици­руют­ся сис­темой в качес­тве HID (Human Interface Device), нап­ример как кла­виату­ра. Пос­ле чего по заранее написан­ному сце­нарию эму­лиру­ется ввод команд, как если бы их вби­вал живой человек, сидящий за компь­юте­ром.

Пред­положим, что ты член коман­ды Red Team. Плю­сы таких устрой­ств для тебя оче­вид­ны. Во‑пер­вых, не нуж­но садить­ся за компь­ютер и прив­лекать к себе вни­мание, сту­ча по кла­вишам за чужим рабочим мес­том. Дос­таточ­но вста­вить неп­ригляд­ную флеш­ку или кабель в разъ­ем USB. А во‑вто­рых, ско­рость авто­мати­чес­кого вво­да команд при помощи устрой­ства BadUSB в разы выше, чем ско­рость, с которой спо­собен печатать человек.

На самом деле ата­ка с авто­мати­чес­ким вво­дом тек­ста через USB-свис­тки появи­лась куда рань­ше, чем сам тер­мин BadUSB. В 2010 году коман­да Hak5 пред­ста­вила сво­его зна­мени­того резино­вого утен­ка — Rubber Ducky.

Ши­роко извес­тный в узких кру­гах девайс Rubber Ducky

Это был спе­циаль­но спро­екти­рован­ный девайс, который нап­рямую никак не свя­зан с темой BadUSB. Соз­датели жел­той уточ­ки раз­работа­ли спе­циаль­ный скрип­товый язык, на котором мож­но было писать сце­нарии. Впос­ледс­твии появил­ся целый ресурс, где поль­зовате­ли вык­ладыва­ли свои скрип­ты.

Ре­сурс, на который поль­зовате­ли вык­ладыва­ли собс­твен­ные скрип­ты

Bash Bunny

Ин­терес­ная аль­тер­натива «резино­вой утке» — Bash Bunny. Это более изощ­ренный вари­ант девай­са для HID-атак. Помимо кла­виату­ры, он может эму­лиро­вать любые устрой­ства для пос­ледова­тель­ного пор­та, фай­ловые хра­нили­ща и адап­теры USB — Ethernet.

О дру­гих хакер­ских устрой­ствах, которые может при­обрести любой жела­ющий, ты можешь про­читать в этой статье.

В боль­шинс­тве слу­чаев при­мене­ние «утен­ка» и самодель­ных BadUSB-свис­тков сво­дит­ся к получе­нию уда­лен­ного дос­тупа или экспор­ту паролей из сис­темы. Авто­ры темати­чес­ких ста­тей и мам­кины хакеры c юту­ба зачас­тую исполь­зуют одну и ту же схе­му: залить на фай­лооб­менник какой‑нибудь тро­ян и зап­рограм­мировать девайс BadUSB на его ска­чива­ние и выпол­нение. Как говорит­ся, дешево и сер­дито.

Ми­нусы это­го метода оче­вид­ны: во‑пер­вых, серь­езные спе­циалис­ты могут исполь­зовать собс­твен­ные при­ват­ные наработ­ки, так что заливать такой код неиз­вес­тно куда — идея не самая разум­ная, а во‑вто­рых, на целевой машине может не ока­зать­ся дос­тупа в интернет, и скрипт поп­росту не отра­бота­ет как надо.

Читайте также:  что значит на молодежном сленге рек

При таком рас­кла­де самодель­ные бюд­жетные свис­тки ста­новят­ся бес­полез­ными. Поль­зовате­ли ори­гиналь­ного утен­ка находят­ся в более при­виле­гиро­ван­ном положе­нии, и вот почему: у Rubber Ducky есть воз­можность уста­новить SD-кар­ту с дос­таточ­ным объ­емом памяти. Кро­ме того, сущес­тву­ет аль­тер­натив­ная про­шив­ка под наз­вани­ем Twin Duck, которая прев­раща­ет утку одновре­мен­но в два устрой­ства: кла­виату­ру и Mass Storage Device. Таким обра­зом, появ­ляет­ся воз­можность рас­положить необ­ходимый софт непос­редс­твен­но во внут­ренней памяти девай­са и пол­ностью избе­жать работы с сетью.

Лич­но я поз­накомил­ся с BadUSB при совер­шенно дру­гих обсто­ятель­ствах. Это слу­чилось, ког­да я уста­новил на смар­тфон опе­раци­онную сис­тему Kali NetHunter. Сре­ди про­чих фун­кций дан­ной ОС в ней при­сутс­тву­ет воз­можность исполнять ути­ные скрип­ты при под­клю­чении смар­тфо­на к компь­юте­ру. И все бы ничего, но вари­ант с залив­кой фай­лов куда‑то вов­не меня совер­шенно не устра­ивал, и я решил довес­ти алго­ритм этой ата­ки до ума.

warning

Вся информа­ция пре­дос­тавле­на исклю­читель­но в озна­коми­тель­ных целях. Автор и редак­ция не несут ответс­твен­ности за любой воз­можный вред, при­чинен­ный с исполь­зовани­ем све­дений из этой статьи.

Для начала раз­берем­ся с базовым выпол­нени­ем ducky-скрип­тов. В гра­фичес­кой обо­лоч­ке NetHunter для это­го сущес­тву­ет свой раз­дел, но, по прав­де говоря, поль­зы от него мало. Поэто­му запуск скрип­тов мы наладим самос­тоятель­но.

При запус­ке скон­верти­рован­ного скрип­та под­клю­чен­ный телефон нач­нет вво­дить текст на компь­юте­ре.

С этим разоб­рались, теперь перей­дем к час­ти эму­ляции флеш‑накопи­теля. Для начала нам необ­ходимо соз­дать вир­туаль­ный образ, который мы будем мон­тировать и на котором будут находить­ся нуж­ные для запус­ка фай­лы. Образ мож­но было бы соз­дать прос­той коман­дой:

Но необ­ходимо еще отформа­тиро­вать накопи­тель и задать мет­ку тома, поэто­му более удоб­ным вари­антом будет исполь­зование ути­литы DriveDroid.

Ис­поль­зуем ути­литу DriveDroid для соз­дания вир­туаль­ного обра­за дис­ка

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Источник

Что такое bad usb

Эксперты Максим Горячий и Марк Ермолов в своем докладе отметили, что зачастую подобные аппаратные механизмы используются как вполне легальные инструменты, которые внедряются еще на стадии производства − например, специальные отладочные возможности, оставленные разработчиками для настройки аппаратуры и других «благих целей». Однако сейчас такие механизмы оказываются доступны и для злоумышленников, причем цена вопроса настолько низка, что для организации подобных атак уже не нужно быть государственной спецслужбой и иметь специальное оборудование.

Один из таких механизмов был подробно проанализирован и показан в исследовании. В качестве опасной возможности, оставленной производителем, здесь фигурирует отладочный интерфейс JTAG (Joint Test Action Group), доступ к которому теперь открыт через USB-интерфейс. Данный способ доступа к процессору работает «ниже» всего программного обеспечения, позволяя осуществлять аппаратную отладку гипервизоров, ядра ОС и драйверов. Однако тот же механизм может использоваться и для несанкционированных вторжений.

В старых процессорах Intel доступ к JTAG требовал подключения специализированного устройства через отладочный разъем на некоторых системных платах (ITP-XDP). Это усложняло доступ к данной технологии, в том числе, и для злоумышленников.

Однако, начиная с процессоров семейства Skylake, запущенных в производство в 2015 году, компания Intel внедрила технологию Direct Connect Interface (DCI), которая предоставляет доступ к JTAG через популярный порт USB 3.0. При этом на целевом компьютере не требуется каких-либо программных или аппаратных агентов − необходимо лишь, чтобы интерфейс DCI был активирован. Как выяснили исследователи, это можно сделать несколькими способами, и на множестве современных компьютеров этот функционал оказался доступен буквально «из коробки» − то есть по умолчанию возможность активации DCI не заблокирована.

В докладе также был представлен видеоролик, показывающий, насколько легко злоумышленники могут получить полный доступ к процессору с помощью такого механизма. По мнению исследователей, данный механизм в процессорах Intel может привести к целому классу новых атак типа «Bad USB» – но уровень проникновения будет гораздо глубже.

Источник

Строительный портал