BLUFFS — вразливість у Bluetooth, що дозволяє провести MITM-атаку

Даніеле Антоніолі (Daniele Antonioli), дослідник безпеки Bluetooth, який раніше розробив техніки атак BIAS, BLUR і KNOB, виявив дві нові вразливості (CVE-2023-24023) у механізмі узгодження сеансів Bluetooth, що зачіпають усі реалізації Bluetooth, що підтримують режими захищеного зв'язку. » та «Secure Simple Pairing», що відповідають специфікаціям Bluetooth Core 4.2-5.4. Як демонстрація практичного застосування виявлених уразливостей розроблено 6 варіантів атак, що дозволяють вклинитися у з'єднання між раніше сполученими Bluetooth-пристроями. Код з реалізацією методів атаки та утиліти для перевірки наявності вразливостей опубліковано на GitHub.

Вразливості були виявлені в ході аналізу описаних у стандарті механізмів досягнення прямої секретності (Forward and Future Secrecy), що протидіють компрометації сеансових ключів у разі визначення постійного ключа (компрометація одного з постійних ключів не повинна призвести до розшифрування раніше перехоплених або майбутніх сеансів) та повторного використання ключів (ключ від одного сеансу не може бути застосований до іншого сеансу). Знайдені вразливості дозволяють обійти вказаний захист та повторно використовувати ненадійний сеансовий ключ у різних сеансах. Уразливості викликані недоробками в базовому стандарті, не специфічні для окремих Bluetooth-стеків, і виявляються у чіпах різних виробників.

 BLUFFS - вразливість у Bluetooth, що дозволяє провести MITM-атаку

Запропоновані методи атак реалізують різні варіанти організації спуфінгу класичних (LSC, Legacy Secure Connections на базі застарілих криптографічних примітивів) та захищених (SC, Secure Connections на базі ECDH та AES-CCM) Bluetooth-з'єднань між системою та периферійним пристроєм, а також атак для з'єднань у режимах LSC та SC. Передбачається, що всі реалізації Bluetooth, що відповідають стандарту, схильні до тих чи інших варіантів атаки BLUFFS. Робота методу продемонстрована на 18 пристроях таких компаній, як Intel, Broadcom, Apple, Google, Microsoft, CSR, Logitech, Infineon, Bose, Dell і Xiaomi.

 BLUFFS - вразливість у Bluetooth, що дозволяє провести MITM-атаку

Суть уразливостей зводиться до можливості без порушення стандарту примусово відкотити з'єднання на використання старого режиму LSC і ненадійного короткого сесійного ключа (SK) через вказівку в процесі узгодження з'єднання мінімально можливої ​​ентропії та ігноруючи вміст відповіді з параметрами аутентифікації (CR), що призводить до CR ключа на основі постійних вхідних параметрів (сесійний ключ SK обчислюється як KDF від постійного ключа (PK) та узгоджених під час сеансу параметрів). Наприклад, атакуючий в ході MITM-атаки може замінити в процесі узгодження сеансу параметри 𝐴𝐶 і 𝑆𝐷 на нульові значення, а ентропію 𝑆𝐸 виставити в значення 1, що призведе до формування сесійного ключа ? складає 1 байт (7 біт), що за рівнем надійності можна порівняти з підбором ключів DES).

Якщо з'єднання, що атакує в процесі узгодження, вдалося домогтися використання більш короткого ключа, далі він може за допомогою підбору (brute force) визначити постійний ключ (PK), який використовується для шифрування і домогтися розшифровки трафіку між пристроями. Так як в ході MITM-атаки можна ініціювати використання одного і того ж ключа шифрування, якщо цей ключ буде підібраний, його можна задіяти і для розшифровки всіх минулих і майбутніх сеансів, перехоплених атакуючим.

 BLUFFS - вразливість у Bluetooth, що дозволяє провести MITM-атаку

Для блокування вразливостей дослідником запропоновано внести до стандарту зміни, що розширюють протокол LMP та змінюють логіку використання KDF (Key Derivation Function) для формування ключів у режимі LSC. Зміна не порушує зворотну сумісність, але призводить до включення розширеної LMP-команди та необхідності надсилання додаткових 48 байтів. Організація Bluetooth SIG, що відповідає за розробку стандартів Bluetooth, як захист запропонувала відхиляти з'єднання по шифрованому каналу зв'язку з ключами, розміром до 7 байт. Реалізаціям, які завжди застосовують рівень Security Mode 4 Level 4, рекомендується відхиляти з'єднання з ключами, розміром до 16 байт.

Джерело: opennet.ru

Додати коментар або відгук