The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Google представил блокировщик подстановки ввода через вредоносные USB-устройства

12.03.2020 11:19

Компания Google опубликовала утилиту ukip, позволяющую отслеживать и блокировать атаки, осуществляемые с использованием вредоносных USB-устройств, симулирующих USB-клавиатуру для скрытой подстановки фиктивных нажатий клавиш (например, в ходе атаки может быть симулирована последовательность нажатий, приводящих к открытию терминала и выполнению в нём произвольных команд). Код написан на языке Python и распространяется под лицензией Apache 2.0.

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

Вредоносная активность определяется на основе эвристического анализа характера ввода и задержек между нажатиями клавиш - атака обычно проводится в присутствии пользователя и для того, чтобы она осталась незамеченной, симулированные нажатия отправляются с нетипичными для обычного клавиатурного ввода минимальными задержками. Для изменения логики определения атак предложены две настройки KEYSTROKE_WINDOW и ABNORMAL_TYPING (первая определяет число нажатий для анализа, а вторая пороговый интервал между нажатиями).

Атака может быть совершена при помощи не вызывающего подозрений устройства с модифицированной прошивкой, например, симулировать клавиатуру можно в USB-накопителе, USB-хабе, web-камере или смартфонеKali NetHunter предлагается специальная утилита для подстановки ввода с подключённого к USB-порту смартфона под управлением платформы Android). Для усложнения атак через USB помимо ukip также можно использовать пакет USBGuard, который разрешает подключение устройств только из белого списка или блокирует возможность подключения посторонних USB-устройств во время блокировки экрана и не допускает работу с такими устройствами после возвращения пользователя.

  1. Главная ссылка к новости (https://opensource.googleblog....)
  2. OpenNews: Новый вид атак с использованием перепрограммированных USB-устройств
  3. OpenNews: Открыт код инструментария для проведения атак через модификацию прошивок USB-накопителей
  4. OpenNews: Представлена техника атаки, позволяющая шпионить за соседними USB-устройствами
  5. OpenNews: Атака на заблокированный ПК через USB
  6. OpenNews: Атака с использованием вредоносных устройств с интерфейсом Thunderbolt
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52527-badusb
Ключевые слова: badusb, ukip, usb, attack, usbguard
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (64) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, iPony129412 (?), 11:43, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А USB Condom как работает?
     
     
  • 2.3, Аноним (3), 11:48, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Блокирует передачу инфекц^W информации полностью, пропуская только питание.
     
     
  • 3.16, Аноним (16), 12:25, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По питанию эксплоит ща найдём
     
     
  • 4.17, Патриарх Кирилл (?), 12:50, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    USB Power Delivery использует шину VBus для передачи информации. Может как-то с этим можно поизвращаться.
     
     
  • 5.53, Аноним (53), 00:11, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > USB Power Delivery использует шину VBus для передачи информации. Может как-то с
    > этим можно поизвращаться.

    Да легко, заглючите питальник и получите 20V из него, в свой 5V девайс. Правда вот отладка сплойта дороговата будет...

     
  • 4.19, Аноним (19), 13:49, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ктобы сомневался в его отсутвии.

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

     
     
  • 5.20, Аноним (19), 13:51, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    * Ктобы сомневался в его/экплоита наличии.
     
  • 5.49, Lex (??), 22:16, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Если ты про [питание] по одному проводу, то речь о подобии обычного волновода, по которому передаются ВЧ ЭМ-волны.
    Но компьютерный БП это не потянет уже даже потому, что диоды на входе стоят низкочастотные и очень быстро придут в негодность, прихватив с собой часть БП, а то и всего компа.
     
  • 5.54, Аноним (-), 00:15, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Что там. Я вот вчера выяснил что выключатель на удлинителе - выключает
    > только фазу,

    Хорошо если фазу. А то с "электриками" как ща у россиян он может отключать и ноль. При этом на вид электричества вроде бы нет, но если взяться за фазу и что-то заземленное - сюрприз!!!!

     
     
  • 6.67, Ordu (ok), 15:00, 16/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ты можешь пригласить "электрика" не как у россиян, он тебе подключит как надо. А затем, если ты перевернёшь вилку удлинителя в розетке, у тебя в удлинителе фаза с нулём поменяются местами и выключатель на удлинителе будет размыкать ноль вместо фазы. То есть не электрики виноваты, а твои кривые руки.
     
  • 5.55, Аноним (55), 00:17, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > и как то не вспомнить про передачу данных и питания по всего одному проводу...

    Можно и без проводов, Тесла одобряет. Вон кто-то даже накодил на мелкой атмелке ответку Qi, вместо спецчипов в "подложках-приемниках".

     
     
  • 6.59, Crazy Alex (ok), 21:45, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    где?
     
     
  • 7.61, Аноним (-), 02:44, 14/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Тут -> http://blog.vinu.co.in/2019/04/qi-wireless-power-receiver-from-scratch.html

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

    Caveat: резонансная штука - параметры контура берутся похожими на то что у автора. Катуха из литцендрата по соображениям КПД, на частоте в 150кГц скинэффект не пустой звук, ток только по поверхности провода течет, так что взять 1 жирный провод вместо литца угрохает КПД.

     
  • 5.56, draw1 (?), 01:08, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Я вот вчера выяснил что выключатель на удлинителе - выключает только фазу,
    > оставляя один провод всё же подключённым,...

    Прикольный удлиннитель у вас - умеет определять на каком из проводов фаза и отрубать именно его! Дорогой наверное... Или самодельный? И что именно он там реально отрубает зависит от того как вставить вилку?

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

     
     
  • 6.57, Perlovka (ok), 03:42, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    В Израиле, например, фаза всегда с правой стороны розетки, и по другому вилку не вставить. Во многих странах Европы тоже так.
     
     
  • 7.62, Аноним (62), 02:52, 14/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Стандартная евровилка вообще-то симметричная. Россияне в этом плане стали типичными европейцами, даже 230V формально заявили, менять конечно ничего не меняли, 220 всегда немного завышали чтобы пики удержать.
     
     
  • 8.69, Аноним (69), 17:06, 18/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А трехфазное напряжение так и осталось 380 вольт А не 400 вольт, как должно бы ... текст свёрнут, показать
     
  • 5.68, Аноним (69), 16:59, 18/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Я вот вчера выяснил что выключатель на удлинителе - выключает только фазу,

    Это у Вас явно "неправильный удлинитель". В "правильном" удлинителе встроенный в него выключатель рвет и ноль и фазу. Но вот провод "защитного заземления" рвать запрещено. Ищите "эксплоит" через проводник защитного заземления. :)

     

  • 1.2, InuYasha (?), 11:47, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    fNextInputTime += random(0.0f, 1.0f);
     
     
  • 2.6, A.Stahl (ok), 11:55, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не сработает: нужно быстро вводить чтобы пользователь не заметил. А он сидит и пялится в монитор. Прямо сейчас. А быстрый ввод не заметит пользователь, но заметит эта гугло-хрень.
     
     
  • 3.22, Аноним (22), 14:10, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Бред Пользователь далеко не всё время сидит за ПК К тому же, вводить то надо к... большой текст свёрнут, показать
     
     
  • 4.26, Аноним (26), 16:09, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Когда пользователь за компьютером не сидит можно на прямую подключится или просто вводить текст руками и никакая эвристика тебя не поймает.
     
  • 4.30, Аноним (30), 17:23, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Пользователь далеко не всё время сидит за ПК.

    И далеко не всегда, когда пользователь не сидит за ПК, этот самый ПК включен.

     

  • 1.4, Аноним (3), 11:50, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    Это они так мягко переместили свой анализатор поведения юзера с браузера прямо в систему? Тонко.
     
     
  • 2.5, Аноним (5), 11:54, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И устройства с результатами анализов необходимо будет возвращать в корпорацию бобра ;)
     
  • 2.7, Ano (?), 11:57, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ага и написали его на питоне ( чтоб никто не догадался ), потом сделали OpenSource , ведь питон такой "компилируемый", а его знание, требует десятков лет обучения и "никто не догадается" /irony
     
     
  • 3.10, Аноним (5), 12:06, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А когда KEYSTROKE_WINDOW ( определяет число нажатий для анализа ) начнет потихонечку увеличиваться, то потребуются подключить службу от корпорации. И дя, позвольте Ваш аккаут хуххле ;)
     
  • 2.24, Аноним (24), 16:05, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    не удивлюсь, если в этом системДном зонде обнаружат дыры.
     
  • 2.27, Аноним (26), 16:10, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Можно легко и непринужденно фингерпринтить неугодных.
     

  • 1.8, Аноним (8), 11:58, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Проблема в том, что когда этот питоний скрипт сдетектирует вредоносную активность, она уже будет осуществлена.
     
     
  • 2.12, A.Stahl (ok), 12:16, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Лучше узнать о беде сразу после её наступления чем не узнать вообще или узнать через неделю когда песец уже поселится на чердаке.
     
     
  • 3.14, Аноним (16), 12:20, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Если вас не заботила безопасность устройства до проблемы, то вам и после обнаружения будет плевать. Так показывает практика, когда люди ставят антивирусы уже после того, как шифратор выведет на экран "gg bro". Не, конечно, если вам удобнее держать прогу, которая заставляет что-то делать крюк вместо наиболее короткого пути, то можете вообще виртуалками обмазаться, чтобы точно можно было любую проблему исправить.
     
  • 2.13, Аноним (16), 12:17, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А хомякам норм. Никто не любит профилактику, все любят лоботомию и кремацию
     
  • 2.28, Аноним (26), 16:12, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Если он срабатывает даже на 10 символах набранных с задержкой 10 мсек. То ничего ты там не осуществишь кроме rm **** У тебя устройство отрубится на уровне драйвера.
     
     
  • 3.47, Аноним (-), 21:47, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Эм, процессор за 10 мсек успевает выполнить довольно много команд, мягко говоря. Если, конечно, не на пихоне это кодить. Там можно половину этой, как ее, бизнеслогики за это время посчитать.
     

  • 1.9, Аноним (8), 12:01, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >setup.sh
    >function install_virtual_env() {

    Это заразная неизлечимая болезнь - venv головного мозга.

     
     
  • 2.11, Аноним (11), 12:10, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > function prepare_metadata() {
    >   ALLOWLIST_FILE=/etc/ukip/allowlist
    >   KEYCODES_FILE=/etc/ukip/keycodes
    >
    >   sudo mkdir /etc/ukip/

    похоже два автора писали, один хотел в HOME ставить, а второй в /etc :-)

     
     
  • 3.15, Аноним (16), 12:22, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем подобную прогу ставить в home? Это же чисто системная весчь, которая должна работать конкретно на этой железке. Или это такой хитрый план, чтобы говнодистры, которые не смогли в нормальное HFS, работали с этой штукой?
     
  • 2.45, Аноним (45), 21:44, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Это заразная неизлечимая болезнь - venv головного мозга.

    Это ж гугл вебманки, они "для повышения безопасности" традиционно качнут половину интернета, сделав какой-нибудь curl | sh, или просто eval(), по своей давней традиции. Конечно же на хрен знает каких данных от хрен знает кого! Поэтому через флешки не хакнут, это слшиком канительно. Вгрузить левый скрипт сильно проще. Зто смотрите, никто через usb не хакает, это ж огромные нудные талмуды USB IF читать надо вместо наколенного скриптика :D

     

  • 1.18, TormoZilla (?), 13:34, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В режиме защиты при выявлении потенциально вредоносного устройства осуществляется его отсоединение от системы на уровне драйвера.

    Почему не eject?

     
     
  • 2.46, Аноним (45), 21:45, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Что такое eject для клавиатуры?! Это как?! :)
     

  • 1.21, АНБ (?), 14:04, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Сервис системды на питоне. Комбо.

    Авторы нам как бы говорят "мы тут какую-то быстросклепанную на коленке фигню сделали, не хотите вместо нас потестировать?"

     
     
  • 2.29, deanon (?), 16:39, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    не всеж только на баше писать сервисы к системд
     

  • 1.23, Аноним (24), 16:04, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    я как-то доверяю своим флэшкам больше, чем гуглоненужнοдзонду.
     
     
  • 2.34, Вулх (?), 18:43, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Причём тут ТВОИ флешки? Это штука надо, когда в твой комп пихают как раз левые флешки.
    Например часто приносят тебе на флешке документы какие то.
     
     
  • 3.36, Аноним (24), 19:40, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Если тебе в твою компу вставляют левые флэшаки... сочувствую тебе. Организация работы построена явно как-то ненормально. Хотя... что ещё можно ожидать от "владельцев" компы с ненужнойд.
     
     
  • 4.60, Crazy Alex (ok), 21:51, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну, в случае винды - очеидный пример - сервис распечатки, на флешках там тащат - только в путь. Но вот чтобы линуксовый комп, в который флешки пихают постоянно и разные - как-то в голову не приходит, это да
     
     
  • 5.66, Аноним (-), 00:40, 15/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот на линухе это делать намного логичнее, возможно даже без udev:
    - Вгрузить только mass storage и возможно uas.
    - Остальное идет нафиг.

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

     

  • 1.25, Аноним (26), 16:06, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Лол так в этой тулзе тоже уязвимость. Можно симулировать задержки между нажатиями с такой же вероятностью как заложены в этой программе. И подбирать эти задержки можно тоже с помощью этой же программой.
     
     
  • 2.31, Аноним (30), 17:27, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сделаешь задержку - и пользователь обнаружит ввод самостоятельно, просто глядя на монитор, пья чаёк и наблюдая за тем, что там неторопливо и мееее...

    ...ееее....

    ...ееедленно происходит нечто странное.

     

  • 1.32, Аноним (32), 17:35, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Компания Google Опубликовала Утилиту.. тьфу, лажа же! "Вышел сомнительный питонячий скриптец от гугеля" - так оно правильнее.
     
     
  • 2.43, Аноним (-), 21:31, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Надеюсь, они не забыли сделать eval() на данных дескриптора? :)
     
  • 2.51, Аноним (24), 23:16, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    причём для какой-то системды :)
     

  • 1.35, Нонон (?), 19:32, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Думаю можно придумать реализации проще чем антивирус..

    Чтоб в самой ос можно было выбрать юсб для клавиатуры.

    А не ставить фильтры на трафик

     
  • 1.37, Аноним (37), 19:46, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >ukip

    британские евроскептики одобряют!

     
  • 1.38, Your Anonymous (?), 20:01, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Кейлоггер от Гугла под  видом блокировки нежелательных USB устройств? Тонкий троллинг.
     
  • 1.39, Аноним (39), 20:29, 12/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    В Linux нет же вирусов?
     
     
  • 2.40, Аноним (24), 20:42, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    дело немного не так, как ты подумал... вредоносная клава сама открывает терминал и печатает там "rm -rf * <enter>"
     
     
  • 3.48, Аноним (-), 21:48, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > вредоносная клава сама открывает терминал и печатает там "rm -rf * <enter>"

    Т.е., пока печатает, она еще и _успешно_ получает привилегии суперпользователя за долю секунды? ДАЙТЕ ДВЕ!

     
     
  • 4.50, Аноним (24), 23:11, 12/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    все вопросы - к гуглу, это его затея про "вредоносные" клавы
     
  • 4.52, Аноним (53), 00:08, 13/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Т.е., пока печатает, она еще и _успешно_ получает привилегии суперпользователя за долю
    > секунды? ДАЙТЕ ДВЕ!

    Да зачем, ты и сам их получишь. Клаве достаточно лихо влупить в терминал команду :)

     

  • 1.63, Аноним (63), 08:27, 14/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    кейлогер который встраивается прямо в сустемдэ. всё к этому уже давно шло, всех поздравляю с наступившим будущим.

    а что будет если поставить два кейлогера: один для сустемдэ, второй для вейленда, какой победит?

     
  • 1.64, Аноним (64), 10:11, 14/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Для усложнения атак через USB помимо ukip также можно использовать пакет USBGuard, который разрешает подключение устройств только из белого списка

    А можно просто настроить правила для eudev/udev:

    https://wiki.gentoo.org/wiki/Allow_only_known_usb_devices

     
     
  • 2.65, Аноним (-), 00:36, 15/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Мне почему-то так кажется, что при желании вздрючить гентушника, логичнее атаковать всю их пихтонрасию в билдсистеме, она наверняка хлипкая и ничерта не проверяет. А то что оно потом сорцы малость пропатчит - так скрипкиди узнают что безопасность определяется самым слабым звеном системы.

    Туда же и растовиков-затейников с их фирмварями канпеляемыми путем curl | sh, очень секурно :)

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру