Атака Plug and Pwn: фальшиві USB-пристрої зламують Windows

Атака Plug and Pwn: фальшиві USB-пристрої зламують Windows 1

Дослідники з кібербезпеки розкрили нові атаки під назвою “Plug and Pwn”, які використовують функцію Windows Plug and Play для примусового встановлення вразливого або незахищеного програмного забезпечення від виробника та отримання привілеїв SYSTEM.

Дослідження, представлене на конференції DEF CON 34 експертами з безпеки Алехандро Ернандо та Борхою Мартінесом, експлуатує механізм автоматичного розпізнавання нових підключених апаратних засобів, пошуку відповідних пакетів драйверів та встановлення програмного забезпечення виробника від імені облікового запису NT AUTHORITYSYSTEM.

Використовуючи програмне забезпечення для емуляції USB-пристроїв, дослідники змогли змусити Windows встановлювати підписані пакети від виробників, які містили компоненти з уразливостями, що могли бути використані для отримання привілеїв SYSTEM.

Атака Plug and Pwn: фальшиві USB-пристрої зламують Windows 2

Деякі з продемонстрованих атак не потребують жодної взаємодії з користувачем або навіть увійти в систему, тоді як іншу можна виконати віддалено через RDP без фізичного підключення USB-обладнання до цільового комп’ютера. Додаткова інформація доступна на plugandpwn.com.

Використання Windows Plug and Play

Windows підтримує функцію співінсталяторів (co-installers), яка автоматично завантажує та встановлює програмне забезпечення та драйвери від виробника при підключенні нового USB-пристрою до комп’ютера.

У 2021 році BleepingComputer повідомляв про те, як ця функція була зловжита разом із вразливістю Razer Synapse, щоб надати звичайному користувачу Windows привілеї SYSTEM, просто підключивши мишу або клавіатуру Razer.

При підключенні пристрою Razer Windows автоматично завантажував та запускав інсталятор Razer Synapse з правами SYSTEM. Помилка в інсталяторі дозволила звичайному користувачеві запустити PowerShell з інтерфейсу встановлення, внаслідок чого командний рядок успадкував привілеї інсталятора.

BleepingComputer протестував цю вразливість на той час і підтвердив, що її можна використати для отримання привілеїв SYSTEM приблизно за дві хвилини.

Аналітик вразливостей Вілл Дорманн тоді попереджав, що подібні вразливості, ймовірно, існують і в іншому програмному забезпеченні, що автоматично встановлюється через Windows Plug and Play.

Ернандо повідомив BleepingComputer, що Plug and Pwn належить до того ж сімейства атак, але нове дослідження зосереджується більше на самому шляху встановлення пристроїв у Windows.

“Баг Razer належить до того ж сімейства. Різниця в тому, що ми зосередилися на самому шляху встановлення, а не на інсталяторі якогось виробника”, — сказав Ернандо BleepingComputer.

“Деякі з наших ланцюжків не потребують кліків та не вимагають сесії з логіном, а один з них працює через RDP взагалі без обладнання”.

Дослідники зазначають, що основна проблема полягає в тому, що коли Windows виявляє нове обладнання, вона може автоматично отримати відповідний підписаний пакет і виконати компоненти, надані виробником, з правами SYSTEM.

Цей привілейований шлях встановлення може включати співінсталятори, служби, допоміжні виконувані файли та драйвери, без відображення запиту UAC операційною системою.

Від фальшивих USB-пристроїв до віддалених RDP-атак

Дослідники розповіли BleepingComputer, що вони використовували FaceDancer з обладнанням Cynthion та GreatFET, підключеним до невеликого Linux-комп’ютера, для емуляції USB-пристроїв.

FaceDancer — це програмна структура для емуляції USB-пристроїв, яка дозволяє дослідникам визначати дескриптори, інтерфейси, класи пристроїв та кінцеві точки, які комп’ютер використовує для ідентифікації підключених пристроїв.

Підключення обладнання, що працює під керуванням FaceDancer, до комп’ютера може змусити операційну систему поводитися так, ніби було підключено певний USB-пристрій.

За допомогою FaceDancer дослідники змогли змусити своє обладнання виглядати для Windows як специфічні USB-пристрої, що змусило операційну систему розпізнати емульоване обладнання, а також знайти та встановити відповідні пакети драйверів від виробника.

Деякі ланцюжки атак також вимагають, щоб емульований пристрій від’єднався, а потім знову з’явився з іншою ідентифікацією пристрою.

“Кілька наших ланцюжків залежать від представлення пристрою як композитного, щоб Windows завантажила usbccgp.sys і самостійно перерахувала кожен інтерфейс, що дозволяє йому відповідати пакету виробника, а не вбудованому драйверу”, — пояснив Ернандо BleepingComputer.

“Нам також потрібно перераховувати на вимогу, відкидаючи пристрій і повертаючись під іншою ідентифікацією”.

У своїй демонстрації атаки без кліків дослідники використали поведінку в інсталяційних пакетах Sierra Wireless та Sony FeliCa.

Атака спочатку маскується під пристрій Sierra Wireless, змушуючи Windows встановлювати програмне забезпечення, яке може бути використане для зміни налаштувань DNS комп’ютера.

Потім дослідники маскують пристрій Sony FeliCa, що змушує Windows встановлювати додаткове програмне забезпечення Sony, яке завантажує файли через незашифроване з’єднання.

