L'isolamento delle app Win32 è un'elegante funzionalità di sicurezza che Microsoft ha introdotto in Windows 11 il mese scorso, ecco come funziona.
Alla sua conferenza annuale Build del mese scorso, Microsoft ha annunciato la possibilità di farlo esegui le app Win32 in isolamento su Windows 11. La società non è entrata in molti dettagli nel suo post sul blog iniziale, ma ha evidenziato l'opzione per eseguire Win32 app in un ambiente sandbox in modo che il resto del sistema operativo sia protetto da potenziali danni Software. Ora ha rivelato ulteriori informazioni su questa particolare funzionalità, incluso il modo in cui funziona e si adatta al resto dell'infrastruttura di sicurezza di Windows.
Il vicepresidente della sicurezza del sistema operativo e dell'impresa di Microsoft, David Weston, ha scritto un lungo articolo post sul blog, che spiega la natura dell'isolamento delle app Win32. La funzione è un'altra opzione di sicurezza sandbox proprio come Sabbiera di Windows e Microsoft Defender Application Guard, ma si basa su AppContainer, non su software basato sulla virtualizzazione come le altre due misure di sicurezza. Per chi non lo sapesse, gli AppContainer servono come un modo per controllare l'esecuzione di un processo incapsulandolo e assicurando che venga eseguito a livelli di privilegi e integrità molto bassi.
Microsoft ha fortemente raccomandato di utilizzare Controllo intelligente delle app (SAC) e l'isolamento delle app Win32 in tandem proteggendo al contempo il tuo ambiente Windows da app non attendibili che utilizzano vulnerabilità 0-day. Il primo meccanismo di sicurezza blocca gli attacchi installando solo app affidabili mentre il secondo può esserlo utilizzato per eseguire app in un ambiente isolato e sicuro per limitare potenziali danni e proteggere l'utente intimità. Questo perché un'app Win32 eseguita in isolamento non ha lo stesso livello di privilegio dell'utente del sistema.
L'azienda tecnologica di Redmond ha identificato diversi obiettivi chiave dell'isolamento delle app Win32. Per cominciare, limita l'impatto di un'app compromessa poiché gli aggressori hanno un basso privilegio di accesso a una parte del sistema operativo e avrebbero bisogno di concatenare un complesso attacco in più fasi per sfondare la loro sandbox. Anche se hanno successo, ciò fornisce anche una visione più approfondita del loro processo, rendendo molto più veloce l'implementazione e la distribuzione delle patch di mitigazione.
Il modo in cui funziona è che un'app viene prima avviata a bassi livelli di integrità tramite AppContainer, il che significa che hanno accesso a determinate API di Windows e non possono eseguire codice dannoso che richiede privilegi più elevati livelli. Nel passaggio successivo e finale, vengono applicati i principi del privilegio minimo concedendo a un'app l'accesso autorizzato agli oggetti a protezione diretta di Windows, che equivale all'implementazione di un Elenco di controllo di accesso discrezionale (DACL) Su Windows.
Un altro vantaggio dell'isolamento delle app Win32 è la riduzione dello sforzo degli sviluppatori in quanto i creatori di app possono sfruttare l'Application Capability Profiler (ACP) disponibile su GitHub per capire di quali autorizzazioni hanno esattamente bisogno. Possono abilitare ACP ed eseguire la loro app in una "modalità di apprendimento" nell'isolamento dell'app Win32 per ottenere registri sulle funzionalità aggiuntive di cui hanno bisogno per eseguire il loro software. ACP è alimentato dal back-end del livello dati di Windows Performance Analyzer (WPA) e dai registri di traccia degli eventi (ETL). Le informazioni dai registri generati da questo processo possono essere semplicemente aggiunte al file manifest del pacchetto di un'applicazione.
Infine, l'isolamento delle app Win32 mira a offrire un'esperienza utente senza problemi. L'isolamento delle app Win32 facilita questo richiedendo alle app di utilizzare la funzionalità "isolatedWin32-promptForAccess" per richiedere all'utente nel caso in cui richieda l'accesso ai propri dati come le librerie .NET e il registro protetto chiavi. La richiesta dovrebbe essere significativa per l'utente da cui si sta ottenendo il consenso. Una volta concesso l'accesso a una risorsa, ecco cosa succede dopo:
Quando l'utente concede il consenso a un file specifico per l'applicazione isolata, l'applicazione isolata si interfaccia con Windows File system di intermediazione (BFS) e concede l'accesso ai file tramite un mini driver di filtro. BFS apre semplicemente il file e funge da interfaccia tra l'applicazione isolata e BFS.
La virtualizzazione di file e registro aiuta a garantire che le app continuino a funzionare senza aggiornare il file o il registro di base. Ciò riduce al minimo anche qualsiasi attrito nell'esperienza dell'utente mantenendo la compatibilità delle applicazioni. Gli spazi dei nomi protetti vengono creati per consentire l'accesso solo all'app e non richiedono il consenso dell'utente. Ad esempio, è possibile concedere l'accesso a una cartella con una proprietà nota solo all'app Win32 e necessaria per la compatibilità dell'app.
Microsoft ha sottolineato che per avere parità di funzionalità tra isolati e non isolati Le app Win32, le prime possono interagire con il file system e altre API di Windows sfruttando Windows BFS. Inoltre, le voci nel manifest dell'applicazione assicurano anche che l'app possa interagire in modo sicuro con elementi di Windows come le notifiche della shell e le icone nella barra delle applicazioni. Puoi scopri di più sull'iniziativa su GitHub qui.