Indice dei contenuti
In questo articolo andremo a illustrare una serie di tecniche che gli amministratori di sistema possono utilizzare per rendere il proprio network (o dominio) più sicuro e affidabile dal punto di vista degli accessi utente. Si tratta di una serie di best practice che, una volta implementate, contribuiranno ad aumentare le "misure tecniche e organizzative adeguate a garantire un livello di sicurezza adeguato al rischio" previste dall'art. 32 del GDPR e in carico al titolare e al responsabile del trattamento.
Nello specifico, ci occuperemo di tre importanti aspetti che riguardano la gestione degli account utente, ovvero le credenziali assegnate agli operatori autorizzati e che consentono loro di accedere al sistema, essere autenticati e quindi operare all'interno dell'infrastruttura di rete nelle modalità consentite dai ruoli e permessi a loro assegnati: i requisiti di complessità della password, la scadenza periodica della password, il blocco dell'account dopo un certo numero di tentativi di accesso falliti, la disconnessione automatica dopo un certo periodo di inattività e, ultimo ma non per importanza, la disabilitazione dell'account dopo un certo numero di giorni di inattività.
Lo scopo di questo approfondimento è quello di comprendere come Windows gestisce ciascuno di questi aspetti e quali sono le possibilità a nostra disposizione per abilitare, modificare o disabilitare i controlli e i parametri alla base di queste impostazioni.
Complessità della Password
L'adozione di requisiti minimi per la complessità delle password scelte dagli utenti è un requisito di sicurezza fondamentale di qualsiasi sistema informatico contenente dati personali: la necessità di dotarsi di questo criterio è prevista nell'ordinamento italiano fin dal codice privacy del 2003 (Dlgs 196/2003) ed è stata confermata anche nel Decreto di adeguamento al GDPR (Dlgs 101/2018). Si tratta, inutile dirlo, di un accorgimento di sicurezza estremamente importante, in quanto consente di proteggere l'account degli utenti da una serie di vulnerabilità legate alla scelta di una password debole (weak password), dalla possibilità di indovinare la password da parte di un qualsiasi operatore non autorizzato a potenziali attacchi brute-force basati sull'utilizzo di dizionari e/o elenchi.
Windows 10 - Criteri di gruppo locali
Per modificare il criterio di complessità delle password di tutti gli account configurati sul nostro sistema Windows locale, è necessario compiere i seguenti passaggi:
- Lanciare lo strumento Editor Criteri di gruppo locali (Local Group Policy Editor) premendo simultaneamente WIN + R e poi digitando gpedit.msc.
- Navigare su Configurazione Computer > Impostazioni di Windows > Impostazioni sicurezza > Criteri account > Criteri password.
- Assicurarsi che l'opzione Le password devono essere conformi ai requisiti di complessità sia attiva.
- Assicurarsi che l'opzione Lunghezza minima password sia maggiore o uguale a 8.
Windows Server - Criteri di Gruppo AD
Per configurare il criterio di complessità delle password di tutti gli account del dominio è necessario accedere allo strumento Gestione Criteri di Gruppo (Group Policy Editor), responsabile delle impostazioni relative alla Default Domain Policy di Windows Server: per accedervi, premere simultaneamente WIN + R e poi digitando gpedit.msc oppure da Pannello di Controllo > Strumenti di amministrazione > Gestione criteri di gruppo. Una volta lì, aprire - sull'albero a sinistra - l'elemento corrispondente al dominio su cui si desidera agire, fare click con il tasto destro su Default Domain Policy e fare click su Modifica per aprire la finestra Editor Gestione Criteri di Gruppo.
Giunti a quel punto, i passaggi da effettuare - come si può vedere dalla screenshot seguente - sono pressoché identici a quelli per modificare le impostazioni relative ai criteri di gruppo locali (cfr. paragrafo precedente):
Il riepilogo dei valori indicati nei Criteri di Gruppo, valido per tutti gli account dell'Active Directory relativa al dominio selezionato, può essere visualizzato mediante il tab Impostazioni.
Scadenza periodica della Password
La scadenza periodica della password è un'altra impostazione di sicurezza fondamentale, in quanto impedisce che una eventuale password "rubata" o posseduta da un utente non autorizzato (o non più autorizzato) possa essere utilizzata a tempo indeterminato.
Windows 10 - Criteri di gruppo locali
Per impostare la scadenza periodica delle password relative a tutti gli account configurati sul nostro sistema Windows locale, è necessario compiere i seguenti passaggi:
- Lanciare lo strumento Editor Criteri di gruppo locali (Local Group Policy Editor) premendo simultaneamente WIN + R e poi digitando gpedit.msc.
- Navigare su Configurazione Computer > Impostazioni di Windows > Impostazioni sicurezza > Criteri account > Criteri password.
- Assicurarsi che l'opzione Validità massima password abbia un valore adeguato e conforme alle best practice o ai requisiti normativi di riferimento: ad esempio, un valore pari a 90 farà scadere le password dopo un periodo di 90 giorni.
Inoltre, se si vuole impedire che l'utente utilizzi una password già utilizzata in precedenza, è possibile impostare l'opzione Imponi cronologia delle password con un valore maggiore di zero.
Windows Server - Criteri di Gruppo AD
Anche in questo caso, per configurare il criterio di complessità delle password di tutti gli account del dominio è necessario accedere allo strumento Gestione Criteri di Gruppo (Group Policy Editor), responsabile delle impostazioni relative alla Default Domain Policy di Windows Server: per accedervi, premere simultaneamente WIN + R e poi digitando gpedit.msc oppure da Pannello di Controllo > Strumenti di amministrazione > Gestione criteri di gruppo. Una volta lì, aprire - sull'albero a sinistra - l'elemento corrispondente al dominio su cui si desidera agire, fare click con il tasto destro su Default Domain Policy e fare click su Modifica per aprire la finestra Editor Gestione Criteri di Gruppo.
Giunti a quel punto, i passaggi da effettuare sono pressoché identici a quelli per modificare le impostazioni relative ai criteri di gruppo locali (cfr. paragrafo precedente): i valori impostati saranno applicati tutti gli account dell'Active Directory relativa al dominio indicato.
Blocco Account dopo N login falliti
Il blocco dell'account dopo un certo numero di tentativi di accesso falliti è una ottima good practice che si rivela particolarmente efficace contro le tecniche di attacco di tipo brute-force, ovvero basate sulla ripetizione automatica del login utilizzando un gran numero di password diverse, con l'obiettivo di individuare quella corretta; il blocco account è una utile contromisura anche per difendersi da approcci trial and error di tipo manuale: si pensi alla classica scena - comune a tanti film e serie TV - in cui il protagonista prova una serie di parole e/o date nel tentativo di accedere al terminale dell'amico, collega, parente o rivale. In tutti quei casi, il blocco account si rivela una protezone efficace.
Windows 10 - Criteri di gruppo locali
Per impostare e/o modificare il blocco dell'account utente dopo N tentativi di accesso falliti sul nostro sistema Windows locale, è necessario compiere i seguenti passaggi:
- Lanciare lo strumento Editor Criteri di gruppo locali (Local Group Policy Editor) premendo simultaneamente WIN + R e poi digitando gpedit.msc.
- Navigare su Configurazione Computer > Impostazioni di Windows > Impostazioni sicurezza > Criteri account > Criterio di blocco account.
- Impostare l'opzione Soglia di blocco dell'account assegnando un valore pari al numero di tentativi che vogliamo consentire all'utente prima del blocco (ad es. 3).
- Impostare la Durata del blocco account assegnando un valore pari al tempo di blocco dell'account.
- Impostare l'opzione Reimposta conteggio blocco account dopo assegnando un valore pari al numero di minuti che vogliamo far passare per "resettare" la soglia di blocco dell'account, ovvero il numero di tentativi effettuati: ad esempio, impostando un valore 5 (pari a 5 minuti), il numero di tentativi già effettuati sarà resettato ogni 5 minuti, a patto ovviamente che non ne vengano effettuati altri nell'intervallo di tempo indicato (e/o che l'account non sia già stato bloccato).
Windows Server - Criteri di Gruppo AD
Anche in questo caso, per configurare il blocco dell'account utente dopo N tentativi di accesso falliti per tutti gli account del dominio è necessario accedere allo strumento Gestione Criteri di Gruppo (Group Policy Editor), responsabile delle impostazioni relative alla Default Domain Policy di Windows Server: per accedervi, premere simultaneamente WIN + R e poi digitando gpedit.msc oppure da Pannello di Controllo > Strumenti di amministrazione > Gestione criteri di gruppo. Una volta lì, aprire - sull'albero a sinistra - l'elemento corrispondente al dominio su cui si desidera agire, fare click con il tasto destro su Default Domain Policy e fare click su Modifica per aprire la finestra Editor Gestione Criteri di Gruppo.
Giunti a quel punto, i passaggi da effettuare sono pressoché identici a quelli per modificare le impostazioni relative ai criteri di gruppo locali (cfr. paragrafo precedente): i valori impostati saranno applicati tutti gli account dell'Active Directory relativa al dominio indicato.
Blocco schermo per inattività
Il blocco automatico del computer dopo un certo periodo di inattività è un altra good pratice di sicurezza molto richiesta nella maggior parte degli audit e assessment IT. Si tratta di un'impostazione che, come suggerisce la sua descrizione, disconnette automaticamente l'utente in mancanza di input di qualsivoglia tipo (tastiera, mouse o altra periferica) per un determinato periodo di tempo: come è facile comprendere, si tratta di un'ottimo metodo per impedire che il PC possa cadere preda di usi impropri in caso di assenza improvvisa e prolungata da parte dell'operatore autorizzato. Nella maggior parte delle aziende (e dei Sistemi Operativi) il blocco automatico è impostato su periodi particolarmente brevi, solitamente compresi tra 10 e i 45 minuti. Ovviamente, per ripristinare il sistema (o rimuovere il blocco dello schermo) è necessario inserire nuovamente la password.
Windows 10 - Impostazioni Screen Saver
Per impostare e/o modificare il blocco dell'account utente dopo N tentativi di accesso falliti sul nostro sistema Windows locale, è necessario compiere i seguenti passaggi:
- Dal menu Start, selezionare Impostazioni > Personalizzazione.
- Selezionare Schermata di blocco dal menu a sinistra, quindi recatevi sulle Impostazioni Screen Saver.
- Impostate la durata di Attesa (in minuti), quindi assicuratevi che la checkbox dell'opzione Al ripristino, torna alla schermata di accesso sia attiva.
Windows Server - Criteri di Gruppo AD
Per configurare il blocco dello schermo per inattività per tutti gli account del dominio è necessario accedere allo strumento Gestione Criteri di Gruppo (Group Policy Editor), responsabile delle impostazioni relative alla Default Domain Policy di Windows Server: per accedervi, premere simultaneamente WIN + R e poi digitando gpedit.msc oppure da Pannello di Controllo > Strumenti di amministrazione > Gestione criteri di gruppo. Una volta lì, aprire - sull'albero a sinistra - l'elemento corrispondente al dominio su cui si desidera agire, fare click con il tasto destro su Default Domain Policy e fare click su Modifica per aprire la finestra Editor Gestione Criteri di Gruppo.
Giunti a quel punto, navigare su Configurazione utente > Criteri > Modelli amministrativi > Pannello di controllo > Personalizzazione e impostare le seguenti voci:
- Abilita screen saver
- Timeout screen saver
- Proteggi screen saver con password
I valori da inserire seguono la stessa logica delle Impostazioni screen saver descritte nel paragrafo precedente.
Disconnesione automatica per inattività
La disconnessione automatica per inattività delle sessioni collegate al sistema tramite Desktop Remoto (RDP) è un altra good pratice di sicurezza particolarmente importante,
Windows 10 - Criteri di gruppo locali
Per impostare la disconnessione automatica per inattività tutti gli account configurati sul nostro sistema Windows locale, è necessario compiere i seguenti passaggi:
- Lanciare lo strumento Editor Criteri di gruppo locali (Local Group Policy Editor) premendo simultaneamente WIN + R e poi digitando gpedit.msc.
- Navigare su Configurazione Computer > Modelli Amministrativi > Componenti di Windows > Servizi Desktop remoto > Host Sessione di Desktop remoto > Limiti di tempo sessioni.
- Impostare un limite di tempo adeguato per le seguenti opzioni:
- Imposta limite di tempo per le sessioni disconnesse.
- Imposta limite di tempo per le sessioni di servizi Desktop remoto attive ma in attesa.
Inoltre, qualora si preferisca terminare la sessione anziché disconnetterla, sarà necessario attivare l'opzione Termina la sessione quando si raggiungono i limiti di tempo.
Windows Server - Criteri di Gruppo AD
Anche in questo caso, per configurare il criterio di complessità delle password di tutti gli account del dominio è necessario accedere allo strumento Gestione Criteri di Gruppo (Group Policy Editor), responsabile delle impostazioni relative alla Default Domain Policy di Windows Server: per accedervi, premere simultaneamente WIN + R e poi digitando gpedit.msc oppure da Pannello di Controllo > Strumenti di amministrazione > Gestione criteri di gruppo. Una volta lì, aprire - sull'albero a sinistra - l'elemento corrispondente al dominio su cui si desidera agire, fare click con il tasto destro su Default Domain Policy e fare click su Modifica per aprire la finestra Editor Gestione Criteri di Gruppo.
Giunti a quel punto, i passaggi da effettuare sono pressoché identici a quelli per modificare le impostazioni relative ai criteri di gruppo locali (cfr. paragrafo precedente): i valori impostati saranno applicati tutti gli account dell'Active Directory relativa al dominio indicato.
Disabilitazione dell'account dopo inattività
Ultima, ma non per importanza, viene la possibilità di disabilitare un account dopo un certo numero di giorni di inattività. Si tratta di una good practice non molto utilizzata, in quanto non supportata nativamente né da Windows né da Windows Server, ma particolarmente importante come misura di sicurezza aggiuntiva e complementare rispetto alle precedenti: in mancanza di un automatismo del genere esiste il concreto rischio che la vostra Active Directory consenta l'accesso a tempo indeterminato ad account che non dovrebbero più essere attivi, come ad esempio quelli relativi ad ex-dipendenti o a collaboratori non più attivi presso la propria azienda.
Disable-Inactive-ADAccounts
Per gestire questa eventualità abbiamo creato Disable-Inactive-ADAccounts, uno script Powershell che può essere scaricato gratuitamente da GitHub. Lo script può essere configurato per disabilitare gli utenti AD inattivi oltre un numero di giorni a scelta (180 per impostazione predefinita) e, volendo, anche per effettuare l'eliminazione automatica degli utenti precedentemente disattivati (dopo un ulteriore intervallo di tempo).
Per utilizzarlo, è sufficiente scaricare l'ultima versione da GitHub, installarlo sul proprio controller di dominio e quindi eseguito a intervalli tramite una operazione pianificata (scheduled task).
Conclusioni
Per il momento è tutto: ci auguriamo che questo articolo possa aiutare tutti gli utenti e gli amministratori di sistema interessati a configurare i propri sistemi in modo più sicuro. Come sempre, nel caso in cui i contenuti siano stati di vostro interesse, vi invitiamo a ringraziarci "virtualmente" con un like su Facebook o Twitter. Alla prossima!
Hai bisogno di organizzare un corso per te o per la tua azienda? Consulta il programma del nostro Corso di Formazione su GDPR e Privacy e/o chiedici un preventivo senza impegno!