Microsoft pyrkii tuomaan laajennetun Berkeley Packet Filter (eBPF) -tuen Windowsiin

Lukuajan kuvake 2 min. lukea


Lukijat auttavat tukemaan MSpoweruseria. Saatamme saada palkkion, jos ostat linkkien kautta. Työkaluvihje-kuvake

Lue ilmoitussivumme saadaksesi selville, kuinka voit auttaa MSPoweruseria ylläpitämään toimitustiimiä Lue lisää

ZDNet raportoi että Microsoft pyrkii tuomaan Linuxin suojaustyökalun laajennetun Berkeley Packet Filterin (eBPF) Windows 10:een.

Työkalua voidaan tällä hetkellä käyttää Windows SubSystem for Linuxissa, mutta Microsoft työskentelee natiivituen parissa. Ongelmana on, että työkalu suorittaa koodia ytimen kontekstissa, mikä aiheuttaa kaikenlaisia ​​tietoturvaongelmia.

Työ voi kuitenkin olla sen arvoista, koska eBPF:ää käytetään laajasti verkon suodatuksessa, analysoinnissa ja hallinnassa sekä järjestelmäkutsujen suodatuksessa ja prosessikontekstin jäljittämisessä ja se muodostaa perustan useille tietoturvasovelluksille, kuten Cilium, Falco ja Tracee; Kubernetes-havaintoohjelmat, kuten Hubble ja Pixie, ja työkaluketjut, kuten Clang.

ebpf-for-windows-projekti pyrkii ottamaan useita olemassa olevia avoimen lähdekoodin eBPF-projekteja ja lisää "liimaa" saadakseen ne toimimaan Windowsissa.

Kuten kaaviosta näkyy, olemassa olevia eBPF-työkaluketjuja (clang jne.) voidaan käyttää luomaan eBPF-tavukoodia lähdekoodista eri kielillä. Tavukoodia voi käyttää mikä tahansa sovellus tai Netsh-komentorivityökalu, joka käyttää jaettua kirjastoa, joka paljastaa Libbpf-sovellusliittymät, vaikka tämä on vielä kesken.

eBPF-tavukoodi lähetetään staattiselle todentajalle (PREVAIL-todentaja), jota isännöi käyttäjätilassa suojattu prosessi (Windows-suojausympäristö, jonka avulla ytimen komponentti voi luottaa käyttäjätilan demoniin, joka on allekirjoitettu sen luottavalla avaimella). Jos tavukoodi läpäisee kaikki todentajatarkistukset, se voidaan joko ladata tulkkiin (uBPF:stä ydintilan suorituskontekstissa) tai JIT-käännöksenä (uBPF JIT-kääntäjän kautta) ja natiivikoodilataus ydintilan suoritukseen. kontekstissa (mutta katso HVCI:stä alla oleva UKK).

Ydintilan suorituskontekstiin asennetut eBPF-ohjelmat voivat liittyä erilaisiin koukkuihin (tällä hetkellä kaksi koukkua: XDP ja socket bind hook) ja kutsua erilaisia ​​apusovellusliittymiä, jotka paljastetaan eBPF-levyllä, joka kääri sisäisesti julkiset Windows-ytimen API:t. eBPF:n käyttö olemassa olevissa Windows-versioissa. Lisää koukkuja ja apureita lisätään ajan myötä.

Lopputuloksena on Windows-spesifinen isännöintiympäristö eBPF:lle, jonka avulla Windows-kehittäjät voivat käyttää avoimen lähdekoodin eBPF-ohjelmia ilman uudelleenkoodausta.

Tutustu ebpf-for-windows-projekti GitHubissa täällä.

Lisää aiheista: eGMP, microsoft, Windows 10

Jätä vastaus

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *