Даниеле Антониоли, изследовател в областта на безопасността на Bluetooth, който преди това е разработвал техники за атаки BIAS, BLUR и KNOB, е открил две нови уязвимости (CVE-2023-24023) в механизма за установяване на сесии в Bluetooth, които засягат всичките реализации на Bluetooth, поддържащи режимите на защитено свързване 'Secure Connections' и 'Secure Simple Pairing', съответстващи на спецификациите Bluetooth Core 4.2-5.4. Като демонстрация на практическото приложение на откритите уязвимости са разработени 6 варианта на атаки, позволяващи внедряване в връзката между преди това свързани Bluetooth устройства. Кодът с реализация на методите за атака и инструментите за проверка на наличието на уязвимости е публикуван в GitHub.
Уязвимостите бяха открити по време на анализа на механизмите за постигане на пряка секретност, описани в стандарта, които противодействат на компрометирането на сесийните ключове в случай на определяне на постоянен ключ (компрометиране на един от постоянните ключове не трябва да доведе до декриптиране на преди това прихванати или бъдещи сесии) и повторното използване на сесийните ключове (ключът от една сесия не трябва да може да се прилага в друга сесия). Откритите уязвимости позволяват заобикаляне на указаната защита и повторното използване на ненадежден сесионен ключ в различни сесии. Уязвимостите произтичат от недостатъци в основния стандарт, не са специфични за отделни Bluetooth стекове и се проявяват в чипове на различни производители.

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

Същността на уязвимостите е възможността без нарушение на стандарта да се принуди връзката да премине към старата версия на LSC и несигурен кратък сесионен ключ (SK), чрез указване на минимално възможната ентропия в процеса на съгласуване на връзката и игнориране на съдържанието на отговора с параметри за удостоверяване (CR), което води до генериране на сесионен ключ на базата на постоянни входни параметри (сесионният ключ SK се изчислява като KDF от постоянния ключ (PK) и параметрите, съгласувани по време на сесията). Например, атакуващият по време на MITM-атака може да замени в процеса на съгласуване на сесията параметрите 𝐴𝐶 и 𝑆𝐷 с нулеви стойности, а ентропията 𝑆𝐸 да установи на стойност 1, което ще доведе до формиране на сесионен ключ 𝑆𝐾 с фактическа ентропия от 1 байт (обичайният минимален размер на ентропията е 7 байта (56 бита), което по отношение на надеждността е сравнимо с подбора на ключове DES).
Ако атакуващият по време на съгласуването на връзката е успял да постигне използването на по-кратък ключ, той може чрез подбора (brute force) да определи постоянния ключ (PK), използван за шифроване, и да успее да разшифрова трафика между устройствата. Тъй като по време на MITM-атака може да се иницира използването на един и същи шифров ключ, ако този ключ бъде подбран, той може да бъде използван и за разшифроване на всички минали и бъдещи сесии, прихванати от атакуващия.

За блокиране на уязвимостите изследователят предложи да се внесат изменения в стандарта, разширяващи протокола LMP и променящи логиката на използване на KDF (Key Derivation Function) при генериране на ключове в режим LSC. Изменението не нарушава обратната съвместимост, но води до включване на разширена LMP-команда и необходимостта от изпращане на допълнителни 48 байта. Организацията Bluetooth SIG, отговаряща за разработването на Bluetooth стандарти, предложи като мярка за защита да се отхвърлят връзки по шифрован канал с ключове с размер до 7 байта. На реализациите, които винаги прилагат ниво Security Mode 4 Level 4, се препоръчва да отхвърлят връзки с ключове с размер до 16 байта.
Източник: opennet.ru
