Wifibox 0.10 - okolje za uporabo gonilnikov WiFi za Linux v FreeBSD

Zdaj je na voljo projekt Wifibox 0.10, katerega namen je rešiti problem FreeBSD z uporabo brezžičnih adapterjev, za katere manjkajo potrebni gonilniki. Delovanje adapterjev, ki so za FreeBSD problematični, je zagotovljeno z zagonom gostujočega sistema z Linuxom, v katerem so naloženi domači Linux gonilniki za brezžične naprave.

Namestitev gostujočega sistema z gonilniki je avtomatizirana, vse potrebne komponente pa so zapakirane v obliki že pripravljenega paketa wifibox, ki se zažene ob zagonu z vključeno storitvijo rc. Vključno s prehodom v način mirovanja je pravilno obravnavan. Okolje se lahko potencialno uporablja za vse kartice WiFi, ki jih podpira Linux, vendar je bilo preizkušeno predvsem na Intelovih čipih. Pravilno delovanje je bilo preizkušeno tudi na sistemih z brezžičnimi čipi Qualcomm Atheros in AMD RZ608 (MediaTek MT7921K).

Sistem za goste se zažene s hipervizorjem Bhyve, ki organizira posredovanje dostopa do brezžične kartice. Zahteva sistem, ki podpira virtualizacijo strojne opreme (AMD-Vi ali Intel VT-d). Gostujoči sistem temelji na distribuciji Alpine Linux, zgrajeni na osnovi sistemske knjižnice Musl in nabora pripomočkov BusyBox. Velikost slike zavzame približno 30 MB na disku in porabi približno 90 MB RAM-a.

Za povezavo v brezžično omrežje se uporablja paket wpa_supplicant, katerega konfiguracijske datoteke so sinhronizirane z nastavitvami iz glavnega okolja FreeBSD. Nadzorna vtičnica Unix, ki jo ustvari wpa_supplicant, se posreduje v gostiteljsko okolje, ki vam omogoča uporabo standardnih pripomočkov FreeBSD za povezavo in delo z brezžičnim omrežjem, vključno s pripomočki wpa_cli in wpa_gui (net/wpa_supplicant_gui).

V novi izdaji je bil mehanizem za posredovanje WPA v glavno okolje preoblikovan, kar je omogočilo delo z wpa_supplicant in hostapd. Količina pomnilnika, potrebnega za sistem za goste, je bila zmanjšana. Podpora za FreeBSD 13.0-RELEASE je bila ukinjena.

Poleg tega lahko opazimo delo za izboljšanje gonilnikov, ki jih ponuja FreeBSD za brezžične kartice na čipih Intel in Realtek. S podporo FreeBSD Foundation se nadaljuje razvoj novega gonilnika iwlwifi, vključenega v FreeBSD 13.1. Gonilnik temelji na gonilniku za Linux in kodi iz podsistema net80211 Linux, podpira standard 802.11ac in se lahko uporablja z novimi Intelovimi brezžičnimi čipi. Gonilnik se samodejno prenese med zagonom, ko je zaznana zahtevana brezžična kartica. Komponente brezžičnega sklada Linux so omogočene s plastjo LinuxKPI. Prej je bil gonilnik iwm prenesen za FreeBSD na podoben način.

Vzporedno se je začel razvoj gonilnikov rtw88 in rtw89 za brezžična čipa Realtek RTW88 in RTW89, ki se prav tako razvijata s prenosom ustreznih gonilnikov iz Linuxa in delujeta na sloju LinuxKPI. Gonilnik rtw88 je pripravljen za začetno testiranje, medtem ko je gonilnik rtw89 še v razvoju.

Poleg tega lahko omenimo objavo podrobnosti in že pripravljenega exploita v zvezi z ranljivostjo (CVE-2022-23088) v brezžičnem skladu FreeBSD, ki je bila odpravljena v aprilski posodobitvi. Ranljivost vam omogoča izvajanje vaše kode na ravni jedra s pošiljanjem posebej zasnovanega okvirja, medtem ko je odjemalec v načinu skeniranja omrežja (na stopnji pred vezavo SSID). Težavo povzroča prekoračitev medpomnilnika v funkciji ieee80211_parse_beacon() pri razčlenjevanju okvirjev svetilnikov, ki jih posreduje dostopna točka. Do prelivanja je prišlo zaradi pomanjkanja preverjanja, ali se dejanska velikost podatkov ujema z velikostjo, določeno v polju glave. Težava se pojavi v različicah FreeBSD, zgrajenih od leta 2009.

Wifibox 0.10 - okolje za uporabo gonilnikov WiFi za Linux v FreeBSD

Nedavne spremembe FreeBSD, ki niso povezane z brezžičnim skladom, vključujejo: optimizacijo časa zagona, ki je bil skrajšan z 10 na 8 sekund na testnem sistemu; implementiran je bil modul GEOM za prenos sprememb na vrhu diska, ki je dostopen v načinu samo za branje, na drug disk; Za kripto API jedra sta pripravljena kriptografska primitiva XChaCha20-Poly1305 AEAD in curve25519, ki sta potrebna za gonilnik VPN WireGuard.

Vir: opennet.ru

Dodaj komentar