Wifibox 0.10 – Prostredie pre používanie Linux WiFi ovládačov na FreeBSD

K dispozícii je vydanie projektu Wifibox 0.10, ktoré rieši problém s používaním bezdrôtových adaptérov FreeBSD, ktorým chýbajú potrebné ovládače. Adaptéry, ktoré sú pre FreeBSD problematické, sú poskytované spustením hosťa Linuxu, ktorý načíta natívne ovládače bezdrôtových zariadení pre Linux.

Inštalácia hosťujúceho systému s ovládačmi je automatizovaná a všetky potrebné komponenty sú zabalené ako hotový balík wifibox, ktorý sa spúšťa pri bootovaní pomocou dodávanej rc služby. Vrátane prechodu do režimu spánku je správne spracované. Prostredie môže byť potenciálne aplikované na akékoľvek WiFi karty podporované v systéme Linux, ale bolo testované predovšetkým na čipoch Intel. Správnu činnosť sme testovali aj na systémoch s bezdrôtovými čipmi Qualcomm Atheros a AMD RZ608 (MediaTek MT7921K).

Hosťovský systém sa spúšťa pomocou hypervízora Bhyve, ktorý organizuje presmerovanie prístupu na bezdrôtovú kartu. Vyžaduje systém, ktorý podporuje virtualizáciu hardvéru (AMD-Vi alebo Intel VT-d). Hosťovský systém je založený na distribúcii Alpine Linux, postavenej na systémovej knižnici Musl a sade nástrojov BusyBox. Veľkosť obrázka je približne 30 MB na disku a spotrebuje približne 90 MB RAM.

Na pripojenie k bezdrôtovej sieti sa používa balík wpa_supplicant, ktorého konfiguračné súbory sú synchronizované s nastaveniami z hlavného prostredia FreeBSD. Riadiaca zásuvka Unix vytvorená pomocou wpa_supplicant je preposlaná do hostiteľského prostredia, ktoré vám umožňuje používať štandardné pomôcky FreeBSD na pripojenie a prácu s bezdrôtovou sieťou, vrátane nástrojov wpa_cli a wpa_gui (net/wpa_supplicant_gui).

V novom vydaní bol prepracovaný mechanizmus preposielania WPA do hlavného prostredia, čo umožnilo pracovať s wpa_supplicant aj s hostapd. Množstvo pamäte potrebnej pre hosťovský systém bolo znížené. Zrušená podpora pre FreeBSD 13.0-RELEASE.

Okrem toho možno zaznamenať prácu na zlepšení ovládačov pre bezdrôtové karty založené na čipoch Intel a Realtek, ponúkaných vo FreeBSD. S podporou od FreeBSD Foundation pokračuje vývoj nového ovládača iwlwifi, ktorý je súčasťou FreeBSD 13.1. Ovládač je založený na linuxovom ovládači a kóde z linuxového subsystému net80211, podporuje 802.11ac a dá sa použiť s novými bezdrôtovými čipmi Intel. Ovládač sa načíta automaticky pri štarte, keď sa nájde správna bezdrôtová karta. Komponenty linuxového bezdrôtového stacku sú poháňané vrstvou LinuxKPI. Predtým bol ovládač iwm portovaný na FreeBSD podobným spôsobom.

Paralelne sa začal vývoj ovládačov rtw88 a rtw89 pre bezdrôtové čipy Realtek RTW88 a RTW89, ktoré sa vyvíjajú aj portovaním zodpovedajúcich ovládačov z Linuxu a pracujú pomocou vrstvy LinuxKPI. Ovládač rtw88 je pripravený na počiatočné testovanie, zatiaľ čo ovládač rtw89 je stále vo vývoji.

Okrem toho môžeme spomenúť zverejnenie detailov a hotový exploit súvisiaci so zraniteľnosťou (CVE-2022-23088) v bezdrôtovom stacku FreeBSD, opravený v aprílovej aktualizácii. Zraniteľnosť umožňuje spustenie kódu na úrovni jadra odoslaním špeciálne vytvoreného rámca, keď je klient v režime sieťového skenovania (vo fáze pred naviazaním SSID). Problém je spôsobený pretečením vyrovnávacej pamäte vo funkcii ieee80211_parse_beacon() pri analýze rámcov beacon vysielaných prístupovým bodom. Pretečenie bolo umožnené nedostatočnou kontrolou, či sa skutočná veľkosť údajov zhoduje s veľkosťou špecifikovanou v poli hlavičky. Problém sa prejavuje vo verziách FreeBSD vytvorených od roku 2009.

Wifibox 0.10 - prostredie pre používanie Linux WiFi ovládačov vo FreeBSD

Medzi nedávne zmeny bezdrôtového zásobníka vo FreeBSD: optimalizácia času zavádzania, ktorá sa v testovacom systéme skrátila z 10 sekúnd na 8 sekúnd; implementované GEOM-module gunion na prenos zmien vykonaných na disku na iný disk v režime len na čítanie; pre kernel crypto API boli pripravené kryptografické primitívy XChaCha20-Poly1305 AEAD a curve25519 potrebné pre ovládač VPN WireGuard.

Zdroj: opennet.ru

Pridať komentár