Pinapayagan ng mga kakulangan ng Broadcom WiFi chip ang mga malalayong pag-atake

bcm_global_stack

Ilang araw na ang nakalipas, pumutok ang balita na apat na kahinaan ang natukoy sa mga driver para sa mga Broadcom wireless chips , na nagpapahintulot sa mga malayuang pag-atake sa mga device na naglalaman ng mga chip na ito.

Sa pinakasimpleng kaso, maaaring gamitin ang mga kahinaan para sa malayuang pagtanggi sa serbisyo, ngunit hindi kasama ang mga sitwasyon kung saan maaaring mabuo ang mga kahinaan na nagpapahintulot sa isang hindi awtorisadong umaatake na isagawa ang kanilang code gamit ang mga pribilehiyo ng Linux kernel sa pamamagitan ng pagpapadala ng mga espesyal na ginawang packet.

Ang mga problemang ito ay natukoy sa panahon ng reverse engineering ng firmware ng Broadcom, kung saan ang mga chip na madaling masira ay malawakang ginagamit sa mga laptop, smartphone, at iba't ibang device ng mga mamimili, mula sa mga Smart TV hanggang sa mga IoT device.

Sa partikular, ang mga Broadcom chip ay ginagamit sa mga smartphone ng mga tagagawa tulad ng Apple, Samsumg at Huawei.

Mahalagang tandaan na naabisuhan ang Broadcom tungkol sa mga kahinaan noong Setyembre 2018, ngunit inabot ng humigit-kumulang 7 buwan (ibig sabihin, ngayong buwan lamang) bago inilabas ang mga pag-aayos na nakipag-ugnayan sa mga tagagawa ng kagamitan.

Ano ang mga napansin na kahinaan?

Dalawang kahinaan ang nakakaapekto sa internal firmware at posibleng nagpapahintulot sa pagpapatupad ng code sa operating system environment na ginagamit sa mga Broadcom chip.

Pinapayagan nito ang pag-atake sa mga kapaligirang hindi gumagamit ng Linux (halimbawa, ang posibilidad ng pag-atake sa mga aparatong Apple, CVE-2019-8564 ay nakumpirma na)).

Narito mahalagang tandaan na ang ilang mga chips ng Broadcom Wi-Fi ay isang dalubhasang processor (ARM Cortex R4 o M3), na tatakbo ang pagkakapareho ng iyong operating system mula sa pagpapatupad ng 802.11 wireless stack (FullMAC).

Sa mga chip na ito, ang controller ay nagbibigay ng interaksyon ng pangunahing sistema sa firmware ng Wi-Fi chip.

Sa paglalarawan ng pag-atake:

Upang makamit ang buong kontrol sa pangunahing sistema pagkatapos makompromiso ang FullMAC, iminungkahi na gumamit ng mga karagdagang kahinaan o ganap na pag-access sa memorya ng system sa ilang mga chips.

Sa mga SoftMAC chip, ang 802.11 wireless stack ay ipinatupad sa panig ng controller at pinapatakbo ng isang system CPU.

Sa mga driver, ang mga kahinaan ay lumilitaw sa parehong proprietary wl driver (SoftMAC at FullMAC) at sa open brcmfmac (FullMAC).

Sa driver ng wl, nakita ang dalawang pag-apaw ng buffer, pinagsamantalahan kapag ang access point ay nagpapadala ng mga espesyal na gumawa ng mga mensahe ng EAPOL habang nasa proseso ng negosasyon sa koneksyon (isang pag-atake ang maaaring gawin sa pamamagitan ng pagkonekta sa isang nakakahamak na access point)

Sa kaso ng isang maliit na tilad na may SoftMAC, ang mga kahinaan ay humantong sa isang kompromiso ng system kernel, at sa kaso ng FullMAC, ang code ay maaaring tumakbo sa panig ng firmware.

Sa brcmfmac, mayroong isang buffer overflow at isang error sa pagsuri para sa mga naprosesong mga frame, na pinagsamantalahan sa pamamagitan ng pagpapadala ng mga control frame. Sa kernel ng Linux, ang mga problema sa brcmfmac driver ay naayos noong Pebrero.

Natukoy na mga kahinaan

Ang apat na kahinaan na inihayag sa publiko simula Setyembre ng nakaraang taon ay nakalista na ngayon sa ilalim ng mga sumusunod na CVE.

bersyon_str

CVE-2019-9503

Ang maling pag-uugali ng driver ng brcmfmac kapag pinoproseso ang mga control frame na ginamit upang makipag-ugnay sa firmware.

Kung ang isang frame na may isang kaganapan sa firmware ay nagmula sa isang panlabas na mapagkukunan, itatapon ito ng controller, ngunit kung ang kaganapan ay natanggap sa pamamagitan ng panloob na bus, ang frame ay hindi papansinin.

Ang problema ay ang mga kaganapan mula sa mga device na gumagamit ng USB ay ipinapadala sa pamamagitan ng internal bus, na nagpapahintulot sa mga attacker na matagumpay na ilipat ang firmware na kumokontrol sa mga frame kung sakaling gumamit ng mga USB wireless adapter;

CVE-2019-9500

Kapag in-activate mo ang function na "Wake-up on Wireless LAN" , maaari itong magdulot ng overflow sa brcmfmac controller (function na brcmf_wowl_nd_results) sa pamamagitan ng pagpapadala ng isang espesyal na binagong control frame.

Ang kahinaang ito ay maaaring gamitin upang i-orchestrate ang pagpapatupad ng code sa pangunahing sistema pagkatapos ng chip compromise o nang sabay-sabay.

CVE-2019-9501

Ang buffer overflow sa wl driver (wlc_wpa_sup_eapol function), na nangyayari sa panahon ng pagpoproseso ng mensahe, ang nilalaman ng patlang ng impormasyon ng tagagawa kung saan lumampas sa 32 bytes.

CVE-2019-9502

Ang buffer overflow sa wl driver (wlc_wpa_plumb_gtk function), na nangyayari sa panahon ng pagpoproseso ng mensahe, ang nilalaman ng patlang ng impormasyon ng tagagawa kung saan lumampas sa 164 bytes.

Pinagmulan: https://blog.quarkslab.com


Idagdag bilang ginustong mapagkukunan sa Google