Magic Quadrant™ per la gestione degli accessi privilegiati 2025: Netwrix riconosciuta per il quarto anno consecutivo. Scarica il report.

Piattaforma
Centro risorseBlog
Contenitori di Windows Server 2016

Contenitori di Windows Server 2016

Sep 27, 2018

Windows Server 2016 introduce la tecnologia dei container per isolare le applicazioni, ridurre le superfici di attacco e migliorare la scalabilità. I container di Windows Server condividono il kernel del sistema operativo host per un isolamento leggero dei processi, mentre i container Hyper-V aggiungono una separazione a livello di VM per una sicurezza potenziata. Con l'integrazione di Docker e il supporto di Nano Server, i container semplificano lo sviluppo e le operazioni, rafforzando il principio del privilegio minimo e migliorando la sicurezza guidata dall'identità.

Puoi migliorare la sicurezza dell'infrastruttura di sviluppo delle tue applicazioni riducendo le dimensioni e l'ambito delle risorse di applicazione e di calcolo. Un modo per farlo è containerizzare i carichi di lavoro. I container di Windows Server e Microsoft Hyper-V ti permettono di isolare i carichi di lavoro l'uno dall'altro e dal sistema operativo. Anche se un container viene compromesso da un attaccante, sarà difficile per l'attaccante accedere al sistema operativo host. I container offrono anche un ambiente standardizzato per i team di sviluppo, test e produzione.

Scarica la guida gratuita:

Contenitori

I container forniscono un ambiente operativo isolato e portatile per le applicazioni. Dal punto di vista dell'app, un container sembra essere un sistema operativo Windows completo e isolato con il proprio file system, dispositivi e configurazione. Pertanto, sotto molti aspetti, i container sono simili alle VM perché eseguono un sistema operativo, supportano un file system e puoi accedervi attraverso una rete in modo simile a qualsiasi altra macchina fisica o VM.

I container sono ambienti virtuali che condividono il kernel del sistema operativo host ma forniscono isolamento dello spazio utente, quindi offrono un ambiente ideale in cui un'app può funzionare senza influenzare il resto dei componenti della modalità utente del sistema operativo e senza che gli altri componenti della modalità utente influenzino l'app. Utilizzando i container, gli sviluppatori possono creare e testare app rapidamente in un ambiente isolato utilizzando solo poche risorse del sistema operativo. Questo significa che i container non necessitano di tutti i processi e servizi che un sistema operativo su una VM potrebbe utilizzare.

Windows Server 2016 supporta due tipi di container:

  • Contenitori di Windows Server. Questi contenitori forniscono isolamento delle applicazioni attraverso la tecnologia di isolamento dei processi e dei namespace. I contenitori di Windows Server condividono il kernel del sistema operativo con l'host del contenitore e con tutti gli altri contenitori che vengono eseguiti sull'host.
  • Contenitori Hyper-V. Questi contenitori ampliano l'isolamento fornito dai contenitori di Windows Server eseguendo ciascun contenitore in una VM altamente ottimizzata.

L'utilizzo di container offre numerosi vantaggi. La riduzione delle dimensioni del sistema operativo significa che è necessario mantenere meno componenti del sistema operativo, il che a sua volta comporta minori potenziali rischi per la sicurezza. La riduzione delle dimensioni del sistema operativo aiuta anche a migliorare la scalabilità.

Contenuti correlati selezionati:

Docker

Per eseguire un carico di lavoro di un'applicazione in un contenitore, devi utilizzare Docker. Docker è una raccolta di strumenti open-source e servizi basati sul cloud che forniscono un modello comune per il packaging (containerizzazione) del codice dell'app in un'unità standardizzata per lo sviluppo del software. Questa unità standardizzata, o contenitore Docker, è un software che è avvolto in un sistema di file completo che include tutto ciò di cui ha bisogno per funzionare, inclusi codice, runtime, strumenti di sistema, librerie di sistema e qualsiasi altra cosa tu possa installare su un server. Devi scaricare Docker separatamente; non fa parte dei supporti di installazione di Windows Server 2016.

Nano Server

Microsoft Nano Server è un'opzione di installazione relativamente nuova per Windows Server 2016. Si tratta di un sistema operativo leggero progettato per l'uso con istanze di container virtualizzate. Non c'è interfaccia utente; devi gestire Nano Server da remoto utilizzando PowerShell, ma questo PowerShell si differenzia da quello standard. A partire dalla versione 1803 di Windows Server, Nano Server è disponibile solo come immagine OS basata su container, e devi eseguirlo come un container in un host di container, come Docker. Puoi risolvere i problemi di questi nuovi container Nano utilizzando Docker e farli girare in IoT Core.

Un'istanza di Nano Server non può funzionare come un controller di dominio Active Directory. In particolare, non supporta le seguenti funzionalità:

  • Group Policy
  • Teaming della scheda di interfaccia di rete
  • Adattatori bus host virtuali
  • Accesso al server proxy a Internet
  • System Center Configuration Manager
  • System Center Data Protection Manager

Nano Server supporta i seguenti ruoli:

  • Servizi di File
  • Hyper-V
  • IIS
  • Server DNS

