Questo articolo fornisce indicazioni sull'identificazione e l'analisi degli attacchi password spray all'interno dell'organizzazione e sull'esecuzione delle azioni correttive necessarie per proteggere le informazioni e ridurre al minimo altri rischi.
In questo articolo sono contenute le sezioni seguenti:
Prerequisiti: copre i requisiti specifici che è necessario completare prima di avviare l'indagine. Ad esempio, la registrazione che deve essere attivata, i ruoli e le autorizzazioni necessarie, tra le altre.
Flusso di lavoro: mostra il flusso logico da seguire per eseguire questa indagine.
Elenco di controllo: contiene un elenco di attività per ognuno dei passaggi del grafico di flusso. Questo elenco di controllo può essere utile in ambienti altamente regolamentati per verificare ciò che hai fatto o semplicemente come controllo di qualità per te stesso.
Passaggi di indagine: include una guida dettagliata per questa indagine specifica.
Ripristino: contiene passaggi generali su come ripristinare/mitigare da un attacco password spraying.
Riferimenti: contiene altri materiali di lettura e riferimento.
Prerequisiti
Prima di avviare l'indagine, assicurarsi di aver completato la configurazione per i log e gli avvisi e altri requisiti di sistema.
Per il monitoraggio di Microsoft Entra, seguire i suggerimenti e le indicazioni disponibili nella Guida microsoft Entra SecOps.
Per impostazione predefinita, Microsoft Active Directory Federation Services (ADFS) in Windows Server 2016 ha un livello di controllo di base abilitato. Con il controllo di base, gli amministratori possono visualizzare cinque o meno eventi per una singola richiesta. Impostare la registrazione sul livello più alto e inviare i log di AD FS (& security) a un siem per correlare con l'autenticazione di AD e l'ID Microsoft Entra.
Per visualizzare il livello di controllo corrente, usare questo comando di PowerShell:
Get-AdfsProperties
Questa tabella elenca i livelli di controllo disponibili.
Livello di controllo
Sintassi di Powershell
Descrizione
Nessuna
Set-AdfsProperties -AuditLevel None
Il controllo è disabilitato e non vengono registrati eventi
Di base (Basic) (impostazione predefinita)
Set-AdfsProperties -AuditLevel Basic
Non verranno registrati più di cinque eventi per una singola richiesta
Verbose
Set-AdfsProperties -AuditLevel Verbose
Vengono registrati tutti gli eventi. Questo livello registra una quantità significativa di informazioni per ogni richiesta.
Per aumentare o abbassare il livello di controllo, usare questo comando di PowerShell:
Configurare la registrazione della sicurezza di ADFS 2012 R2/2016/2019
Selezionare Start, passare a Programmi > di amministrazione e quindi selezionare Criteri di sicurezza locali.
Passare alla cartella Impostazioni di sicurezza\Criteri locali\User Rights Management e quindi fare doppio clic su Genera controlli di sicurezza.
Nella scheda Impostazioni di sicurezza locali verificare che l'account del servizio ADFS sia elencato. Se non è presente, selezionare Aggiungi utente o gruppo e aggiungerlo all'elenco e quindi selezionare OK.
Per abilitare il controllo, aprire un prompt dei comandi con privilegi elevati ed eseguire il comando seguente:
Aprire quindi lo snap-in Gestione ADFS, selezionare Start, passare a Programmi > Strumenti di amministrazione e quindi selezionare Gestione ADFS.
Nel riquadro Azioni fare clic su Modifica proprietà servizio federativo.
Nella finestra di dialogo Proprietà servizio federativo selezionare la scheda Eventi.
Selezionare le caselle di controllo Operazioni riuscite e Operazioni non riuscite.
Selezionare OK per completare e salvare la configurazione.
Installare Microsoft Entra Connect Health per ADFS
L'agente Microsoft Entra Connect Health per ADFS consente di avere maggiore visibilità sull'ambiente federativo. Offre diversi dashboard preconfigurati, ad esempio l'utilizzo, il monitoraggio delle prestazioni e i report IP rischiosi.
Dopo aver configurato Microsoft Entra Connect Health per ADFS, è necessario monitorare e configurare gli avvisi usando la cartella di lavoro del report IP rischioso DI ADFS e Monitoraggio di Azure. I vantaggi dell'uso di questo report sono i seguenti:
Rilevamento di indirizzi IP che superano una soglia di accessi basati su password non riusciti.
Supporta gli account di accesso non riusciti a causa di password non valida o a causa dello stato di blocco extranet.
Supporta l'abilitazione degli avvisi tramite avvisi di Azure.
Impostazioni di soglia personalizzabili che corrispondono ai criteri di sicurezza di un'organizzazione.
Query personalizzabili e visualizzazioni espanse per un'ulteriore analisi.
Funzionalità espanse del report IP rischioso precedente, deprecato a partire dal 24 gennaio 2022.
Configurare gli avvisi degli strumenti SIEM in Microsoft Sentinel
Per configurare gli avvisi degli strumenti SIEM, vedere l'esercitazione relativa agli avvisi predefiniti.
Integrazione SIEM in app Microsoft Defender per il cloud
Connettere lo strumento SIEM (Security Information and Event Management) alle app Microsoft Defender per il cloud, che attualmente supporta Micro Focus ArcSight e il formato di evento comune generico (CEF).
È possibile connettere SIEM con il API Sicurezza Microsoft Graph usando una delle opzioni seguenti:
Uso diretto delle opzioni di integrazione supportate: fare riferimento all'elenco delle opzioni di integrazione supportate, ad esempio la scrittura di codice per connettere direttamente l'applicazione per ottenere informazioni dettagliate avanzate. Usare esempi per iniziare.
Usare integrazioni e connettori nativi creati dai partner Microsoft: fare riferimento alle soluzioni partner di Microsoft Graph API Sicurezza per usare queste integrazioni.
Usare i connettori creati da Microsoft : fare riferimento all'elenco dei connettori che è possibile usare per connettersi con l'API tramite varie soluzioni per siem (Security Incident and Event Management), Security Response and Orchestration (SOAR), Incident Tracking and Service Management (ITSM), reporting e così via.
Il diagramma di flusso seguente illustra il flusso di lavoro di analisi password spraying.
È anche possibile:
Scaricare il playbook password spraying e altri flussi di lavoro del playbook di risposta agli eventi imprevisti come PDF.
Scaricare i flussi di lavoro del playbook password spraying e di altro tipo di risposta agli eventi imprevisti come file di Visio.
Elenco di controllo
Trigger di indagine
Ricevuto un trigger da SIEM, log del firewall o ID Entra Microsoft
Funzionalità password spraying password di protezione di Microsoft Entra ID o IP rischioso
Numero elevato di accessi non riusciti (ID evento 411)
Picco in Microsoft Entra Connect Health per ADFS
Un altro evento imprevisto di sicurezza (ad esempio, phishing)
Attività non spiegata, ad esempio un accesso da una posizione non familiare o un utente che riceve richieste di autenticazione a più fattori impreviste
Analisi
Che cosa viene avvisato?
È possibile confermare che questo attacco è uno spraying password?
Determinare la sequenza temporale per l'attacco.
Determinare uno o più indirizzi IP dell'attacco.
Filtrare in base agli accessi riusciti per questo periodo di tempo e all'indirizzo IP, inclusa la password riuscita ma l'autenticazione a più fattori non riuscita
C'è qualcosa di normale nell'account, ad esempio il nuovo dispositivo, il nuovo sistema operativo, il nuovo indirizzo IP usato? Usare Defender per il cloud App o Azure Information Protection per rilevare attività sospette.
Informare le autorità locali/terze parti per ricevere assistenza.
Se si sospetta una compromissione, verificare la presenza di esfiltrazione di dati.
Controllare l'account associato per individuare comportamenti sospetti e cercare di correlare ad altri possibili account e servizi, nonché ad altri indirizzi IP dannosi.
Controllare gli account di chiunque lavori nello stesso ufficio/accesso delegato - Igiene delle password (assicurarsi che non usino la stessa password dell'account compromesso)
Eseguire la Guida di ADFS
Soluzioni di prevenzione
Per indicazioni su come abilitare le funzionalità seguenti, vedere la sezione Riferimenti :
È anche possibile scaricare gli elenchi di controllo password spraying e altri playbook degli eventi imprevisti come file di Excel.
Procedura di indagine
Risposta agli eventi imprevisti di password spraying
Verranno ora illustrate alcune tecniche di attacco password spraying prima di procedere con l'indagine.
Compromissione della password: un utente malintenzionato ha indovinato la password dell'utente, ma non è stato in grado di accedere all'account a causa di altri controlli, ad esempio l'autenticazione a più fattori (MFA).
Compromissione dell'account: un utente malintenzionato ha indovinato la password dell'utente e ha ottenuto l'accesso all'account.
Individuazione dell'ambiente
Identificare il tipo di autenticazione
Come primo passaggio, è necessario controllare il tipo di autenticazione usato per un dominio tenant/verificato che si sta esaminando.
Per ottenere lo stato di autenticazione per un nome di dominio specifico, usare il comando PowerShell Get-MgDomain . Ecco un esempio:
Se l'autenticazione è federata, gli accessi riusciti vengono archiviati in Microsoft Entra ID. Gli accessi non riusciti si trovano nel provider di identità (IDP). Per altre informazioni, vedere Risoluzione dei problemi e registrazione degli eventi di AD FS.
Se il tipo di autenticazione è gestito, solo cloud, sincronizzazione dell'hash delle password (PHS) o autenticazione pass-through (PTA), gli accessi riusciti e non riusciti vengono archiviati nei log di accesso di Microsoft Entra.
Nota
La funzionalità Implementazione a fasi consente di gestire il nome di dominio del tenant, ma gli utenti specifici. Determinare se gli utenti sono membri di questo gruppo.
Microsoft Entra Connect Health è abilitato per ADFS?
Il report RiskyIP fornisce indirizzi IP sospetti e data/ora. Le notifiche devono essere abilitate.
Per verificare se si archiviano e correlano i log in un siem (Security Information and Event Management) o in qualsiasi altro sistema:
Log Analytics- query predefinite
Microsoft Sentinel: query predefinite
Splunk: query predefinite
Log del firewall
Registrazione accesso utenti se > 30 giorni
Informazioni sui report di Microsoft Entra ID e MFA
È importante comprendere i log visualizzati per determinare la compromissione. Ecco le guide rapide per comprendere gli accessi a Microsoft Entra e la creazione di report MFA:
Un trigger di evento imprevisto è un evento o una serie di eventi che causano l'attivazione di un avviso predefinito. Un esempio è il numero di tentativi di password non valido al di sopra della soglia predefinita. Di seguito sono riportati altri esempi di trigger che possono essere avvisati negli attacchi password spraying e in cui vengono visualizzati questi avvisi. I trigger degli eventi imprevisti includono:
Utenti
IP
Stringhe dell'agente utente
Data/ora
Anomalie
Tentativi di password non valida
I picchi insoliti nell'attività sono indicatori chiave tramite Microsoft Entra Health Connect (presupponendo che questo componente sia installato). Altri indicatori sono:
L'invio di avvisi tramite SIEM mostra un picco quando si confrontano i log.
Dimensioni del log superiori al normale per gli accessi ad ADFS non riuscite, che possono essere un avviso nello strumento SIEM.
Quantità maggiori di 342/411 ID evento: nome utente o password non corretto. Oppure 516 per il blocco extranet.
Soglia di richiesta di autenticazione non riuscita: indirizzo IP rischioso in Microsoft Entra ID o avviso dello strumento SIEM/errori 342 e 411 (per poter visualizzare queste informazioni, la registrazione avanzata deve essere attivata).
IP rischioso nel portale di Microsoft Entra Health Connect
Gli avvisi IP rischiosi si verificano quando viene raggiunta la soglia personalizzata per le password non valida in un'ora e il numero di password non valido in un giorno e blocchi extranet.
I dettagli dei tentativi non riusciti sono disponibili negli indirizzi IP delle schede e nei blocchi extranet.
Rilevare lo spraying delle password in Azure Identity Protection
Azure Identity Protection è una funzionalità di Microsoft Entra ID P2 che include un avviso di rischio di rilevamento password-spray e una funzionalità di ricerca che fornisce altre informazioni o correzioni automatiche.
Indicatori di attacco bassi e lenti
Gli indicatori di attacco bassi e lenti sono quando le soglie per il blocco dell'account o le password non dannose non vengono raggiunti. È possibile rilevare questi indicatori tramite:
Errori nell'ordine dell'elenco indirizzi globale
Errori con attributi ripetitivi (UA, AppID di destinazione, blocco IP/posizione)
Temporizzazione: gli spray automatizzati tendono ad avere un intervallo di tempo più regolare tra i tentativi.
Indagine e mitigazione
Nota
È possibile eseguire contemporaneamente indagini e mitigazioni durante attacchi sostenuti/in corso.
Attivare la registrazione avanzata in ADFS se non è già attivata.
Determinare la data e l'ora di inizio dell'attacco.
Determinare l'indirizzo IP dell'utente malintenzionato (potrebbe essere più origini e più indirizzi IP) dal firewall, ADFS, SIEM o MICROSOFT Entra ID.
Una volta confermato password spray, potrebbe essere necessario informare le agenzie locali (polizia, terze parti, tra gli altri).
Collare e monitorare gli ID evento seguenti per ADFS:
ADFS 2012 R2
Evento di controllo 403 : agente utente che effettua la richiesta
Evento di controllo 411: richieste di autenticazione non riuscite
Evento di controllo 516 : blocco extranet
Audit Event 342 : richieste di autenticazione non riuscite
Audit Event 412 - Accesso riuscito
Per raccogliere le richieste di autenticazione non riuscite dell'evento di controllo 411, usare lo script seguente:
PARAM ($PastDays = 1, $PastHours)
#************************************************
#ADFSBadCredsSearch.ps1
#Version 1.0
#Date: 6-20-2016
#Author: Tim Springston [MSFT]
#Description: This script will parse the ADFS server's (not proxy) security ADFS
#for events which indicate an incorrectly entered username or password. The script can specify a
#past period to search the log for and it defaults to the past 24 hours. Results >#will be placed into a CSV for
#review of UPN, IP address of submitter, and timestamp.
#************************************************
cls
if ($PastHours -gt 0)
{$PastPeriod = (Get-Date).AddHours(-($PastHours))}
else
{$PastPeriod = (Get-Date).AddDays(-($PastDays))}
$Outputfile = $Pwd.path + "\BadCredAttempts.csv"
$CS = get-wmiobject -class win32_computersystem
$Hostname = $CS.Name + '.' + $CS.Domain
$Instances = @{}
$OSVersion = gwmi win32_operatingsystem
[int]$BN = $OSVersion.Buildnumber
if ($BN -lt 9200){$ADFSLogName = "AD FS 2.0/Admin"}
else {$ADFSLogName = "AD FS/Admin"}
$Users = @()
$IPAddresses = @()
$Times = @()
$AllInstances = @()
Write-Host "Searching event log for bad credential events..."
if ($BN -ge 9200) {Get-Winevent -FilterHashTable @{LogName= "Security"; >StartTime=$PastPeriod; ID=411} -ErrorAction SilentlyContinue | Where-Object{$_.Message -match "The user name or password is incorrect"} | % {
$Instance = New-Object PSObject
$UPN = $_.Properties[2].Value
$UPN = $UPN.Split("-")[0]
$IPAddress = $_.Properties[4].Value
$Users += $UPN
$IPAddresses += $IPAddress
$Times += $_.TimeCreated
add-member -inputobject $Instance -membertype noteproperty -name >"UserPrincipalName" -value $UPN
add-member -inputobject $Instance -membertype noteproperty -name "IP Address" ->value $IPAddress
add-member -inputobject $Instance -membertype noteproperty -name "Time" -value >($_.TimeCreated).ToString()
$AllInstances += $Instance
$Instance = $null
}
}
$AllInstances | select * | Export-Csv -Path $Outputfile -append -force ->NoTypeInformation
Write-Host "Data collection finished. The output file can be found at >$outputfile`."
$AllInstances = $null
ADFS 2016/2019
Insieme agli ID evento precedenti, collazione dell'evento audit 1203 - Errore di convalida delle credenziali aggiornato.
Comprimere tutti gli accessi riusciti per questa volta in ADFS (se federato). Un accesso rapido e la disconnessa (allo stesso secondo) può essere un indicatore di una password che viene indovinata correttamente e tentata dall'utente malintenzionato.
Collate tutti gli eventi di Microsoft Entra riusciti o interrotti per questo periodo di tempo per scenari federati e gestiti.
Monitorare e collare gli ID evento da Microsoft Entra ID
I report di accesso di Microsoft Entra includono l'attività di accesso ad ADFS quando si usa Microsoft Entra Connect Health. Filtrare i log di accesso in base al tipo di autorità di certificazione token "Federated".
Ecco un esempio di comando di PowerShell per recuperare i log di accesso per un indirizzo IP specifico:
È importante essere in grado di reagire alla minaccia più critica. Questa minaccia può indicare che l'utente malintenzionato ha ottenuto correttamente l'accesso a un account e quindi può accedere/esfiltrare i dati; l'utente malintenzionato ha la password, ma potrebbe non essere in grado di accedere all'account. Ad esempio, hanno la password ma non superano la richiesta di autenticazione a più fattori. Inoltre, l'utente malintenzionato non è riuscito a indovinare correttamente le password, ma continuare a provare. Durante l'analisi, classificare in ordine di priorità questi risultati:
Accessi riusciti in base all'indirizzo IP dell'utente malintenzionato noto
Accesso interrotto dall'indirizzo IP dell'utente malintenzionato noto
Accessi non riusciti da un indirizzo IP dell'utente malintenzionato noto
Altri indirizzi IP sconosciuti che hanno avuto esito positivo
Controllare l'autenticazione legacy
La maggior parte degli attacchi usa l'autenticazione legacy. Esistono molti modi per determinare il protocollo dell'attacco.
In Microsoft Entra ID passare a Accessi e filtrare in App client.
Selezionare tutti i protocolli di autenticazione legacy elencati.
In alternativa, se si dispone di un'area di lavoro di Azure, è possibile usare la cartella di lavoro di autenticazione legacy predefinita che si trova nell'interfaccia di amministrazione di Microsoft Entra in Monitoraggio e cartelle di lavoro.
Bloccare l'indirizzo IP Microsoft Entra ID per lo scenario gestito (phs incluso staging)
Passare a Nuove posizioni denominate.
Creare un criterio della CA per specificare come destinazione tutte le applicazioni e bloccare solo per questo percorso denominato.
L'utente ha usato questo sistema operativo, IP, ISP, dispositivo o browser in precedenza?
Se non lo sono e questa attività è insolita, contrassegna l'utente e analizza tutte le attività.
L'INDIRIZZO IP è contrassegnato come "rischioso"?
Assicurarsi di registrare le password riuscite ma le risposte MFA non riuscite, perché questa attività indica che l'utente malintenzionato riceve la password ma non passa l'autenticazione a più fattori.
Riservare qualsiasi account che sembra essere un normale accesso, ad esempio, passato MFA, posizione e IP non fuori dall'ordinario.
Creazione di report MFA
È importante controllare anche i log di autenticazione a più fattori per determinare se un utente malintenzionato ha indovinato una password ma ha esito negativo alla richiesta di autenticazione a più fattori. I log di autenticazione a più fattori di Microsoft Entra mostrano i dettagli di autenticazione per gli eventi quando un utente richiede l'autenticazione a più fattori. Verificare e assicurarsi che non siano presenti log MFA sospetti di grandi dimensioni in Microsoft Entra ID. Per altre informazioni, vedere come usare il report degli accessi per esaminare gli eventi di autenticazione a più fattori di Microsoft Entra.
Controlli aggiuntivi
In Defender per il cloud App esaminare le attività e l'accesso ai file dell'account compromesso. Per altre informazioni, vedi:
Controllare se l'utente ha accesso a più risorse, ad esempio macchine virtuali (VM), autorizzazioni dell'account di dominio, archiviazione, tra le altre.
In caso di violazione dei dati, è consigliabile informare più agenzie, ad esempio la polizia.
Azioni correttive immediate
Modificare la password di qualsiasi account che si sospetta sia stata violata o che sia stata individuata la password dell'account. Inoltre, bloccare l'utente. Assicurarsi di seguire le linee guida per revocare l'accesso di emergenza.
Contrassegnare qualsiasi account compromesso come "compromesso" in Microsoft Entra ID Identity Protection.
Bloccare l'indirizzo IP dell'utente malintenzionato. Prestare attenzione durante l'esecuzione di questa azione perché gli utenti malintenzionati possono usare VPN legittime e potrebbero creare più rischi quando cambiano anche gli indirizzi IP. Se si usa l'autenticazione cloud, bloccare l'indirizzo IP in Defender per il cloud Apps o Microsoft Entra ID. Se federato, è necessario bloccare l'indirizzo IP a livello di firewall davanti al servizio ADFS.
Bloccare l'autenticazione legacy se viene usata (questa azione, tuttavia, potrebbe influire sull'azienda).
Mantenere l'igiene delle password. Per altre informazioni, vedere Protezione password di Microsoft Entra.
È anche possibile fare riferimento alla Guida di ADFS.
Ripristino
Password di protezione
Implementare la protezione password in Microsoft Entra ID e in locale abilitando gli elenchi di password personalizzate escluse. Questa configurazione impedisce agli utenti di impostare password o password vulnerabili associate all'organizzazione:
Per altre informazioni, vedere come difendersi dagli attacchi password spraying.
Assegnazione di tag all'indirizzo IP
Contrassegnare gli indirizzi IP in Defender per il cloud App per ricevere avvisi correlati all'uso futuro:
Assegnazione di tag a indirizzi IP
In app di Defender per il cloud, "tag" indirizzo IP per l'ambito IP e configurare un avviso per questo intervallo IP per riferimento futuro e risposta accelerata.
Impostazione degli avvisi per un indirizzo IP specifico
Configura avvisi
A seconda delle esigenze dell'organizzazione, è possibile configurare gli avvisi.
Configurare gli avvisi nello strumento SIEM ed esaminare il miglioramento delle lacune di registrazione. Integrare ADFS, Microsoft Entra ID, Office 365 e Defender per il cloud Apps registrazione.
Configurare la soglia e gli avvisi nel portale ADFS Health Connect e IP rischioso.
Informare gli utenti finali, gli stakeholder chiave, le operazioni sul campo, i team tecnici, la sicurezza informatica e i team di comunicazione
Esaminare il controllo di sicurezza e apportare le modifiche necessarie per migliorare o rafforzare il controllo di sicurezza all'interno dell'organizzazione
Suggerire la valutazione della configurazione di Microsoft Entra