Verificare account di posta elettronica compromessi
Un account utente compromesso viene anche chiamato "account takeover". È un tipo di attacco in cui un aggressore ottiene l'accesso a un account utente e opera come tale. A volte questi tipi di attacchi causano più danni di quanto previsto dall'utente malintenzionato.
Quando un'organizzazione indaga sugli account di posta elettronica compromessi, deve presumere che sia stato compromesso un numero di dati di posta superiore a quello indicato dal tracciamento della presenza effettiva dell'aggressore. A seconda del tipo di dati contenuti nei messaggi di posta elettronica, l'organizzazione potrebbe essere costretta a supporre che le informazioni sensibili siano state compromesse o a incorrere in sanzioni normative, a meno che non riesca a dimostrare che le informazioni sensibili non sono state esposte.
Ad esempio, le organizzazioni regolamentate dall'HIPAA rischiano multe significative se è provato che le informazioni sanitarie dei pazienti (PHI) sono state esposte. In questi casi, è improbabile che gli utenti malintenzionati siano interessati a PHI. In questi casi, è improbabile che i pirati informatici siano interessati ai dati PHI, ma le organizzazioni devono comunque segnalare una violazione dei dati, a meno che non possano dimostrare il contrario.
Per aiutare le organizzazioni a indagare sugli account di posta elettronica compromessi, Microsoft 365 verifica l'accesso ai dati di posta elettronica da parte dei protocolli e dei client di posta. A tale scopo, usa l'azione di controllo delle cassette postali MailItemsAccessed. Questa azione verificata può aiutare gli investigatori a:
- comprendere meglio le violazioni dei dati di posta elettronica.
- identificare l'entità delle compromissioni a specifici invii di posta che potrebbero essere stati compromessi.
L'obiettivo di questa azione di auditing è la difendibilità forense. In altre parole, aiuta ad affermare che una specifica parte di dati di posta non è stata compromessa. Se un utente malintenzionato ha ottenuto l'accesso a una determinata posta, Exchange Online verifica l'evento anche se non vi è alcuna indicazione che l'elemento di posta sia stato letto.
Azione di controllo delle cassette postali MailItemsAccessed
L'azione MailItemsAccessed fa parte della funzionalità Audit (Premium) e del controllo delle cassette postali di Exchange. Questa azione è abilitata per impostazione predefinita per:
- Utenti a cui viene assegnata una licenza Office 365 o Microsoft 365 E5.
- Organizzazioni con una sottoscrizione del componente aggiuntivo Microsoft 365 E5 Compliance.
MailItemsAccessed è un'azione di controllo delle caselle di posta che copre tutti i protocolli di posta: POP, IMAP, MAPI, EWS, Exchange ActiveSync e REST. Copre anche entrambi i tipi di accesso alla posta elettronica: sync e bind.
L'auditing degli eventi di sincronizzazione e di accesso alla posta di bind viene esaminato in modo più dettagliato nelle due sezioni successive.
Controllo dell'accesso per sincronizzazione
Le operazioni Sync vengono registrate solo quando si accede a una cassetta postale da una versione desktop del client Outlook per Windows o Mac. Durante l'operazione Sync, in genere questi client scaricano un set di elementi di posta di grandi dimensioni dal cloud a un computer locale.
Il volume di controllo per le operazioni Sync è enorme. Quindi, invece di generare un record di audit per ogni elemento di posta sincronizzato, Microsoft genera un evento di audit per la cartella di posta contenente gli elementi sincronizzati.
Importante
Questo presuppone che tutti gli elementi di posta nella cartella sincronizzata siano stati compromessi.
Il tipo di accesso viene registrato nel campo OperationProperties del record di controllo.
Per un esempio di visualizzazione del tipo di accesso di sincronizzazione in un record di audit, vedere il passaggio 2 della sezione sottostante intitolata Utilizzare i record di audit MailItemsAccessed per le indagini forensi.
Controllo dell'accesso per binding
Un'operazione Bind è un singolo accesso a un messaggio di posta elettronica.
Importante
Le attività di binding aiutano a determinare se un aggressore è stato in grado di accedere, e potenzialmente compromettere, i singoli messaggi di posta elettronica.
Per l'accesso bind, l'InternetMessageId dei singoli messaggi viene registrato nel record di audit. L'azione di audit MailItemsAccessed registra le operazioni di bind e le aggrega in un unico record di audit. Durante questo processo si verificano le seguenti azioni:
- Tutte le operazioni di binding che si verificano in un intervallo di due minuti vengono aggregate in un singolo record di controllo nel campo Cartelle all'interno della proprietà AuditData.
- Ogni messaggio consultato è identificato dal suo InternetMessageId.
- Il numero di operazioni di bind aggregate nel record viene visualizzato nel campo OperationCount della proprietà AuditData.
Per un esempio di visualizzazione del tipo di accesso bind in un record di audit, vedere il passaggio 4 della sezione sottostante intitolata Utilizzare i record di audit MailItemsAccessed per le indagini forensi.
Limitazione dei record di controllo MailItemsAccessed
Se per una cassetta postale vengono generati più di 1.000 record di audit MailItemsAccessed in meno di 24 ore, Exchange Online smette di generare record di audit per l'attività MailItemsAccessed. Quando una mailbox viene limitata in questo modo, l'attività MailItemsAccessed non verrà registrata per 24 ore dopo che la mailbox è stata limitata.
Importante
Se la casella di posta elettronica è stata limitata, è possibile che sia stata compromessa durante questo periodo.
La registrazione dell'attività MailItemsAccessed verrà ripresa dopo un periodo di 24 ore.
Ecco alcuni aspetti da tenere presenti sulla limitazione:
- Meno dell'1% di tutte le caselle di posta elettronica in Exchange Online sono soggette a limitazioni.
- Quando una cassetta postale è limitata, solo i record di controllo per l'attività MailItemsAccessed non vengono controllati. Le altre azioni di controllo delle cassette postali non sono interessate.
- Le cassette postali vengono limitate solo per le operazioni Bind. I record di controllo delle operazioni di sincronizzazione non vengono limitati.
- Se una cassetta postale viene limitata, si può presupporre che ci siano attività MailItemsAccessed che non sono state registrate nei log di controllo.
Vedere il passo 1 della sezione seguente per un esempio di visualizzazione della proprietà IsThrottled in un record di audit.
Usare i record di controllo MailItemsAccessed per le indagini forensi
L'auditing delle caselle di posta genera record di audit per l'accesso ai messaggi di posta elettronica. In questo modo, le organizzazioni possono essere sicure che i messaggi di posta elettronica non siano stati compromessi. Per questo motivo, in circostanze in cui Microsoft non è certa che i dati siano stati consultati, presume che lo siano stati. In quanto tale, registra tutte le attività di accesso alla posta.
Nota
L'uso dei record di audit di MailItemsAccessed per scopi forensi viene tipicamente eseguito dopo che la violazione dei dati è stata risolta e l'aggressore è stato eliminato.
Quando un'organizzazione conduce un'indagine, deve completare le seguenti fasi:
- Identificare le caselle di posta elettronica che sono state compromesse.
- Determinare l'arco di tempo in cui l'attaccante ha avuto accesso a tali caselle di posta.
- Utilizzare le cmdlet Search-UnifiedAuditLog o Search-MailboxAuditLog in Exchange Online PowerShell per cercare i record di audit corrispondenti alla violazione dei dati.
Le organizzazioni possono eseguire uno dei seguenti comandi per cercare i record di audit MailItemsAccessed (questi esempi presuppongono un periodo di tempo compreso tra il 1/06/2020 e il 1/20/2020):
Log di audit unificato:
Search-UnifiedAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -UserIds <user1,user2> -Operations MailItemsAccessed -ResultSize 1000
Log di audit della cassetta postale:
Search-MailboxAuditLog -Identity <user> -StartDate 01/06/2020 -EndDate 01/20/2020 -Operations MailItemsAccessed -ResultSize 1000 -ShowDetails
Consiglio
Una delle principali differenze tra i due cmdlet è che è possibile usare Search-UnifiedAuditLog per cercare i record di controllo per le attività eseguite da uno o più utenti. È in grado di individuare le attività eseguite da più utenti perché UserIds è un parametro multivalore. A confronto, il cmdlet Search-MailboxAuditLog cerca il registro di controllo della cassetta postale per un singolo utente.
Ecco i passaggi per utilizzare i record di audit MailItemsAccessed per indagare su un attacco di un utente compromesso. Ogni passaggio mostra la sintassi dei comandi per i cmdlet Search-UnifiedAuditLog o Search-MailboxAuditLog.
Controllare se la cassetta postale è stata limitata. Se una casella di posta elettronica è stata limitata, alcuni record di verifica della casella di posta elettronica non sono stati registrati. Nel caso in cui i record di audit abbiano "IsThrottled" come valore "True", si deve presumere che per un periodo di 24 ore dopo la generazione del record, l'accesso alla mailbox non sia stato verificato e che tutti i dati di posta siano stati compromessi.
Per cercare i record di MailItemsAccessed in cui la mailbox è stata limitata, eseguire uno dei seguenti comandi:
Log di audit unificato:
Search-UnifiedAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -UserIds <user1,user2> -Operations MailItemsAccessed -ResultSize 1000 | Where {$_.AuditData -like '*"IsThrottled","Value":"True"*'} | FL
Log di audit della cassetta postale:
Search-MailboxAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -Identity <user> -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "*IsThrottled:True*"} | FL
Controllare le attività di sincronizzazione per determinare se gli invii di posta sono stati compromessi. Se un utente malintenzionato usa un client di posta elettronica per scaricare i messaggi in una cassetta postale, può disconnettere il computer da Internet e accedere ai messaggi in locale senza interagire con il server. In questo caso, l'audit della cassetta postale non sarebbe in grado di verificare queste attività.
Per cercare i record MailItemsAccessed in cui gli elementi di posta sono stati consultati da un'operazione di sincronizzazione, eseguire uno dei seguenti comandi:
Log di audit unificato:
Search-UnifiedAuditLog -StartDate 01/06/2020 -EndDate 02/20/2020 -UserIds <user1,user2> -Operations MailItemsAccessed -ResultSize 1000 | Where {$_.AuditData -like '*"MailAccessType","Value":"Sync"*'} | FL
Log di audit della cassetta postale:
Search-MailboxAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -Identity <user> -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "*MailAccessType:Sync*"} | FL
Controllare le attività di sincronizzazione per determinare se un'intera casella di posta elettronica è stata compromessa. A tal fine, è necessario determinare se le attività di sincronizzazione si sono verificate nello stesso contesto utilizzato dall'aggressore per accedere alla cassetta postale. Il contesto è identificato e differenziato dall'indirizzo IP del computer client usato per accedere alla cassetta postale e dal protocollo di posta. Per altre informazioni, vedere la sezione seguente intitolata: Identificare i contesti di accesso dei diversi record di controllo.
Esaminare le proprietà elencate nella tabella seguente. Queste proprietà si trovano nella proprietà AuditData o OperationProperties. Se una qualsiasi delle attività di sincronizzazione si è verificata nello stesso contesto dell'attività dell'aggressore, un'organizzazione deve presumere che l'aggressore abbia sincronizzato tutti gli elementi di posta sul proprio client. In questo caso, l'intera cassetta postale è stata probabilmente compromessa.
Proprietà Descrizione ClientInfoString Descrive il protocollo, client (include la versione) ClientIPAddress Indirizzo IP del computer client. SessionId L'ID di sessione aiuta a distinguere le azioni degli aggressori dalle attività quotidiane degli utenti sullo stesso account (utile per gli account compromessi). UserId UPN dell'utente che legge il messaggio. Verificare la presenza di attività di bind per determinare se gli invii postali sono stati compromessi. Dopo che un'organizzazione ha eseguito i passaggi 2 e 3, può essere certo che tutti gli altri accessi ai messaggi di posta elettronica dall'utente malintenzionato verranno acquisiti nei record di controllo MailItemsAccessed con una proprietà MailAccessType con il valore Bind.
Per cercare i record MailItemsAccessed in cui gli elementi di posta sono stati acceduti da un'operazione di Bind, eseguire uno dei seguenti comandi:
Log di audit unificato:
Search-UnifiedAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -UserIds <user1,user2> -Operations MailItemsAccessed -ResultSize 1000 | Where {$_.AuditData -like '*"MailAccessType","Value":"Bind"*'} | FL
Log di audit della cassetta postale:
Search-MailboxAuditLog -StartDate 01/06/2020 -EndDate 01/20/2020 -Identity <user> -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "*MailAccessType:Bind*"} | FL
I messaggi di posta elettronica a cui si è avuto accesso sono identificati dall'ID del messaggio Internet. È inoltre possibile verificare se i record di audit hanno lo stesso contesto di quelli relativi ad altre attività dell'attaccante. Per altre informazioni, vedere la sezione seguente intitolata: Identificare i contesti di accesso dei diversi record di controllo.
Le organizzazioni possono utilizzare i dati di audit per le operazioni di bind in due modi diversi:
- Accedere o raccogliere tutti i messaggi di posta elettronica a cui l'aggressore ha avuto accesso utilizzando InternetMessageId per trovarli. Verificare quindi se uno di questi messaggi contiene informazioni riservate.
- Utilizzare InternetMessageId per cercare i record di audit relativi a una serie di messaggi di posta elettronica potenzialmente sensibili. Questa procedura è utile se ci si preoccupa solo di alcuni messaggi.
Filtrare i record di audit duplicati
I record di controllo duplicati per le stesse operazioni di binding che si verificano entro un'ora l'una dall'altra vengono esclusi per rimuovere i dati non significativi. Anche le operazioni di sincronizzazione sono filtrate a intervalli di un'ora.
L'eccezione a questo processo di de-duplicazione si verifica se, per lo stesso InternetMessageId, una qualsiasi delle proprietà descritte nella tabella seguente è diversa. Se una di queste proprietà è diversa in un'operazione duplicata, viene generato un nuovo record di controllo. Questo processo è descritto in modo più dettagliato nella sezione successiva.
Proprietà | Descrizione |
---|---|
ClientIPAddress | Indirizzo IP del computer client. |
ClientInfoString | Protocollo client, client usato per accedere alla cassetta postale. |
ParentFolder | Percorso completo della cartella dell'elemento di posta a cui è stato eseguito l'accesso. |
Logon_type | Tipo di accesso dell'utente che ha eseguito l'azione. I tipi di accesso e il valore di enumerazione corrispondente sono Owner (0), Admin (1) o Delegate (2). |
MailAccessType | Proprietà che indica se l'accesso è un'operazione di bind o di sync. |
MailboxUPN | UPN della cassetta postale in cui si trova il messaggio letto. |
User | UPN dell'utente che legge il messaggio. |
SessionId | Se un account è stato compromesso, l'ID di sessione aiuta a distinguere le azioni degli aggressori dalle attività quotidiane degli utenti nella stessa casella di posta. Per ulteriori informazioni sulle sessioni, vedere Contestualizzazione dell'attività dell'attaccante all'interno delle sessioni in Exchange Online. |
Identificare i contesti di accesso dei diversi record di audit
Durante un attacco, è frequente che un aggressore acceda a una casella di posta elettronica nello stesso momento in cui vi accede il proprietario della casella. Per distinguere l'accesso del malintenzionato da quello del proprietario della cassetta postale, esistono delle proprietà del record di controllo che definiscono il contesto dell'accesso.
Come descritto in precedenza, quando i valori di queste proprietà sono diversi, anche se l'attività si verifica entro l'intervallo di aggregazione, vengono generati record di controllo distinti. Nell'esempio seguente ci sono tre diversi record di controllo. Ognuno di essi si distingue per le proprietà Session ID e ClientIPAddress. Sono anche identificati i messaggi a cui è stato eseguito l'accesso.
Record di controllo 1 | Record di controllo 2 | Record di controllo 3 |
---|---|---|
ClientIPAddress1 SessionId2 |
ClientIPAddress2 SessionId2 |
ClientIPAddress1 SessionId3 |
InternetMessageIdA InternetMessageIdD InternetMessageIdE InternetMessageIdF |
InternetMessageIdA InternetMessageIdC |
InternetMessageIdB |
Se una o più delle proprietà elencate nella tabella della sezione precedente è diversa, viene generato un record di controllo separato per tenere traccia del nuovo contesto. Gli accessi verranno ordinati nei record di controllo separati in base al contesto in cui si è verificata l'attività.
Ad esempio, nei record di audit mostrati nella seguente schermata, l'accesso alla posta è avvenuto contemporaneamente da EWSEditor e da OWA. Tuttavia, l'attività di accesso è raccolta in diversi audit record a seconda del contesto in cui l'accesso ha avuto luogo. In questo caso, il contesto è definito da diversi valori della proprietà ClientInfoString.
In questo screenshot è stato utilizzato il seguente comando PowerShell:
Search-MailboxAuditLog -Identity admin -ShowDetails -Operations MailItemsAccessed -ResultSize 2000 | Select LastAccessed,Operation,AuditOperationsCountInAggregatedRecord,ClientInfoString