.454 Profile picture
May 10 36 tweets 7 min read Read on X
За що кібербезпека так не любить USB порти? Часто можна почути від людей "все повимикали, а данні всеодно злили". Нажаль USB це не тільки порт який надає можливість щось скинути з компа, але і щось туди залити...>>> Image
Давайте подивимось яку загрозу може нести "флешка" та навіть зробимо небезпечний пристрій самі. Допоможуть нам в цьому оці дві платки по 250 грн. (флешка для розміру) >>> Image
Всі знають що запускати файли із підозрілих флешок не варто. Але ж якщо я знайшов гарну флешку то просто можу ії відформатувати і отримати халяву, так? Нажаль ні, не завжди
Вітаю в світі BadUSB, атаки яка публічно була представлена у 2014 році на Black Hat.
>>>
Ідея доволі проста "скористаємося зручністю сучасних ОС які автоматом підхоплюють девайси що підключаються". Якщо так, то чому не створити девайс який виглядає як флешка, але насправді є HID девайсом? Тобто мишкою чи клавіатурою. >>>
Жертва вставляє флешку в свій ПК, та підхоплюється як клавіатура і виконує скрипт який був запрограмований. А як відомо з клавіатури на ПК можна зробити буквально будь що.
>>>
Дії виконуються із швидкість автоматизованого пристроя, тож жертва може навіть не встигнути помітити віконце із терміналом яке зʼявилося на пів секунди, виконало скрипт та закрилося. >>>
Звісно що і до цього була історія: наприклад коли ОС запускали автоматом програми з CD - зʼявлялися пристрої які для ОС були як прогровачи CD дисків. Але із тим як девайси ставали менше, а порти універсальніші - атака отримала нове життя. >>>
Далі вже підклюється головний друг хакера - фантазія. Одна із відомих справ що розслідувалися ФБР у 2022, це атаки російського угрупування на американські компанії. >>>
Вони розсилали подарункові картки менеджменту із флешкою на якій пропонувалося переглянути додаткову інфо як нею скористатися. Флешка тим часом в кілька секунд підтягувала вірус через PowerShell скрипт. >>>
Поверхня атаки насправді дуже велика, це і компʼютерні кіоски протоколи яких можуть опрацьовуватии коди "медіа клавіш" типу "відкрити браузер". Маленький, непомітний пристрій може брутфорсити такі комбінаціі в секунди. >>>
Підключення такої флешки через OTG до телефону, і виконання скриптів вже там. Випадковий курʼєр який забув документи і просить вас швиденько роздрукувати з флешки. Екфільтрація данних, чи віддалене керування ПК через Wi-Fi які зараз є на борту BadUSB. >>>
Більш того, компанія Hak5 зараз продає зарядні кабелі які мають такий самий функціонал як і більші брати. Ціна такого девайсу не дуже велика, десь 120$ так само як і їх самий відомий девайс Rubber Ducky. >>> Image
Image
Мета цього треду пізнавальна, для кращої обізнаності і від цього побудовані кращого захисту. Для тих в кого нема зайвих 120$, ми зберемо BadUSB із паблік репозитарієв. Коштуватиме це всього 7$, але достатньо щоб перевірити ваш ПК на вразливість. >>>
Софт в них вже застарілий, тож має свої обмеження і питання. Втім для PoC більш ніж достатньо.
Існують два найбільш популярні проекти: на базі Arduino та Rasp Pi. Я обрав другий - він простіший в налаштуванні, та це більш універсальна платка якщо ви захочете ії перевикористати.>>
Репа розрахована на Pi Pico (W) його я взяв для демонстрації в якому зараз маленькому пристрої може бути захований Wi-Fi та BT. А також від себе додав RP2040-One від Waveshare. Вона не має бездротових можливостей, втім одразу йде у зручному форматі флешки. >>>
Я не буду розглядати варіанти які дуже легко замаскувати під справжню флешку із зрозумілих причин. Думаю по сайту Hak5 ви і самі бачите що кастомні девайси нічим не відрізняються. Навіть розпізнаються паралельно до HID як флешка із файлами.>>> Image
Image
Власне коли вже платки у вас, налаштування займає 5 хвилин. Переходимо у репу в кінці треду, там покроково розписаний процес.
Виглядає він глобально так:
1) Скачуємо та прошиваємо на девайс CircuitPython - це наш рушій що буде виконувати всю роботу. >>>
УВАГА! Саме на цьому кроці різниця між нашими двома чіпами тут ви маєте обрати CircuitPython саме для RP2040-One а не для Pico W як в репі. Також зверніть увагу що в репі версія пайтона нижча за актуальну. Тож треба підтягнути стару версію з їх S3 >>>
2) Закидаємо необхідні бібліотеки щоб пристрій мав змогу бути клавою
3) Закидаємо файли .py з клону репи
4) Якщо це Pico W - налаштовуємо точку доступу Wi-FI щоб ми могли підключитися віддалено до нашої BadUSB та правити/запускати пейлоад >>>
5) Заливаємо пейлоад. Підтримуються криптові мови DuckyScript 1.0 та деякі з 3.0
6) Після цього кроку обережно, девайс може перезапустись і виконати його одразу
7) PicoW на відміну від RP2040-One не буде при підключенні працювати як USB флешка звичайна, тільки виконувати скрипт>>
Тож вивчіть репу як його переводити в сетап мод щоб правити пейлоад (просто перемичку треба поставити)
Я накидав дуже загально, покроково розписано в самій репі, ДУЖЕ раджу прочитати там повністю README. >>>
Але якщо всеж щось пішло не так, там є інструкція як нюкнути вашу платку до факторі ресету і таким чином мати можливість почати все заново (я користувався хех). >>>
Тепер давайте подивимось як це працює на прикладі маку. Як бачите "працює без рук", достатньо щоб комп був розблокований. Для демонстрації я прописав затримки по кілька секунд >>>
А так наприклад підключення до AP точки яку роздає PicoW. Не розгулятися, але на те він і опенсорс). В цілому ви обмежені фантазією, наприклад зливати автоматично данні через Wi-Fi >>> Image
Image
Нюанси які я зустрічав налаштовуючи крізь час:
1) Із коробки воно працює із тією розкладкою що на компі, тож перед тестом ставте EN
2) TypeC мака погано працює із MicroUSB - це виглядає як неможливість скидати чи правити файли на PicoW. На іншому Windows компі все ок
>>>
3) Не завжди спрацьовувала перемичка для налаштування PicoW. Допомагало перевтикнути
>>>
Власне, тепер ви знаєте чому вставляти флешку погана ідея, але як від цього захиститися? Все насправді стандартно:
- Обмежені права користувача на PnP та по системі щоб мінімізувати імпакт
- Вайтліст HID девайсів через GPO
- UAC із паролем на Windows
>>>
- Блокування USB практикують, але я хз, як на мене таке
- Всякі спеціалізовані функції софта і АВ які блокують якщо клава починає друкувати швидше ніж може фізично користувач
- Фізичні фаерволли в які вставляється флешка - вони фільтрують погані девайси
>>>
- Не залишати девайси не заблокованими - атака може зайняти 20сек
- Ну і власне інструктаж користувачів
Далі будуть посилання на репи та інше. Гарного дня
Основна репа з якої я готую флешки у треді
github.com/dbisu/pico-duc…
Ще один старий але прикольний проект
github.com/RoganDawes/P4w…
BadUSB за допомогою M5Stick і прошивки Bruce
github.com/pr3y/Bruce/wik…
Hello World на Ducky Script
docs.hak5.org/hak5-usb-rubbe…
Комерційні рішення і захист
shop.hak5.org
RP2040-one в Україні, там і RaspPicoW
arduino.ua/prod5740-waves…
Всі данні наведені у треді лише із навчальною метою. Для запобігання зловживанням та обізнанності людей загрозам. Я не несу відповідальності за ваші протиправні дії із використанням цієї інформації

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with .454

.454 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(