Microsoft si prizadeva prinesti razširjeno podporo za filter paketov Berkeley (eBPF) v Windows

Ikona časa branja 2 min. prebrati


Bralci pomagajo pri podpori MSpoweruser. Če kupujete prek naših povezav, lahko prejmemo provizijo. Ikona opisa orodja

Preberite našo stran za razkritje, če želite izvedeti, kako lahko pomagate MSPoweruser vzdrževati uredniško skupino Preberi več

Poroča ZDNet da si Microsoft prizadeva, da bi razširil filter paketov Berkeley (eBPF) razširil varnostno orodje Linux v Windows 10.

Orodje je trenutno mogoče zagnati v podsistemu Windows za Linux, vendar Microsoft dela na izvorni podpori, pri čemer je težava v tem, da orodje izvaja kodo v kontekstu jedra, kar povzroča vse vrste varnostnih zapletov.

Vendar je delo morda vredno, saj se eBPF v veliki meri uporablja pri filtriranju omrežja, analizi in upravljanju ter tudi za filtriranje sistemskih klicev in sledenje konteksta procesov ter predstavlja temelj več varnostnih aplikacij, kot so Cilium, Falco in Tracee; Kubernetes opazovalni programi, kot sta Hubble in Pixie, in verige orodij, kot je Clang.

Namen projekta ebpf-for-windows je vzeti več obstoječih odprtokodnih projektov eBPF in dodati "lepilo", da bi se lahko izvajali v sistemu Windows.

Kot je prikazano na diagramu, lahko obstoječe verige orodij eBPF (clang itd.) uporabite za generiranje bajtne kode eBPF iz izvorne kode v različnih jezikih. Bytecode lahko porabi katera koli aplikacija ali prek orodja ukazne vrstice Netsh, ki uporablja knjižnico v skupni rabi, ki razkriva API-je Libbpf, čeprav je to še v teku.

Bajtna koda eBPF je poslana statičnemu preveritelju (preverjevalniku PREVAIL), ki gostuje v zaščitenem procesu v uporabniškem načinu (varnostno okolje Windows, ki komponenti jedra omogoča, da zaupa demonu uporabniškega načina, podpisan s ključem, ki mu zaupa). Če bajtna koda opravi vsa preverjanja preverjanja, jo je mogoče bodisi naložiti v tolmač (iz uBPF v izvajalnem kontekstu načina jedra) bodisi prevesti JIT (prek prevajalnika JIT uBPF) in imeti izvorno kodo naloženo v izvajanje v načinu jedra kontekst (vendar glejte pogosta vprašanja o HVCI na dnu).

Programi eBPF, nameščeni v izvedbeni kontekst načina jedra, se lahko priključijo na različne kljuke (trenutno dva kljuka: XDP in povezovalni kavelj vtičnice) in pokličejo različne pomožne API-je, ki jih razkriva eBPF podložka, ki interno ovije javne API-je jedra Windows, kar omogoča uporaba eBPF v obstoječih različicah sistema Windows. Sčasoma bo dodanih več kavljev in pomočnikov.

Končni rezultat bo okolje za gostovanje, specifično za Windows, za eBPF, ki bi razvijalcem Windows omogočilo uporabo odprtokodnih programov eBPF, ne da bi jim bilo treba ponovno kodirati.

Odjaviti Projekt ebpf-for-windows na GitHubu tukaj.

Več o temah: eGMP, microsoft, Windows 10

Pustite Odgovori

Vaš e-naslov ne bo objavljen. Obvezna polja so označena *