Уязвимости в драйверите на WiFi чиповете Broadcom, които позволяват отдалечен достъп до системата

В драйвърите за безжични чипове 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.

Уязвимости в драйверите на WiFi чиповете Broadcom, които позволяват отдалечен достъп до системата

В драйверите уязвимостите се проявяват както в проприетарния драйвер 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 байта.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster