Microsoft ka përgatitur një implementim të eBPF për Windows

Microsoft zbuloi së fundmi përmes një postimi implementimi i nënsistemit eBPF për Windows e cila ju lejon të ekzekutoni drejtues arbitrarë që funksionojnë në nivelin e kernelit të sistemit operativ.

eGMP siguron një interpretues të integruar bytecode në kernel për të krijuar drejtuesit e rrjetit të ngarkuar me hapësirë ​​për përdoruesit, kontrollin e hyrjes dhe monitorimin e sistemit. eBPF është përfshirë në kernelin Linux që nga versioni 3.18 dhe ju lejon të përpunoni paketat e rrjetit hyrëse / dalëse, pako përpara, gjerësinë e bandës së kontrollit, përgjimin e thirrjeve të sistemit, kontrollin e hyrjes dhe gjurmimin.

Përmes përpilimit JIT, bytecode përkthehet në udhëzime makine në lëvizje dhe ekzekutohet me performancën e kodit të përpiluar. EBPF për Windows është burim i hapur nën licencën MIT.

Sot ne jemi të kënaqur të shpallim një projekt të ri me burim të hapur nga Microsoft për ta bërë eBPF të funksionojë në Windows 10 dhe Windows Server 2016 dhe më vonë. Projekti ebpf-for-windows synon të lejojë zhvilluesit të përdorin mjete të njohura eBPF dhe ndërfaqe të programimit të aplikacioneve (API) mbi versionet ekzistuese të Windows. Bazuar në punën e të tjerëve, ky projekt merr disa projekte ekzistuese eBPF me burim të hapur dhe shton "ngjitësin" për t'i bërë ato të funksionojnë në Windows.

eBPF për Windows mund të përdoret me mjetet ekzistuese eBPF dhe siguron një API gjenerik që përdoret për aplikimet eBPF në Linux.

Në veçanti projekti ju lejon të përpiloni kodin e shkruar në C në bytecode eBPF duke përdorur përpiluesin standard të bazuar në Clang eBPF dhe ekzekutoni drejtuesit eBPF të ndërtuar tashmë për Linux në krye të kernelit të Windows, i cili siguron një shtresë speciale të pajtueshmërisë dhe mbështet standardin Libbpf API për pajtueshmërinë me aplikacionet që bashkëveprojnë me programet eBPF.

Kjo përfshin shtresat e mesme që sigurojnë lidhje të ngjashme me Linux për XDP (eXpress Data Path) dhe lidhjet e prizave që përmbledhin hyrjen në pirgun e rrjetit Windows dhe drejtuesit e rrjetit. Planet synojnë të ofrojnë mbështetje të plotë në nivelin e burimit për drejtuesit gjenerikë Linux eBPF.

Dallimi kryesor në zbatimin e eBPF për Windows është përdorimi i një kontrolli alternative të bytecode, i propozuar fillimisht nga punonjësit e VMware dhe studiuesit nga universitetet kanadeze dhe izraelite.

Verifikuesi fillon në një proces të veçantë të izoluar në hapësirën e përdoruesit dhe përdoret para ekzekutimit të programeve BPF për të zbuluar gabimet dhe për të bllokuar aktivitetin e mundshëm keqdashës.

Për vërtetim, eBPF për Windows përdor metodën e analizës statike të interpretimit abstrakt, çfarë, Krahasuar me verifikuesin eBPF për Linux, ai demonstron një normë pozitive false më të ulët, mbështet analizën e lakut dhe siguron shkallëzim të mirë. Metoda merr parasysh shumë modele tipike të performancës të marra nga analiza e programeve ekzistuese eBPF.

eBPF është një teknologji e njohur por revolucionare që siguron programueshmëri, zgjatueshmëri dhe shkathtësi. eBPF është aplikuar për të përdorur raste të tilla si mohimi i mbrojtjes së shërbimit dhe vëzhgimi.

Me kalimin e kohës, një ekosistem i rëndësishëm i mjeteve, produkteve dhe ekspertizës është ndërtuar rreth eBPF. Megjithëse mbështetja për eBPF u implementua për herë të parë në kernelin Linux, ka pasur një interes në rritje për të lejuar që eBPF të përdoret në sistemet e tjera operative dhe gjithashtu për të zgjeruar daemonët dhe shërbimet e modalitetit të përdoruesit përveç kernelit.

Pas verifikimit, kodi byt kalohet në interpretuesin e nivelit të bërthamës, ose ajo kalohet përmes përpiluesit JIT, e ndjekur nga ekzekutimi i kodit të makinës që rezulton me të drejtat e kernelit. Për të izoluar drejtuesit eBPF në nivelin e kernelit, përdoret mekanizmi HVCI (HyperVisor Enhanced Code Integrity), i cili përdor mjete virtualizimi për të mbrojtur proceset në kernel dhe siguron që integriteti i kodit të ekzekutuar të nënshkruhet dixhitalisht.

Një kufizim i HVCI është aftësia për të kontrolluar vetëm programet e interpretuara eBPF dhe pamundësia për t'i përdorur ato së bashku me JIT (keni një zgjedhje: performancë shtesë ose mbrojtje).

Më në fund nëse jeni të interesuar të dini më shumë rreth kësaj, ju mund të konsultoheni lidhja e mëposhtme.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.