Microsoft radi na uvođenju proširene podrške za Berkeley Packet Filter (eBPF) u Windows

Ikona vremena čitanja 2 min. čitati


Čitatelji pomažu pri podršci MSpoweruser. Možda ćemo dobiti proviziju ako kupujete putem naših veza. Ikona opisa alata

Pročitajte našu stranicu za otkrivanje kako biste saznali kako možete pomoći MSPoweruseru da održi urednički tim Čitaj više

Izvještava ZDNet da Microsoft radi na uvođenju proširenog Berkeleyjevog filtera paketa (eBPF) za Linux sigurnosni alat na Windows 10.

Alat se trenutno može pokrenuti na Windows SubSystem za Linux, ali Microsoft radi na izvornoj podršci, s tim što je problem što alat pokreće kod u kontekstu kernela, što izaziva sve vrste sigurnosnih komplikacija.

Međutim, posao se može isplatiti, budući da se eBPF uvelike koristi u mrežnom filtriranju, analizi i upravljanju, kao i za filtriranje sistemskih poziva i praćenje konteksta procesa i čini temelj višestrukih sigurnosnih aplikacija kao što su Cilium, Falco i Tracee; Kubernetes programi za promatranje kao što su Hubble i Pixie, te alatni lanci kao što je Clang.

Projekt ebpf-for-windows ima za cilj uzeti nekoliko postojećih eBPF projekata otvorenog koda i dodaje "ljepilo" kako bi se pokrenuli na Windowsima.

Kao što je prikazano na dijagramu, postojeći eBPF alatni lanci (clang, itd.) mogu se koristiti za generiranje eBPF bajtkoda iz izvornog koda na različitim jezicima. Bytecode može koristiti bilo koja aplikacija ili putem Netsh alata za naredbeni red, koji koristi zajedničku biblioteku koja izlaže Libbpf API-je, iako je to još uvijek u tijeku.

eBPF bajt-kod se šalje statičkom verifikatoru (PREVAIL verifikator) koji je smješten u zaštićenom procesu u korisničkom načinu (sigurnosno okruženje Windowsa koje omogućuje komponenti jezgre da vjeruje demonu korisničkog načina koji je potpisan ključem kojem vjeruje). Ako bajtkod prođe sve provjere verifikatora, može se ili učitati u interpreter (iz uBPF-a u kontekstu izvršavanja načina rada jezgre) ili prevesti JIT (putem uBPF JIT prevoditelja) i imati izvorni kod učitavanja u izvršavanje u načinu rada jezgre kontekst (ali pogledajte FAQ na dnu o HVCI).

eBPF programi instalirani u izvršni kontekst u načinu rada jezgre mogu se priključiti na različite kuke (trenutno dvije zakačice do sada: XDP i zakačicu za povezivanje utičnice) i pozvati različite pomoćne API-je izložene eBPF shim-om, koji interno omota javne API-je jezgre Windowsa, dopuštajući korištenje eBPF-a na postojećim verzijama sustava Windows. S vremenom će biti dodano više udica i pomoćnika.

Krajnji rezultat bit će okruženje za hosting za eBPF specifično za Windows koje bi omogućilo Windows programerima da koriste eBPF programe otvorenog koda bez potrebe za ponovnim kodiranjem.

Pogledajte ebpf-for-windows projekt na GitHubu ovdje.

Više o temama: eGMP, Microsoft, Windows 10

Ostavi odgovor

Vaša adresa e-pošte neće biti objavljena. Obavezna polja su označena *