FAQ

Come si proteggono i container di Windows Server 2016 contro l'escalation dei privilegi?

La sicurezza dei container Windows inizia con l'identità – perché la Data Security That Starts with Identity significa controllare chi può accedere a cosa a livello di container. I container di Windows Server 2016 funzionano con isolamento dei processi per impostazione predefinita, il che offre una certa protezione, ma sono necessari controlli di sicurezza stratificati per prevenire attacchi di privilege escalation.

Innanzitutto, implementare i principi del privilegio minimo eseguendo i container con account utente non amministratori quando possibile. Utilizzare la direttiva USER nel Dockerfile per specificare un account a basso privilegio ed evitare di eseguire i container come Local System o Administrator a meno che non sia assolutamente necessario. Configurare i limiti di risorse del container per prevenire attacchi di esaurimento delle risorse che potrebbero portare a escalation dei privilegi.

Implementare account di servizio gestiti da gruppo (gMSAs) per i container che necessitano di autenticazione di dominio – ciò fornisce una gestione automatica delle password e riduce l'esposizione delle credenziali. Configurare le politiche di Windows Defender Application Control per limitare quali applicazioni possono essere eseguite all'interno dei container, creando una barriera aggiuntiva contro l'esecuzione di codice malevolo.

Per un isolamento potenziato, utilizzare i container Hyper-V invece dei container Windows Server quando si gestiscono dati sensibili. I container Hyper-V offrono un isolamento a livello hardware che rende molto più difficile il movimento laterale per gli attaccanti. Monitorare continuamente gli eventi di accesso e autenticazione dei container – non si può gestire ciò che non si vede, e individuare comportamenti rischiosi prima che si trasformino in una violazione richiede una visibilità in tempo reale sull'attività dei container.

Abilita l'inoltro degli eventi di Windows per centralizzare i log di sicurezza dei container e configura il monitoraggio del registro eventi di sicurezza per fallimenti di autenticazione, tentativi di escalation dei privilegi e creazione di processi sospetti all'interno dei container. La scansione di sicurezza regolare delle immagini dei container prima del loro dispiegamento aiuta a prevenire che vulnerabilità note raggiungano gli ambienti di produzione.

Quali sono le implicazioni di Identity Management dei container Windows?

I container Windows ereditano il contesto di sicurezza dell'host, il che crea sfide uniche per l'Identity Management che impattano direttamente sulla tua Data Security Posture Management. A differenza delle VM tradizionali, i container condividono il kernel del sistema operativo host, quindi le credenziali del container compromesse possono potenzialmente influenzare l'intero sistema host.

I processi dei container vengono eseguiti sotto specifici account utente Windows, e queste identità determinano quali dati e risorse di sistema ogni container può accedere. Quando distribuisci container su larga scala, stai essenzialmente moltiplicando la tua superficie di attacco delle identità – ogni container diventa un potenziale punto di ingresso per il furto di credenziali o attacchi di movimento laterale.

L'impatto pratico è che la vostra strategia di identità del container deve integrarsi con il vostro programma di governance dell'identità più ampio. Utilizzate account di servizio gestiti dal gruppo (gMSAs) per i processi del container che necessitano di autenticazione di dominio – i gMSAs forniscono una gestione automatica delle password ed eliminano la necessità di memorizzare le credenziali nelle immagini del container. Implementate controlli di accesso basati sull'identità che trattano le identità dei container come qualsiasi altro account privilegiato nel vostro ambiente, con adeguata rotazione, monitoraggio e applicazione del principio del minimo privilegio.

Considerate le sfide specifiche dell'identità dei container come la persistenza delle credenziali attraverso i riavvii dei container, metodi sicuri di iniezione delle credenziali e la gestione dei cicli di vita degli account di servizio in ambienti container dinamici. La vostra soluzione di Identity Management dovrebbe fornire visibilità su quali container stanno utilizzando quali identità e quali risorse stanno accedendo.

Come si esegue l'audit dell'accesso e dei permessi dei container Windows?

Un'auditing efficace dei container richiede visibilità sia sulle attività a livello di host che di container – perché gli attaccanti non si limitano a forzare l'ingresso, ma effettuano anche accessi. I container Windows generano eventi di sicurezza attraverso il sistema standard di registrazione eventi di Windows, ma è necessario configurare una registrazione aggiuntiva per catturare le attività specifiche dei container.

Abilita la registrazione del runtime dei container per tracciare gli eventi di creazione, modifica ed eliminazione dei container. Configura il registro eventi di Windows per catturare gli eventi di autenticazione, i tentativi di escalation dei privilegi e i modelli di accesso alle risorse all'interno dei container. Concentrati sul monitoraggio di schemi di accesso insoliti, come i container che accedono a file al di fuori dei loro volumi di dati previsti o che stabiliscono connessioni di rete inaspettate.

La chiave è correlare l'attività del container con la tua strategia di monitoraggio della sicurezza più ampia. Gli eventi di accesso al container dovrebbero alimentare il tuo programma di governance di identità e accesso insieme al monitoraggio tradizionale degli account utente. Imposta allarmi automatizzati per comportamenti ad alto rischio dei container, come i tentativi di accedere a repository di dati sensibili o di elevare i privilegi oltre l'ambito previsto del container. Questo approccio proattivo ti aiuta a individuare comportamenti rischiosi prima che si trasformino in una violazione.

Implementare l'audit del file system per le directory sensibili a cui i container non dovrebbero accedere e monitorare gli eventi di creazione dei processi all'interno dei container per rilevare l'avvio di eseguibili non autorizzati. Utilizzare il logging di PowerShell per catturare le attività amministrative all'interno dei container, in particolare per i container che eseguono script di automazione o strumenti amministrativi.

Quali sono le migliori pratiche di monitoraggio della sicurezza dei container Windows che dovresti seguire?

Il monitoraggio della sicurezza dei container richiede un approccio diverso rispetto al monitoraggio tradizionale dei server perché i container sono effimeri e creano superfici di attacco dinamiche. Inizia con il monitoraggio di base degli eventi del ciclo di vita dei container – creazione, avvio, arresto e cancellazione – per stabilire modelli operativi normali.

Monitorare il traffico di rete sia a livello di host che di container per rilevare schemi di comunicazione insoliti che potrebbero indicare movimenti laterali o tentativi di esfiltrazione dei dati. Tracciare le metriche di consumo delle risorse come CPU, memoria e utilizzo del disco per identificare potenziali attacchi di denial-of-service o attività di cryptomining all'interno dei container.

Implementare il monitoraggio in tempo reale delle modifiche al file system dei container, specialmente per i container che non dovrebbero scrivere su disco. Utilizzare Windows Performance Toolkit e strumenti di monitoraggio specifici per container per tracciare l'esecuzione dei processi all'interno dei container, osservando processi non autorizzati o tentativi di escalation di privilegi inaspettati. L'obiettivo è una visibilità e un controllo migliorati – è necessario vedere cosa sta accadendo nell'ambiente dei container per intraprendere azioni di sicurezza efficaci.

Configurate il monitoraggio per eventi di sicurezza specifici dei container, come il pull di immagini da registri non autorizzati, container che girano con privilegi eccessivi o container che tentano di accedere alle risorse del sistema host. Impostate gli allarmi per i container che si discostano dai loro modelli di comportamento attesi, come stabilire connessioni di rete verso destinazioni insolite o consumare risorse oltre i baseline normali.

Come si risolvono i problemi di autenticazione dei container Windows?

I problemi di autenticazione dei container derivano spesso da account di servizio mal configurati o dalla gestione impropria delle credenziali tra l'host e gli ambienti container. Inizia verificando che il tuo container stia utilizzando la corretta identità Windows – controlla il contesto di sicurezza sotto il quale i processi del container sono in esecuzione utilizzando strumenti come Process Monitor o Windows Event Viewer.

I fallimenti comuni dell'autenticazione si verificano quando i container non possono accedere alle risorse del dominio a causa di problemi di delega delle credenziali. Se il tuo container deve autenticarsi ad Active Directory o altri servizi di dominio, assicurati di utilizzare account di servizio gestiti dal gruppo (gMSAs) piuttosto che account di servizio tradizionali. I gMSAs forniscono una gestione automatica delle password e sono progettati specificamente per gli scenari dei container.

Controlla i log degli eventi di Windows sia sull'host del container che sui controller di dominio per errori relativi all'autenticazione. Cerca gli ID evento legati ai fallimenti di accesso, problemi di autenticazione Kerberos o problemi di autenticazione NTLM. Utilizza strumenti come Network Monitor o Wireshark per catturare il traffico di autenticazione e identificare dove si interrompe la catena di autenticazione. Ricorda che i problemi di autenticazione dei container spesso indicano problemi più ampi di Identity Management che potrebbero influenzare la tua postura di sicurezza complessiva.

Verificate che il vostro host di container sia correttamente collegato al dominio e che le funzionalità Windows richieste (come il modulo di Active Directory per PowerShell) siano installate. Controllate la risoluzione DNS all'interno dei container per assicurarvi che possano raggiungere i controller di dominio. Se utilizzate la delega delle credenziali, confermate che l'account dell'host di container abbia i necessari permessi di delega in Active Directory.

Condividi su

Scopri di più

Informazioni sull'autore

Asset Not Found

Dirk Schrader

VP della Ricerca sulla Sicurezza

Dirk Schrader è un Resident CISO (EMEA) e VP of Security Research presso Netwrix. Con 25 anni di esperienza nella sicurezza informatica e certificazioni come CISSP (ISC²) e CISM (ISACA), lavora per promuovere la cyber resilience come approccio moderno per affrontare le minacce informatiche. Dirk ha lavorato a progetti di cybersecurity in tutto il mondo, iniziando con ruoli tecnici e di supporto all'inizio della sua carriera per poi passare a posizioni di vendita, marketing e gestione prodotti sia in grandi multinazionali che in piccole startup. Ha pubblicato numerosi articoli sull'esigenza di affrontare la gestione dei cambiamenti e delle vulnerabilità per raggiungere la cyber resilience.