BadUSB

Поделись знанием:
Перейти к: навигация, поиск

BadUSB — класс хакерских атак, основанный на уязвимости USB устройств. Благодаря отсутствию защиты от перепрошивки в некоторых USB-устройствах, злоумышленник может видоизменить или полностью заменить оригинальную прошивку и заставить устройство имитировать любое другое устройство. BadUSB предназначен для доставки и исполнения вредоносного кода[1].





Описание

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

BadUSB пользуется тем фактом, что производители не защищают свои устройства от перепрошивки, а хосты не проверяют USB устройства на подлинность. Благодаря этому злоумышленник может подменить прошивку микроконтроллера и выдать одно устройство за другое. Также, так как все коммуникации ведутся через этот микроконтроллер, злоумышленник может перехватывать и подменять любые данные и команды между устройством и хостом[3]. Возможно и автоматическое заражение устройств: устройство заражает хост, запуская на нём вредоносное ПО, затем хост автоматически заражает все подключенные к нему USB устройства[3].

Каждый контроллер уникален, и для каждого необходимо разрабатывать зараженную прошивку или патч отдельно. Невозможно написать универсальное программное обеспечение и использовать его на любом микроконтроллере. Процедура прошивки различается от одного контроллера к другому. Все это значительно уменьшает вероятность эпидемии BadUSB, однако не защищает от целенаправленной атаки[3].

История

Понятие BadUSB было введено в августе 2014 года на конференции [www.blackhat.com/us-14/ BlackHat USA 2014] исследователями организации [srlabs.de Security Research Labs] Карстеном Нолом (англ. Karsten Nohl) и Джейкобом Леллом (англ. Jakob Lell), которые выступили с докладом «BadUSB — On Accessories that Turn Evil». Они провели реинжениринг USB контроллера [www.phison.com/English/ProductView.asp?ID=235&SortID=60 Phison 2251-03 (2303)] и разработали прошивки для некоторых видов атак. Прошивка контроллера осуществлялась приложением [github.com/adamcaudill/Psychson/tree/master/DriveCom DriveCom]. Была продемонстрирована атака с помощью имитации клавиатуры, сетевой карты, атака на защиту флеш-накопителей и сокрытие раздела флеш-накопителя. Также были рассмотрены некоторые способы защиты от атак BadUSB[1][3].

5 августа 2014 года был опубликован эксплойт [srlabs.de/badusb/ BadAndroid], превращающий телефон на базе Android в сниффер сетевого трафика[4].

26 сентября 2014 года был опубликован [github.com/adamcaudill/Psychson исходный код] прошивки и патчей для контроллера Phison 2251-03, включая атаку имитацией клавиатуры, атаку на пароль накопителя и скрытие раздела накопителя[5].

Область уязвимости

Уязвимости подвержены все устройства с незащищенными USB контроллерами на борту: флеш-накопители, вебкамеры, мышки, клавиатуры, андроид-устройства. BadUSB не требует особого программного обеспечения на компьютере жертвы и работает под любыми операционными системами, поддерживающими USB-HID устройства[3][6].

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

Некоторые виды атак

Имитация клавиатуры

Устройство представляется компьютеру жертвы клавиатурой, а по истечении некоторого времени начинает отправлять последовательности нажатий клавиш. В результате злоумышленник может выполнить на компьютере жертвы любые действия, доступные авторизованному пользователю с помощью одной только клавиатуры. К примеру, злоумышленник может загрузить из интернета и запустить вредоносное ПО[3].

Существенным минусом данного вида атак является отсутствие доступа к информации на экране и, как следствие, отсутствие обратной связи на любые действия со стороны зараженного устройства. Например, злоумышленник не может определить как текущую раскладку клавиатуры, так и произведен ли вход в систему[3].

Имитация сетевой карты

Устройство представляется компьютеру жертвы сетевой картой и, таким образом, может перехватывать или перенаправлять сетевой трафик. В частности, отвечая на DHCP запрос адресом DNS сервера злоумышленника и не предоставляя шлюза по умолчанию, злоумышленник может перенаправить трафик жертвы: компьютер жертвы будет производить разрешение адреса через DNS сервер злоумышленника, но, в отсутствии шлюза по умолчанию, будет использовать другой, настоящий сетевой интерфейс[3].

Boot Injection

Устройство с достаточным местом для хранения вредоносного кода, например, флеш-накопитель, может определить момент включения компьютера и в момент определения BIOS’ом выдать на загрузку вирус для заражения операционной системы. Это становится возможным благодаря тому, что по поведению хоста при общении с USB микроконтроллером возможно определить ОС хоста, в частности Windows, Linux, MacOSX, а также BIOS[7].

Выход из виртуального окружения

