Intuizioni su NotDoor: Approfondimento sui Macro di Outlook e Oltre
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
Questo articolo esamina il backdoor NotDoor, che sfrutta macro VBA dannose di Outlook per mantenere la persistenza e fornire comando e controllo. Il payload viene consegnato tramite sideloading DLL di una manomessa SSPICLI.dll che imita un legittimo OneDrive.exe binario. Script PowerShell offuscati gestiscono l’esfiltrazione dei dati tramite servizi di webhook e modificano le impostazioni del registro di Outlook per forzare l’esecuzione delle macro. Le linee guida di rilevamento si concentrano sul monitoraggio della creazione sospetta di file, dell’attività di caricamento DLL, dei cambiamenti del registro e dei comandi PowerShell codificati.
Analisi del Backdoor NotDoor
Un’analisi più approfondita rivela che la DLL canaglia crea una directory temporanea, scrive un payload nel file di VBAProject.OTM di Outlook e configura le chiavi di registro per consentire tutte le macro. Esegue quindi istruzioni PowerShell codificate in base64 che emettono callback DNS e HTTP a webhook.site and dnshook.site. Le modifiche al registro includono l’abilitazione di LoadMacroProviderOnBoot, l’abbassamento del livello di sicurezza di Outlook e la modifica di PONT_STRING per sopprimere i prompt di sicurezza.
Mitigazione
Le mitigazioni chiave includono limitare le opportunità di sideloading DLL, imporre requisiti di firma del codice per gli eseguibili, monitorare la creazione di VBAProject.OTM da parte di processi non-Outlook, e bloccare le connessioni in uscita ai domini webhook identificati. Inoltre, i team possono applicare i principi di privilegi minimi alle modifiche del registro e disabilitare il caricamento automatico delle macro dove possibile.
Risposta
Quando è rilevata un’attività di NotDoor, isolare l’endpoint compromesso, acquisire la DLL dannosa e i payload correlati, e svolgere una revisione forense delle modifiche al registro e delle tracce di rete. Bloccare i domini e gli IP associati, avviare una caccia più ampia per comportamenti simili di sideloading DLL, reimpostare le politiche macro di Outlook e verificare che tutte le impostazioni di sicurezza degli utenti siano riportate in uno stato rafforzato.
graph TB %% Definizioni delle classi classDef technique fill:#ffcc99 classDef tool fill:#cccccc classDef file fill:#e6e6fa classDef action fill:#99ccff classDef operator fill:#ff9900 %% Nodi – Azioni / Tecniche initial_access[u0022u003cbu003eAzioneu003c/bu003e – Accesso iniziale tramite foothold esistenteu0022] class initial_access action dll_sideload[u0022u003cbu003eTecnicau003c/bu003e – u003cbu003eT1574.001 Hijack Execution Flow: DLLu003c/bu003eu003cbr/u003eOneDrive.exe carica la DLL malevola SSPICLI.dll tramite DLL sideloadingu0022] class dll_sideload technique powershell[u0022u003cbu003eTecnicau003c/bu003e – u003cbu003eT1059.001 Interprete di comandi e scripting: PowerShellu003c/bu003eu003cbr/u003eComandi PowerShell codificati in Base64 eseguiti per controlli di rete e copia di fileu0022] class powershell technique office_macro[u0022u003cbu003eTecnicau003c/bu003e – u003cbu003eT1137.001 Avvio applicazioni Office: Macro dei modelli Officeu003c/bu003eu003cbr/u003eMacro VBA inserita in %APPDATA%\\Microsoft\\Outlook\\VbaProject.OTMu0022] class office_macro technique vba_stomping[u0022u003cbu003eTecnicau003c/bu003e – u003cbu003eT1564.007 Nascondere artefatti: VBA Stompingu003c/bu003eu003cbr/u003eLa macro monitora la posta in arrivo (Application_NewMailEx) per trigger C2 ed esfiltra i datiu0022] class vba_stomping technique vb_interpreter[u0022u003cbu003eTecnicau003c/bu003e – u003cbu003eT1059.005 Interprete di comandi e scripting: Visual Basicu003c/bu003eu003cbr/u003eIl codice VBA esegue comandi e comunica tramite Outlooku0022] class vb_interpreter technique %% Nodi – File / Oggetti file_oneDrive[u0022u003cbu003eFileu003c/bu003e – OneDrive.exeu0022] class file_oneDrive file file_sspicli[u0022u003cbu003eFileu003c/bu003e – SSPICLI.dllu0022] class file_sspicli file file_vba[u0022u003cbu003eFileu003c/bu003e – VbaProject.OTMu0022] class file_vba file email_monitor[u0022u003cbu003eOggettou003c/bu003e – Applicazione Outlooku003cbr/u003eMonitora la posta in arrivo (Application_NewMailEx)u0022] class email_monitor action outlook_comm[u0022u003cbu003eOggettou003c/bu003e – Outlooku003cbr/u003eComunica con il C2 ed esfiltra i datiu0022] class outlook_comm action %% Connessioni – Flusso dell’attacco initial_access u002du002du003e|porta_a| dll_sideload dll_sideload u002du002du003e|usa| file_oneDrive dll_sideload u002du002du003e|carica| file_sspicli dll_sideload u002du002du003e|attiva| powershell powershell u002du002du003e|porta_a| office_macro office_macro u002du002du003e|posiziona| file_vba office_macro u002du002du003e|abilita| vba_stomping office_macro u002du002du003e|abilita| vb_interpreter vba_stomping u002du002du003e|monitora| email_monitor vb_interpreter u002du002du003e|comunica_tramite| outlook_comm
Flusso di Attacco
Rilevamenti
Rilevamento di modifiche maligne al registro dal malware NotDoor [Evento registro di Windows]
Vedi
Esecuzione di comando PowerShell codificato [Windows PowerShell]
Vedi
IOC (HashSha256) per rilevare: NotDoor Insights: Uno Sguardo Più Approfondito alle Macro di Outlook e Altro
Vedi
Outlook su persistenza basata su email (via file_event)
Vedi
Possibile Abuso di Outlook / Downgrade della Sicurezza (via registry_event)
Vedi
Esecuzione di Simulazione
Prerequisito: Il Controllo di Telemetria & Baseline Pre‑flight deve essere superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirare a generare la telemetria esatta prevista dalla logica di rilevamento.
-
Narrazione & Comandi di Attacco:
Un attaccante che ha ottenuto l’esecuzione a livello utente sulla macchina della vittima distribuisce il malware NotDoor. L’obiettivo del malware è garantire che Outlook carichi automaticamente una macro dannosa all’avvio del sistema, disabiliti gli avvisi di sicurezza e sopprima i popup di dialogo. Per raggiungere questo obiettivo, l’attaccante scrive tre valori di registro specifici sotto l’hive di Outlook:-
LoadMacroProviderOnBootconfigurato a1sottoHKCUSoftwareMicrosoftOutlook– forza Outlook a caricare il provider della macro a ogni avvio. -
Livelloconfigurato a1sottoHKCUSoftwareMicrosoftOutlookSicurezza– abbassa il livello di sicurezza delle macro. -
PONT_STRINGconfigurato a un CLSID dannoso sottoHKCUSoftwareMicrosoftOutlookOpzioniGenerale– indirizza Outlook alla DLL macro dannosa.
Questi scritti generano eventi di modifica del registro che soddisfano
selezione1and (selezione2orselezione3) nella regola Sigma, causando l’attivazione dell’allerta. -
-
Script di Test di Regressione:
# Simulazione di modifica del registro NotDoor – PowerShell function Set-NotDoorOutlookRegistry { # 1. Abilita il provider di macro al boot New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlook" ` -Name "LoadMacroProviderOnBoot" -Value 1 -PropertyType DWORD -Force # 2. Riduci il livello di avviso di sicurezza New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookSecurity" ` -Name "Level" -Value 1 -PropertyType DWORD -Force # 3. Indica la macro dannosa (CLSID simulato) $maliciousClsid = "{12345678-1234-1234-1234-123456789ABC}" New-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookOptionsGeneral" ` -Name "PONT_STRING" -Value $maliciousClsid -PropertyType String -Force } # Esegui l'attacco simulato Set-NotDoorOutlookRegistry -
Comandi di Pulizia:
# Rimuovi le modifiche al registro simulate di NotDoor Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlook" ` -Name "LoadMacroProviderOnBoot" -ErrorAction SilentlyContinue Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookSecurity" ` -Name "Level" -ErrorAction SilentlyContinue Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftOutlookOptionsGeneral" ` -Name "PONT_STRING" -ErrorAction SilentlyContinue