Недостатъците на Broadcom WiFi чипа позволяват отдалечени атаки

bcm_глобален_стек

Преди няколко дни избухна новината, че драйверите за безжични чипове Broadcom бяха открити четири уязвимостиЧе те позволяват извършването на отдалечени атаки върху устройства, които включват тези чипове.   

В най-простия случай уязвимостите могат да се използват за отказ на услуга дистанционно, но не са изключени сценарии, при които могат да се развият уязвимости които позволяват на неупълномощен атакуващ да стартира вашия код с привилегиите на ядрото на Linux чрез изпращане на специално създадени пакети.

Тези проблеми бяха идентифицирани по време на обратното инженерство на фърмуера на Broadcom, при което чиповете, податливи на уязвимости, се използват широко в лаптопи, смартфони и различни потребителски устройства, от SmartTV до IoT устройства.

По-специално, Broadcom чиповете се използват в смартфоните на производители като Apple, Samsumg и Huawei.

Трябва да се отбележи това Broadcom беше уведомен за уязвимостите през септември 2018 г., но отне около 7 месеца (тоест точно в този месец в ход) стартиране на корекции, координирани с производителите на оборудване.

Какви са откритите уязвимости?

Две уязвимости засягат вътрешния фърмуер и потенциално позволяват изпълнение на код в средата на операционната система използвани в Broadcom чипове.

каквото Позволява ви да атакувате не-Linux среди (Например, потвърждава се възможността за атака срещу устройства на Apple, CVE-2019-8564)).

Тук е важно да се подчертае, че някои чипове Broadcom Wi-Fi са специализиран процесор (ARM Cortex R4 или M3), който ще изпълнява сходството на вашата операционна система с внедряванията на нейния 802.11 безжичен стек (FullMAC).

В споменатите чипове, контролер осигурява взаимодействие на хост системата с фърмуера на чипа Wi-Fi.

В описанието на атаката:

За да се получи пълен контрол над основната система след компрометиране на FullMAC, се предлага да се използват допълнителни уязвимости или пълен достъп до системната памет на някои чипове.

В чиповете SoftMAC безжичният стек 802.11 е реализиран от страната на контролера и се управлява от системния процесор.

В контролерите, уязвимости се проявяват както в собствения драйвер на wl (SoftMAC и FullMAC) както в отворения brcmfmac (FullMAC).

В драйвера wl се откриват две препълвания на буфера, които се експлоатират, когато точката за достъп изпраща специално създадени EAPOL съобщения по време на процеса на договаряне на връзката (атака може да бъде извършена чрез свързване към злонамерена точка за достъп).

В случай на чип с SoftMAC, уязвимостите водят до компрометиране на системното ядро, а в случай на FullMAC кодът може да работи от страна на фърмуера.

В brcmfmac има препълване на буфер и проверка на грешки за обработени кадри, които се експлоатират чрез изпращане на контролни кадри. В ядрото на Linux проблемите в драйвера brcmfmac бяха отстранени през февруари.

Идентифицирани уязвимости

Четирите уязвимости, които бяха разкрити от септември миналата година, Те вече са каталогизирани в следващите CVE.

версия_стр

CVE-2019 9503-

Неправилното поведение на драйвера brcmfmac при обработка на контролни рамки, използвани за взаимодействие с фърмуера.

Ако кадър със събитие на фърмуера идва от външен източник, контролерът го изхвърля, но ако събитието се получи през вътрешната шина, кадърът се игнорира.

Проблемът е в това събитията от устройства, използващи USB, се предават по вътрешната шина, което позволява на хакерите да прехвърлят успешно фърмуера който контролира кадрите в случай на използване на USB безжични адаптери;

CVE-2019 9500-

Когато активирате функцията „Събуждане по безжична LAN“, може да доведе до преливане в контролера brcmfmac (функция brcmf_wowl_nd_results) изпращайки специално модифицирана контролна рамка.

Тази уязвимост може да се използва за организиране на изпълнение на код на хост след включване на чип или в комбинация.

CVE-2019 9501-

Препълването на буфера в драйвера wl (функция wlc_wpa_sup_eapol), което се случва по време на обработката на съобщенията, съдържанието на информационното поле на производителя, в което надвишава 32 байта.

CVE-2019 9502-

Препълването на буфера в драйвера wl (функция wlc_wpa_plumb_gtk), което се случва по време на обработката на съобщенията, съдържанието на информационното поле на производителя, в което надвишава 164 байта.

Fuente: https://blog.quarkslab.com