Microsoft ha preparat una implementació d'eBPF per a Windows

Microsoft ha publicat una implementació del subsistema eBPF per a Windows, que permet l'execució de controladors arbitraris que s'executen a nivell de nucli del sistema operatiu. eBPF proporciona un intèrpret de bytecode integrat al nucli, que permet la creació de controladors d'operacions de xarxa carregables a l'espai d'usuari, control d'accés i supervisió del sistema. eBPF s'inclou al nucli. Linux Des de la versió 3.18, permet el processament de paquets de xarxa entrants/sortints, la redirecció de paquets, la gestió de l'amplada de banda, la intercepció de crides al sistema, el control d'accés i el rastreig. Gràcies a la compilació just-in-time (JIT), el bytecode es tradueix en instruccions màquina sobre la marxa i s'executa amb el rendiment del codi compilat. Codi font eBPF per a Windows de codi obert sota la llicència MIT.

eBPF per a Windows es pot utilitzar amb les eines eBPF existents i proporciona una API estàndard utilitzada per a aplicacions eBPF en LinuxEntre altres coses, el projecte permet compilar codi escrit en C en bytecode eBPF utilitzant el compilador eBPF estàndard basat en Clang i executar-lo ja creat per a Linux Els gestors d'eBPF a la part superior del nucli Windows, proporcionant una capa de compatibilitat especial i donant suport a l'API estàndard de Libbpf per a la compatibilitat amb aplicacions que interactuen amb programes eBPF. Això inclou capes que proporcionen Linux-ganxos tipus XDP (eXpress Data Path) i socket bind, abstraient l'accés a la pila de xarxa i als controladors de xarxa WindowsEls plans inclouen proporcionar compatibilitat completa a nivell de codi font amb els gestors eBPF estàndard. Linux.

Microsoft ha preparat una implementació d'eBPF per a Windows

La diferència clau en la implementació de l'eBPF per a Windows La solució és l'ús d'un verificador de bytecode alternatiu, proposat originalment per empleats de VMware i investigadors d'universitats canadenques i israelianes. El verificador s'executa en un procés separat i aïllat a l'espai d'usuari i s'aplica abans d'executar programes BPF per identificar errors i bloquejar possibles activitats malicioses.

Per comprovar a l'eBPF Windows S'utilitza el mètode d'anàlisi estàtica basat en la interpretació abstracta, que, en comparació amb el verificador eBPF, Linux El mètode demostra una taxa de falsos positius més baixa, admet l'anàlisi de bucles i garanteix una bona escalabilitat. Té en compte una varietat de patrons d'execució típics obtinguts mitjançant l'anàlisi de programes eBPF existents.

Després de la verificació, el bytecode es passa a un intèrpret a nivell del nucli o es passa a través d'un compilador JIT, seguit de l'execució del codi màquina resultant amb drets del nucli. Per aïllar els controladors eBPF a nivell del nucli, s'utilitza el mecanisme HVCI (HyperVisor-enforced Code Integrity), que utilitza eines de virtualització per protegir els processos del nucli i proporciona la verificació de la integritat del codi que s'està executant mitjançant la signatura digital. La limitació de l'HVCI és la possibilitat de verificar només els programes eBPF interpretats i la impossibilitat d'utilitzar-lo juntament amb JIT (s'ofereix l'opció: rendiment o protecció addicional).

Font: opennet.ru

Compreu allotjament fiable per a llocs amb protecció DDoS, servidors VPS VDS 🔥 Compra allotjament web fiable amb protecció DDoS, servidors VPS VDS | ProHoster