Wifibox 0.10: un entorn per utilitzar controladors WiFi de Linux a FreeBSD

Ja està disponible el projecte Wifibox 0.10, destinat a resoldre el problema de FreeBSD mitjançant adaptadors sense fil per als quals falten els controladors necessaris. El funcionament dels adaptadors que són problemàtics per a FreeBSD s'assegura mitjançant el llançament d'un sistema convidat amb Linux, en el qual es carreguen controladors Linux natius per a dispositius sense fil.

La instal·lació del sistema convidat amb controladors està automatitzada i tots els components necessaris estan empaquetats en forma d'un paquet wifibox preparat, que s'inicia a l'arrencada mitjançant el servei rc inclòs. Inclou la transició al mode de repòs es gestiona correctament. L'entorn es pot utilitzar potencialment per a qualsevol targeta WiFi compatible amb Linux, però s'ha provat principalment amb xips Intel. També s'ha provat el funcionament correcte en sistemes amb xips sense fil Qualcomm Atheros i AMD RZ608 (MediaTek MT7921K).

El sistema de convidats s'inicia mitjançant l'hipervisor Bhyve, que organitza l'accés de reenviament a la targeta sense fil. Requereix un sistema que admeti la virtualització de maquinari (AMD-Vi o Intel VT-d). El sistema convidat es basa en la distribució Alpine Linux, construïda sobre la base de la biblioteca del sistema Musl i el conjunt d'utilitats BusyBox. La mida de la imatge ocupa aproximadament 30 MB al disc i consumeix uns 90 MB de RAM.

Per connectar-se a una xarxa sense fil, s'utilitza el paquet wpa_supplicant, els fitxers de configuració del qual es sincronitzen amb la configuració de l'entorn principal de FreeBSD. El sòcol de control Unix creat per wpa_supplicant es reenvia a l'entorn amfitrió, que us permet utilitzar les utilitats estàndard de FreeBSD per connectar-vos i treballar amb una xarxa sense fil, incloses les utilitats wpa_cli i wpa_gui (net/wpa_supplicant_gui).

A la nova versió, s'ha redissenyat el mecanisme per reenviar WPA a l'entorn principal, fet que va permetre treballar tant amb wpa_supplicant com amb hostapd. S'ha reduït la quantitat de memòria necessària per al sistema convidat. El suport per a FreeBSD 13.0-RELEASE s'ha interromput.

A més, podem destacar el treball per millorar els controladors que ofereix FreeBSD per a targetes sense fil en xips Intel i Realtek. Amb el suport de la Fundació FreeBSD, continua el desenvolupament del nou controlador iwlwifi inclòs a FreeBSD 13.1. El controlador es basa en el controlador Linux i el codi del subsistema Linux net80211, és compatible amb l'estàndard 802.11ac i es pot utilitzar amb els nous xips sense fil Intel. El controlador es baixa automàticament durant l'arrencada quan es detecta la targeta sense fil necessària. Els components de la pila sense fil de Linux s'activen mitjançant la capa LinuxKPI. Anteriorment, el controlador iwm es portava per a FreeBSD d'una manera similar.

Paral·lelament, es va iniciar el desenvolupament dels controladors rtw88 i rtw89 per als xips sense fil Realtek RTW88 i RTW89, que també s'estan desenvolupant transferint els controladors corresponents des de Linux i funcionen amb la capa LinuxKPI. El controlador rtw88 està preparat per a les proves inicials, mentre que el controlador rtw89 encara està en desenvolupament.

A més, podem esmentar la publicació de detalls i un exploit ja fet relacionat amb la vulnerabilitat (CVE-2022-23088) a la pila sense fil FreeBSD, que es va solucionar a l'actualització d'abril. La vulnerabilitat us permet executar el vostre codi a nivell del nucli enviant un marc especialment dissenyat mentre el client està en mode d'exploració de xarxa (en l'etapa abans de l'enllaç SSID). El problema és causat per un desbordament de memòria intermèdia a la funció ieee80211_parse_beacon() quan s'analitza trames de balises transmeses pel punt d'accés. El desbordament va ser causat per la manca de comprovar que la mida real de les dades coincideix amb la mida especificada al camp de la capçalera. El problema apareix a les versions de FreeBSD construïdes des del 2009.

Wifibox 0.10: entorn per utilitzar controladors WiFi de Linux a FreeBSD

Els canvis recents a FreeBSD no relacionats amb la pila sense fil inclouen: optimització del temps d'arrencada, que es va reduir de 10 a 8 segons al sistema de prova; s'ha implementat el mòdul GEOM gunion per transferir els canvis fets a la part superior d'un disc accessible en mode de només lectura a un altre disc; Per a l'API criptogràfica del nucli, s'han preparat les primitives criptogràfiques XChaCha20-Poly1305 AEAD i curve25519, necessàries per al controlador VPN WireGuard.

Font: opennet.ru

Afegeix comentari