Контролюючи налаштування DNS системи, дослідники можуть перенаправляти ці завантаження на керований ними сервер і використовувати вразливість у програмному забезпеченні Sony для розміщення шкідливого файлу в системі з правами SYSTEM.

Нарешті, вони знову маскують пристрій Sierra, змушуючи Windows завантажити шкідливий файл і дозволяючи зловмисникам відкрити зворотний шел з привілеями SYSTEM.

Дослідники продемонстрували цей ланцюжок на повністю оновленому комп’ютері з Windows 11 без входу в систему, зазначивши, що повна атака займає приблизно п’ять хвилин.

Атака Plug and Pwn: фальшиві USB-пристрої зламують Windows 3

Відповідаючи на запитання, чи можна провести цю атаку за допомогою невеликих портативних пристроїв, Ернандо зазначив, що їхнє дослідницьке обладнання вже достатньо портативне для перенесення, і Raspberry Pi, що працює в режимі USB-гаджета, теоретично повинен бути здатним провести цю атаку.

Однак, він додав, що Flipper Zero наразі не може виконувати атаки FaceDancer.

“Flipper Zero — ні. Для нього немає бекенду FaceDancer, і структура не працюватиме на ньому”, — сказав Ернандо.

“Його режим BadUSB придатний для HID, але довільні композитні дескриптори та перерахування вимагатимуть проекту прошивки”.

Дослідники також продемонстрували так званий “NoPlug & Pwn”, який не потребує емуляції фізичного обладнання.

Натомість атака використовує перенаправлення USB через RDP — функцію, яка дозволяє USB-пристроям, підключеним до локального комп’ютера користувача, бути доступними в сеансі віддаленого Windows.

Замість перенаправлення фактичного пристрою, дослідники створили клієнт RDP на Python, який надсилає специфічні USB-дескриптори через це перенаправлення USB під час підключення через RDP.

Віддалений хост Windows потім розглядає фальшиві дескриптори як легітимний USB-пристрій, підключений до гостьового комп’ютера, створює відповідний пристрій Plug and Play на хості, що призводить до встановлення відповідних драйверів та програмного забезпечення від виробника.

У демонстрації дослідників вони маскували камеру Intel RealSense, пакет якої для Windows Update містить співінсталятор, що може бути використаний через DLL-hijacking для отримання привілеїв SYSTEM.

“Драйвер USB-хабу сервера перераховує наш фантомний пристрій, і PnP Windows робить саме те, що робив у фізичній демонстрації: він зіставляє ідентифікатор обладнання та встановлює драйвер, як SYSTEM”, — пояснюють дослідники на сайті Plug and Pwn.

RDP-атака працює лише на системах, де увімкнено перенаправлення USB, що, за словами Ернандо, є поширеним у середовищах віртуальних робочих столів.

Вимкнення співінсталяторів допомагає, але не зупиняє Plug and Pwn

Вілл Дорманн запропонував, що адміністратори Windows, які стурбовані таким типом атак, можуть увімкнути значення реєстру ‘DisableCoInstallers’, яке запобігає виконанню пакетів драйверів співінсталяторів під час встановлення пристрою.

Для цього відкрийте Редактор реєстру та перейдіть до розділу HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionDevice Installer.

У цьому розділі створіть значення DWORD-32 з назвою DisableCoInstallers і встановіть його значення на 1, як показано нижче.

Коли BleepingComputer запитав, чи буде це ефективно блокувати Plug and Pwn, Ернандо відповів, що це завадить деяким із продемонстрованих атак, включаючи атаку на Sony FeliCa та RDP-атаку на Intel RealSense.

Однак, це не усуває базову поверхню атаки.

“Це допомагає, і це зруйнує частини того, що ми показали”, — сказав Ернандо BleepingComputer.

“Проте це не зупиняє клас атаки. Це залишає незмінними перерахування PnP, роздільну здатність Windows Update, етап встановлення драйверів, обробку INF та служби, встановлені через INF”.

Дослідники проілюстрували це іншою атакою з використанням пакетів Wacom та Atheros, яка експлуатує вразливість (CVE-2019-10617) у службі драйвера Atheros, встановленій через INF-файл, а не через співінсталятор.

Ернандо рекомендує організаціям з конфіденційними системами використовувати ‘DisableCoInstallers’ разом із додатковими обмеженнями пристроїв.

“У будь-якій чутливій системі я б поєднав це з обмеженнями встановлення пристроїв або білими списками ідентифікаторів обладнання, а також вимкнув перенаправлення пристроїв PnP на RDP та VDI-хостах, які цього не потребують (`fDisablePNPRedir`)”, — сказав Ернандо BleepingComputer.

Дослідники не повідомили про всі сценарії атак як про нові вразливості окремим постачальникам, зазначивши, що багато з них не є самостійними недоліками безпеки і стають експлуатованими лише в поєднанні з іншими функціональними можливостями.

Атака Plug and Pwn: фальшиві USB-пристрої зламують Windows 4

Після того, як зловмисники отримують дійсні облікові дані, блокується лише 37% їхніх дій

Загальні показники запобігання можуть приховувати те, що відбувається після початкового доступу. Як тільки зловмисники використовують дійсні облікові дані, рівень запобігання різко падає.

Blue Report 2026 вимірює рівень захисту по техніках на основі 338 мільйонів симуляцій, проведених у виробничих середовищах клієнтів.

За даними порталу: www.bleepingcomputer.com

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *