Izolacija aplikacij Win32 je odlična varnostna zmogljivost, ki jo je Microsoft prejšnji mesec predstavil v sistemu Windows 11. Tako deluje.
Na svoji letni konferenci Build prejšnji mesec je Microsoft napovedal možnost, da zagon aplikacij Win32 v izolaciji v sistemu Windows 11. Podjetje se v svoji začetni objavi na spletnem dnevniku ni spuščalo v veliko podrobnosti, vendar je izpostavilo možnost zagona Win32 aplikacije v okolju peskovnika, tako da je preostali del operacijskega sistema varen pred potencialno zlonamernimi programsko opremo. Zdaj je razkril več informacij o tej posebni zmogljivosti, vključno s tem, kako deluje in se prilega preostali varnostni infrastrukturi sistema Windows.
Microsoftov podpredsednik za varnost OS in podjetja David Weston je napisal dolgo blog objava, ki pojasnjuje naravo izolacije aplikacije Win32. Funkcija je še ena varnostna možnost peskovnika Windows Sandbox in Microsoft Defender Application Guard, vendar temelji na AppContainerjih in ne na programski opremi, ki temelji na virtualizaciji, kot druga dva varnostna ukrepa. Za tiste, ki ne vedo, AppContainers služijo kot način za nadzor izvajanja procesa tako, da ga enkapsulirajo in zagotovijo, da deluje na zelo nizkih ravneh privilegijev in integritete.
Microsoft močno priporoča uporabo Smart App Control (SAC) in izolacija aplikacij Win32 v tandemu, hkrati pa ščiti vaše okolje Windows pred nezaupljivimi aplikacijami, ki uporabljajo 0-dnevne ranljivosti. Prvi varnostni mehanizem ustavi napade z namestitvijo samo zaupanja vrednih aplikacij, drugi pa lahko uporablja se za izvajanje aplikacij v izoliranem in varnem okolju za omejitev morebitne škode in zaščito uporabnika zasebnost. To je zato, ker aplikacija Win32, ki se izvaja ločeno, nima enake ravni privilegijev kot uporabnik sistema.
Tehnično podjetje Redmond je opredelilo več ključnih ciljev izolacije aplikacij Win32. Za začetek omejuje vpliv ogrožene aplikacije, saj imajo napadalci dostop z nizkimi pravicami do dela operacijski sistem, zato bi morali povezati zapleten napad v več korakih, da bi prebili svoj peskovnik. Tudi če so uspešni, to daje tudi boljši vpogled v njihov proces, zaradi česar je veliko hitrejše izvajanje in dobava ublažitvenih popravkov.
To deluje tako, da se aplikacija najprej zažene na nizkih stopnjah integritete prek AppContainerja, kar pomeni da imajo dostop do izbranih API-jev Windows in ne morejo izvajati zlonamerne kode, ki zahteva višje privilegije stopnje. V naslednjem in zadnjem koraku se načela najmanjših privilegijev uveljavijo tako, da se aplikaciji omogoči pooblaščen dostop do objektov sistema Windows, ki jih je mogoče zaščititi, kar je enakovredno implementaciji Seznam nadzora diskrecijskega dostopa (DACL) v sistemu Windows.
Druga prednost izolacije aplikacij Win32 je manjši napor razvijalcev, saj lahko ustvarjalci aplikacij izkoristijo Application Capability Profiler (ACP), ki je na voljo na GitHubu da razumejo, katera dovoljenja točno potrebujejo. Omogočijo lahko ACP in zaženejo svojo aplikacijo v "učnem načinu" v izolaciji aplikacij Win32, da dobijo dnevnike o dodatnih zmožnostih, ki jih potrebujejo za zagon svoje programske opreme. ACP poganja zaledje podatkovne plasti Windows Performance Analyzer (WPA) in dnevniki sledenja dogodkov (ETL). Podatke iz dnevnikov, ustvarjenih s tem postopkom, je mogoče preprosto dodati v datoteko manifesta paketa aplikacije.
Nazadnje, izolacija aplikacije Win32 želi ponuditi brezhibno uporabniško izkušnjo. Izolacija aplikacij Win32 to olajša tako, da od aplikacij zahteva uporabo zmožnosti "isolatedWin32-promptForAccess". da pozove uporabnika, če potrebuje dostop do svojih podatkov, kot so knjižnice .NET in zaščiteni register ključi. Poziv mora biti smiseln za uporabnika, od katerega se pridobiva soglasje. Ko je dostop do vira odobren, se zgodi naslednje:
Ko uporabnik odobri določeno datoteko za izolirano aplikacijo, se izolirana aplikacija poveže z operacijskim sistemom Windows Posredniški datotečni sistem (BFS) in omogoča dostop do datotek prek gonilnika mini filtra. BFS preprosto odpre datoteko in služi kot vmesnik med izolirano aplikacijo in BFS.
Virtualizacija datotek in registrov pomaga zagotoviti, da aplikacije še naprej delujejo, medtem ko ne posodabljajo osnovne datoteke ali registra. To prav tako zmanjša kakršno koli trenje glede uporabniške izkušnje, hkrati pa ohranja združljivost aplikacij. Zaščiteni imenski prostori so ustvarjeni tako, da omogočajo dostop samo do aplikacije in ne zahtevajo soglasja uporabnika. Na primer, lahko se odobri dostop do mape, ki ima lastnost, ki jo pozna samo aplikacija Win32 in je potrebna za združljivost aplikacije.
Microsoft je poudaril, da je za enakost funkcij med izoliranimi in neizoliranimi Aplikacije Win32, prve lahko komunicirajo z datotečnim sistemom in drugimi API-ji Windows z uporabo sistema Windows BFS. Poleg tega vnosi v manifestu aplikacije tudi zagotavljajo, da lahko aplikacija varno komunicira z elementi sistema Windows, kot so lupinska obvestila in ikone v sistemski vrstici. Ti lahko izveste več o pobudi na GitHubu tukaj.