Атака использует возможность повторной инициализации устройства[2]. Выполняясь в виртуальной машине, вирус заражает любое подключенное по USB устройство. Зараженная прошивка выполняет переинициализацию и представляется двумя независимыми устройствами: неким новым и тем, которое уже было подключено к виртуальной машине. Новое устройство будет автоматически подключено к хостовой ОС, а старое — обратно в виртуальную машину. Таким образом, может быть произведен выход за пределы виртуального окружения, то есть осуществлен переход от клиентской до хостовой ОС[7].

Противодействие

В рамках доклада «BadUSB — On Accessories that Turn Evil» было предложено несколько способов защиты от BadUSB, однако, по словам исследователей, полноценная интеграция защиты займет продолжительное время[3][7].

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

Марк Шаттлворт, основатель Canonical Ltd., также высказывался по вопросу безопасности USB устройств и как решение проблемы предлагал полностью открыть исходный код прошивок[8].

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

Защитные решения Dr.Web с 11-й версии защищают от BadUSB-уязвимости для устройств, имитирующих клавиатуру[10].

Напишите отзыв о статье "BadUSB"

Примечания

  1. 1 2 [www.blackhat.com/us-14/briefings.html#badusb-on-accessories-that-turn-evil Брифинг BlackHat USA] (англ.) (2014). Проверено 10 декабря 2014.
  2. 1 2 3 [www.usb.org/developers/docs/ Спецификация USB] (англ.). Проверено 10 декабря 2014.
  3. 1 2 3 4 5 6 7 8 9 Andy Greenberg [www.wired.com/2014/07/usb-security/ Why the Security of USB Is Fundamentally Broken] (англ.) // wired.com. — 2014.
  4. [srlabs.de/badusb/ BadUSB на Security Research Lab]. Проверено 10 декабря 2014.
  5. Andy Greenberg [www.wired.com/2014/10/code-published-for-unfixable-usb-attack/ The Unpatchable Malware That Infects USBs Is Now on the Loose] (англ.) // wired.com. — 2014.
  6. 1 2 Andy Greenberg [www.wired.com/2014/11/badusb-only-affects-half-of-usbs/ Only Half of USB Devices Have an Unpatchable Flaw, But No One Knows Which Half] (англ.) // wired.com. — 2014.
  7. 1 2 3 [srlabs.de/blog/wp-content/uploads/2014/07/SRLabs-BadUSB-BlackHat-v1.pdf Слайды доклада BadUSB] (август 2014). Проверено 10 декабря 2014.
  8. Linux Magazine issue 162, May 2014, page 9.
  9. Андрей Васильков. [www.computerra.ru/108106/bad-usb-on-some-devices/ Bad USB — как новая атака реализована в разных устройствах]. Компьютерра (6 октября 2014). Проверено 27 декабря 2014.
  10. [news.drweb.ru/show/?i=9972&c=5&lng=ru&p=0 Обновление компонентов в продуктах Dr.Web 11.0]. news.drweb.ru. Проверено 26 мая 2016.

Ссылки

  • [srlabs.de/badusb/ Security Research Labs: BadUSB] (англ.). — крактое описание BadUSB на Security Research Labs.
  • [www.youtube.com/watch?v=nuruzFqMgIw BlackHat USA 2014: BadUSB - On Accessories that Turn Evil] (англ.). — видео доклада «BadUSB - On Accessories that Turn Evil» на конференции BlackHat USA 2014.
  • [srlabs.de/blog/wp-content/uploads/2014/07/SRLabs-BadUSB-BlackHat-v1.pdf Security Research Labs: BadUSB Slides] (англ.). — слайды доклада «BadUSB - On Accessories that Turn Evil» на конференции BlackHat USA 2014.
  • [github.com/adamcaudill/Psychson BadUSB Sources] (англ.). — опубликованный исходный код некоторых уязвимостей, продемонстрированных в докладе «BadUSB - On Accessories that Turn Evil».


Отрывок, характеризующий BadUSB

– Ведь то мудрено, братцы мои, – продолжал тот, который удивлялся их белизне, – сказывали мужики под Можайским, как стали убирать битых, где страженья то была, так ведь что, говорит, почитай месяц лежали мертвые ихние то. Что ж, говорит, лежит, говорит, ихний то, как бумага белый, чистый, ни синь пороха не пахнет.
– Что ж, от холода, что ль? – спросил один.
– Эка ты умный! От холода! Жарко ведь было. Кабы от стужи, так и наши бы тоже не протухли. А то, говорит, подойдешь к нашему, весь, говорит, прогнил в червях. Так, говорит, платками обвяжемся, да, отворотя морду, и тащим; мочи нет. А ихний, говорит, как бумага белый; ни синь пороха не пахнет.
Все помолчали.
– Должно, от пищи, – сказал фельдфебель, – господскую пищу жрали.
Никто не возражал.
– Сказывал мужик то этот, под Можайским, где страженья то была, их с десяти деревень согнали, двадцать дён возили, не свозили всех, мертвых то. Волков этих что, говорит…
– Та страженья была настоящая, – сказал старый солдат. – Только и было чем помянуть; а то всё после того… Так, только народу мученье.
– И то, дядюшка. Позавчера набежали мы, так куда те, до себя не допущают. Живо ружья покидали. На коленки. Пардон – говорит. Так, только пример один. Сказывали, самого Полиона то Платов два раза брал. Слова не знает. Возьмет возьмет: вот на те, в руках прикинется птицей, улетит, да и улетит. И убить тоже нет положенья.
– Эка врать здоров ты, Киселев, посмотрю я на тебя.
– Какое врать, правда истинная.
– А кабы на мой обычай, я бы его, изловимши, да в землю бы закопал. Да осиновым колом. А то что народу загубил.
– Все одно конец сделаем, не будет ходить, – зевая, сказал старый солдат.
Разговор замолк, солдаты стали укладываться.
– Вишь, звезды то, страсть, так и горят! Скажи, бабы холсты разложили, – сказал солдат, любуясь на Млечный Путь.
– Это, ребята, к урожайному году.
– Дровец то еще надо будет.
– Спину погреешь, а брюха замерзла. Вот чуда.
– О, господи!
– Что толкаешься то, – про тебя одного огонь, что ли? Вишь… развалился.
Из за устанавливающегося молчания послышался храп некоторых заснувших; остальные поворачивались и грелись, изредка переговариваясь. От дальнего, шагов за сто, костра послышался дружный, веселый хохот.
– Вишь, грохочат в пятой роте, – сказал один солдат. – И народу что – страсть!
Один солдат поднялся и пошел к пятой роте.
– То то смеху, – сказал он, возвращаясь. – Два хранцуза пристали. Один мерзлый вовсе, а другой такой куражный, бяда! Песни играет.
– О о? пойти посмотреть… – Несколько солдат направились к пятой роте.


Пятая рота стояла подле самого леса. Огромный костер ярко горел посреди снега, освещая отягченные инеем ветви деревьев.
В середине ночи солдаты пятой роты услыхали в лесу шаги по снегу и хряск сучьев.
– Ребята, ведмедь, – сказал один солдат. Все подняли головы, прислушались, и из леса, в яркий свет костра, выступили две, держащиеся друг за друга, человеческие, странно одетые фигуры.
Это были два прятавшиеся в лесу француза. Хрипло говоря что то на непонятном солдатам языке, они подошли к костру. Один был повыше ростом, в офицерской шляпе, и казался совсем ослабевшим. Подойдя к костру, он хотел сесть, но упал на землю. Другой, маленький, коренастый, обвязанный платком по щекам солдат, был сильнее. Он поднял своего товарища и, указывая на свой рот, говорил что то. Солдаты окружили французов, подстелили больному шинель и обоим принесли каши и водки.
Ослабевший французский офицер был Рамбаль; повязанный платком был его денщик Морель.
Когда Морель выпил водки и доел котелок каши, он вдруг болезненно развеселился и начал не переставая говорить что то не понимавшим его солдатам. Рамбаль отказывался от еды и молча лежал на локте у костра, бессмысленными красными глазами глядя на русских солдат. Изредка он издавал протяжный стон и опять замолкал. Морель, показывая на плечи, внушал солдатам, что это был офицер и что его надо отогреть. Офицер русский, подошедший к костру, послал спросить у полковника, не возьмет ли он к себе отогреть французского офицера; и когда вернулись и сказали, что полковник велел привести офицера, Рамбалю передали, чтобы он шел. Он встал и хотел идти, но пошатнулся и упал бы, если бы подле стоящий солдат не поддержал его.
– Что? Не будешь? – насмешливо подмигнув, сказал один солдат, обращаясь к Рамбалю.
– Э, дурак! Что врешь нескладно! То то мужик, право, мужик, – послышались с разных сторон упреки пошутившему солдату. Рамбаля окружили, подняли двое на руки, перехватившись ими, и понесли в избу. Рамбаль обнял шеи солдат и, когда его понесли, жалобно заговорил:
– Oh, nies braves, oh, mes bons, mes bons amis! Voila des hommes! oh, mes braves, mes bons amis! [О молодцы! О мои добрые, добрые друзья! Вот люди! О мои добрые друзья!] – и, как ребенок, головой склонился на плечо одному солдату.
Между тем Морель сидел на лучшем месте, окруженный солдатами.
Морель, маленький коренастый француз, с воспаленными, слезившимися глазами, обвязанный по бабьи платком сверх фуражки, был одет в женскую шубенку. Он, видимо, захмелев, обнявши рукой солдата, сидевшего подле него, пел хриплым, перерывающимся голосом французскую песню. Солдаты держались за бока, глядя на него.
– Ну ка, ну ка, научи, как? Я живо перейму. Как?.. – говорил шутник песенник, которого обнимал Морель.
Vive Henri Quatre,
Vive ce roi vaillanti –
[Да здравствует Генрих Четвертый!
Да здравствует сей храбрый король!
и т. д. (французская песня) ]
пропел Морель, подмигивая глазом.
Сe diable a quatre…
– Виварика! Виф серувару! сидябляка… – повторил солдат, взмахнув рукой и действительно уловив напев.
– Вишь, ловко! Го го го го го!.. – поднялся с разных сторон грубый, радостный хохот. Морель, сморщившись, смеялся тоже.
– Ну, валяй еще, еще!
Qui eut le triple talent,
De boire, de battre,
Et d'etre un vert galant…
[Имевший тройной талант,
пить, драться
и быть любезником…]
– A ведь тоже складно. Ну, ну, Залетаев!..
– Кю… – с усилием выговорил Залетаев. – Кью ю ю… – вытянул он, старательно оттопырив губы, – летриптала, де бу де ба и детравагала, – пропел он.
– Ай, важно! Вот так хранцуз! ой… го го го го! – Что ж, еще есть хочешь?
– Дай ему каши то; ведь не скоро наестся с голоду то.
Опять ему дали каши; и Морель, посмеиваясь, принялся за третий котелок. Радостные улыбки стояли на всех лицах молодых солдат, смотревших на Мореля. Старые солдаты, считавшие неприличным заниматься такими пустяками, лежали с другой стороны костра, но изредка, приподнимаясь на локте, с улыбкой взглядывали на Мореля.
– Тоже люди, – сказал один из них, уворачиваясь в шинель. – И полынь на своем кореню растет.
– Оо! Господи, господи! Как звездно, страсть! К морозу… – И все затихло.
Звезды, как будто зная, что теперь никто не увидит их, разыгрались в черном небе. То вспыхивая, то потухая, то вздрагивая, они хлопотливо о чем то радостном, но таинственном перешептывались между собой.

Х
Войска французские равномерно таяли в математически правильной прогрессии. И тот переход через Березину, про который так много было писано, была только одна из промежуточных ступеней уничтожения французской армии, а вовсе не решительный эпизод кампании. Ежели про Березину так много писали и пишут, то со стороны французов это произошло только потому, что на Березинском прорванном мосту бедствия, претерпеваемые французской армией прежде равномерно, здесь вдруг сгруппировались в один момент и в одно трагическое зрелище, которое у всех осталось в памяти. Со стороны же русских так много говорили и писали про Березину только потому, что вдали от театра войны, в Петербурге, был составлен план (Пфулем же) поимки в стратегическую западню Наполеона на реке Березине. Все уверились, что все будет на деле точно так, как в плане, и потому настаивали на том, что именно Березинская переправа погубила французов. В сущности же, результаты Березинской переправы были гораздо менее гибельны для французов потерей орудий и пленных, чем Красное, как то показывают цифры.
Единственное значение Березинской переправы заключается в том, что эта переправа очевидно и несомненно доказала ложность всех планов отрезыванья и справедливость единственно возможного, требуемого и Кутузовым и всеми войсками (массой) образа действий, – только следования за неприятелем. Толпа французов бежала с постоянно усиливающейся силой быстроты, со всею энергией, направленной на достижение цели. Она бежала, как раненый зверь, и нельзя ей было стать на дороге. Это доказало не столько устройство переправы, сколько движение на мостах. Когда мосты были прорваны, безоружные солдаты, московские жители, женщины с детьми, бывшие в обозе французов, – все под влиянием силы инерции не сдавалось, а бежало вперед в лодки, в мерзлую воду.
Стремление это было разумно. Положение и бегущих и преследующих было одинаково дурно. Оставаясь со своими, каждый в бедствии надеялся на помощь товарища, на определенное, занимаемое им место между своими. Отдавшись же русским, он был в том же положении бедствия, но становился на низшую ступень в разделе удовлетворения потребностей жизни. Французам не нужно было иметь верных сведений о том, что половина пленных, с которыми не знали, что делать, несмотря на все желание русских спасти их, – гибли от холода и голода; они чувствовали, что это не могло быть иначе. Самые жалостливые русские начальники и охотники до французов, французы в русской службе не могли ничего сделать для пленных. Французов губило бедствие, в котором находилось русское войско. Нельзя было отнять хлеб и платье у голодных, нужных солдат, чтобы отдать не вредным, не ненавидимым, не виноватым, но просто ненужным французам. Некоторые и делали это; но это было только исключение.