Уязвимости в драйверах к WiFi-чипам Broadcom, позволяющие удалённо атаковать систему

Discussion in 'Мировые новости. Обсуждения.' started by Suicide, 22 Apr 2019.

  1. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,577
    Likes Received:
    3,507
    Reputations:
    693
    В драйверах для беспроводных чипов Broadcom выявлено четыре уязвимости. В простейшем случае уязвимости могут использоваться для удалённого вызова отказа в обслуживании, но не исключаются и сценарии, при которых могут быть разработаны эксплоиты, позволяющие неаутентифицированному злоумышленнику выполнить свой код с привилегиями ядра Linux через отправку специальным образом оформленных пакетов.

    Проблемы были выявлены в ходе обратного инжиниринга прошивок Broadcom. Подверженные уязвимостям чипы широко используются в ноутбуках, смартфонах и различных потребительских устройствах, от SmartTV до устройств интернета вещей. В частности, чипы Broadcom применяются в смартфонах таких производителей, как Apple, Samsung и Huawei. Примечательно, что компания Broadcom была уведомлена об уязвимостях ещё в сентябре 2018 года, но на скоординированный с производителями оборудования выпуск исправлений понадобилось около 7 месяцев.

    Две уязвимости затрагивают внутренние прошивки и потенциально позволяют выполнить код в окружении используемой в чипах Broadcom операционной системы, что позволяет атаковать окружения не использующие Linux (например, подтверждена возможность совершения атаки на устройства Apple, CVE-2019-8564). Напомним, что некоторые Wi-Fi чипы Broadcom представляют собой специализированный процессор (ARM Cortex R4 или M3), на котором выполнятся подобие своей операционной системы с реализаций своего беспроводного стека 802.11 (FullMAC). В таких чипах драйвер обеспечивает взаимодействие основной системы с прошивкой Wi-Fi чипа. Для получения полного контроля за основной системой после компрометации FullMAC предлагается использовать дополнительные уязвимости или на некоторых чипах воспользоваться наличием полного доступа к системной памяти. В чипах с SoftMAC беспроводной стек 802.11 реализован на стороне драйвера и выполняется с применением системного CPU.

    [​IMG]
    В драйверах уязвимости проявляются как в проприетарном драйвере wl (SoftMAC и FullMAC), так и в открытом brcmfmac (FullMAC). В драйвере wl выявлено два переполнения буфера, эксплуатируемые при передаче точкой доступа специально оформленных сообщений EAPOL в процессе согласования соединения (атака может быть совершена при подключении к вредоносной точке доступа). В случае чипа с SoftMAC уязвимости приводят к компрометации ядра системы, а в случае FullMAC код может быть выполнен на стороне прошивки. В brcmfmac присутствуют переполнение буфера и ошибка проверки обрабатываемых кадров, эксплуатируемые через отправку управляющих кадров. В ядре Linux проблемы в драйвере brcmfmac были устранены в феврале.

    Выявленные уязвимости:

    • CVE-2019-9503 - некорректное поведение драйвера brcmfmac при обработке управляющих кадров, используемых для взаимодействия с прошивкой. Если кадр с событием прошивки поступает из внешнего источника драйвер его отбрасывает, но в случае если событие получено по внутренней шине, кадр пропускается. Проблема в том, что через внутреннюю шину передаются события от устройств, использующих USB, что позволяет атакующим успешно передавать управляющие прошивкой кадры в случае использования беспроводных адаптеров с интерфейсом USB;
    • CVE-2019-9500 - при включении функции "Wake-up on Wireless LAN" можно вызвать переполнение кучи в драйвере brcmfmac (функция brcmf_wowl_nd_results) через отправку специально изменённого управляющего кадра. Данная уязвимость может использоваться для организации выполнения кода в основной системе после компрометации чипа или в комбинации с уязвимостью CVE-2019-9503 для обхода проверок в случае удалённой отправки управляющего кадра;
    • CVE-2019-9501 - переполнение буфера в драйвере wl (функция wlc_wpa_sup_eapol), возникающее при обработке сообщений, содержимое поля с информацией о производителе в которых превышает 32 байта;
    • CVE-2019-9502 - переполнение буфера в драйвере wl (функция wlc_wpa_plumb_gtk), возникающее при обработке сообщений, содержимое поля с информацией о производителе в которых превышает 164 байта.


     
    CKAP and seostock like this.
Loading...