Недавно была выпущена важная информация о новой атаке под названием KNOB (Ключевое согласование Bluetooth), который позволяет злоумышленнику организовать перехват и подмену информации в зашифрованном Bluetooth-трафике.
Имея возможность блокировать прямую передачу пакетов в процессе согласования подключения устройств Bluetooth, злоумышленник может добиться использования ключей, содержащих только 1 байт энтропии для сеанса, который позволяет использовать метод грубой силы для определения ключа шифрования.
О KNOB
Даниэле антониоли из SUTD, д-р Нильс Типпенхауэр из CISPA и профессор Каспер Расмуссен из Оксфордского университета обнаружил эту новую уязвимость KNOB и это влияет на устройства Bluetooth BR / EDR, также известные как Bluetooth Classic, с использованием версий спецификации 1.0 - 5.1.
Исследователи сообщили об уязвимости членам ICASI, Microsoft, Apple, Intel, Cisco и Amazon. кто опубликовал согласованное раскрытие уязвимостей.
Проблема (CVE-2019-9506) Это вызвано недостатками спецификации Bluetooth BR / EDR Core 5.1 и более ранних версий. Они позволяют использовать слишком короткие ключи шифрования и не мешают злоумышленнику вмешиваться в этап согласования соединения, чтобы вернуться к этим ненадежным ключам (пакеты могут быть заменены злоумышленником, не прошедшим проверку подлинности).
Атака может быть проведена при согласовании подключения устройства (уже установленные сеансы не могут быть атакованы) и эффективен только для подключений в режимах BR / EDR (Bluetooth Basic Rate / Enhanced Data Rate), если оба устройства уязвимы.
Если ключ выбран успешно, злоумышленник может расшифровать передаваемые данные и незаметно выполнить произвольную замену зашифрованного текста в трафике от жертвы.
Как работает атака?
Воспроизвести уязвимость в лаборатории (активность злоумышленника транслировалась на одном из устройств), был предложен прототип инструментария для проведения атаки.
Для реальной атаки злоумышленник должен находиться в зоне приема устройств жертвы и иметь возможность на короткое время блокировать сигнал от каждого устройства, что он намеревается реализовать с помощью манипуляции с сигналом или реактивного вмешательства.
Эксплуатация этой уязвимости - непростая задача, поскольку для этого требуются определенные условия. Это включает в себя:
- Оба устройства должны иметь Bluetooth BR / EDR.
- Злоумышленник должен находиться в пределах досягаемости устройств при установке соединения.
- «Атакующему устройству необходимо будет перехватывать, манипулировать и повторно передавать сообщения согласования длины ключа между двумя устройствами, одновременно блокируя передачи от обоих, и все это в пределах узкого временного окна».
- Ключ шифрования необходимо будет успешно сократить, а затем принудительно расшифровать ключ дешифрования.
- Злоумышленнику потребуется повторять эту атаку каждый раз, когда устройства будут сопряжены.
При установке соединения между двумя контроллерами Bluetooth A и B, контроллер A, после аутентификации с помощью ключа канала (ключ привязки), может предложить использовать для ключа 16 байтов энтропии шифрование и контроллер B может принять это значение или указать более низкое значение, сам по себе не может сгенерировать ключ предложенного размера.
В ответ контроллер A может принять ответ и активировать зашифрованный канал связи.
Поскольку допустимый размер ключа находится в диапазоне от 1 до 16 байтов, второй драйвер примет это значение и отправит фиксацию с указанием аналогичного размера.
Организация Bluetooth SIG, отвечающий за разработку стандартов Bluetooth, выпустил обновление спецификации под номером 11838., в котором производители предложили меры по блокированию уязвимости (минимальный размер ключа шифрования увеличен с 1 до 7).
Для ядра Linux в стеке ядра было предложено решение, позволяющее изменять минимальный размер ключа шифрования.