Regole Email Nascoste: Email Hiding Rules (T1564.008)

Quando un attaccante compromette una casella di posta, il primo istinto non è sempre quello di esfiltrare dati: spesso la mossa più efficace è diventare invisibili. La tecnica Email Hiding Rules consiste nel creare o manipolare le regole di posta in arrivo all'interno della mailbox compromessa, così da spostare, contrassegnare come lette o eliminare automaticamente email che potrebbero tradire la presenza dell'intruso.

Questa tecnica si colloca nella fase Defense Evasion (TA0005), la tappa della kill chain in cui l'avversario lavora per restare fuori dal radar dei difensori. Il meccanismo è disarmante nella sua semplicità: i cmdlet PowerShell New-InboxRule e Set-InboxRule — strumenti legittimi di amministrazione Exchange — permettono di filtrare messaggi in base a parole chiave come "malware", "phish", "suspicious" o "hack", cancellandoli prima che il proprietario della casella li veda.

L'impatto va oltre la singola mailbox. In ambienti Microsoft Exchange, le transport rules operano a livello organizzativo, valutando tutta la posta in transito contro condizioni definite dall'amministratore. Un attaccante con credenziali privilegiate può silenziare intere categorie di notifiche di sicurezza — dagli alert SIEM alle comunicazioni di incident response — ritardando drasticamente la risposta all'incidente. I dati disponibili mostrano 2 gruppi APT documentati nell'uso di questa tecnica e 1 mitigazione principale basata sull'auditing delle regole.


La simulazione di questa tecnica in ambiente lab è immediata perché sfrutta strumenti nativi di Exchange. Non servono payload custom: bastano le credenziali di un utente e un modulo PowerShell.

Il primo passo è connettersi a Exchange Online con il modulo ExchangeOnlineManagement (gratuito, distribuito da Microsoft via PowerShell Gallery). Dopo l'autenticazione con Connect-ExchangeOnline, la creazione della regola malevola richiede un singolo comando:

New-InboxRule -Name "RSS Feeds" -Mailbox vittima@dominio.lab -SubjectContainsWords "malware","phish","suspicious","hack" -DeleteMessage $true

Il nome "RSS Feeds" è deliberatamente innocuo — replicando il pattern di FIN4, che mascherava le proprie regole tra quelle apparentemente legittime. L'opzione -DeleteMessage $true elimina il messaggio prima che appaia nella inbox; in alternativa, -MoveToFolder "RSS Subscriptions" lo sposta in una cartella che nessuno controlla.

Per simulare uno scenario più aggressivo a livello organizzativo, si può creare una transport rule:

New-TransportRule -Name "Compliance Archive" -SubjectOrBodyContainsWords "incident","breach","compromise" -DeleteMessage $true

Questa regola intercetta tutta la posta dell'organizzazione che contiene keyword legate a incidenti di sicurezza — un'operazione che replica la capacità descritta per ambienti Exchange.

Su macOS, la simulazione si sposta sui file plist di Mail.app. I file rilevanti sono RulesActiveState.plist, SyncedRules.plist e MessageRules.plist, nella directory ~/Library/Mail/. Modificandoli con defaults write o con un editor plist è possibile inserire regole di filtraggio che Mail.app applicherà silenziosamente.

In ambiente Linux con Dovecot o Postfix, le regole lato server si gestiscono tramite script Sieve. Un filtro malevolo potrebbe essere:

require "fileinto";
if header :contains "subject" ["malware","phish","suspicious"] {
  discard;
}

Per la validazione e il cleanup del laboratorio, è essenziale enumerare e rimuovere le regole create:

Get-InboxRule -Mailbox vittima@dominio.lab | Format-Table Name, Description, DeleteMessage, MoveToFolder

Remove-InboxRule -Mailbox vittima@dominio.lab -Identity "RSS Feeds" -Confirm:$false

Come tool di auditing più strutturato, Hawk (open source) è un modulo PowerShell progettato per il triage di compromissioni Microsoft 365 e include funzioni specifiche per enumerare inbox rules sospette su tutte le mailbox del tenant.


Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo