Integrazione dell'interfaccia di analisi antimalware (AMSI) con Microsoft Defender Antivirus
Si applica a:
- Microsoft Defender XDR
- Antivirus Microsoft Defender
- Microsoft Defender per endpoint P1 & P2
- Microsoft Defender for Business
- Microsoft Defender per singoli utenti
Piattaforme:
- Windows 10 e versioni successive
- Windows Server 2016 e versioni successive
Microsoft Defender per endpoint utilizza l'interfaccia antimalware Scan Interface (AMSI) per migliorare la protezione da malware senza file, attacchi dinamici basati su script e altre minacce informatiche non tradizionali. Questo articolo descrive i vantaggi dell'integrazione AMSI, i tipi di linguaggi di scripting supportati e come abilitare AMSI per una maggiore sicurezza.
Il malware senza file svolge un ruolo fondamentale negli attacchi informatici moderni, usando tecniche furtive per evitare il rilevamento. Diversi importanti focolai ransomware utilizzato metodi senza file come parte delle loro catene di uccisione.
Il malware senza file usa strumenti esistenti già presenti in un dispositivo compromesso, ad esempio PowerShell.exe o wmic.exe. Il malware può infiltrarsi in un processo, eseguendo codice all'interno dello spazio di memoria e richiamando questi strumenti predefiniti. Gli utenti malintenzionati riducono significativamente il proprio footprint e eludono i tradizionali meccanismi di rilevamento.
Poiché la memoria è volatile e il malware senza file non inserisce i file su disco, stabilire la persistenza usando malware senza file può essere complicato. Un esempio di come il malware senza file ha raggiunto la persistenza è stato quello di creare una chiave di esecuzione del Registro di sistema che avvia un cmdlet di PowerShell "one-liner". Questo comando ha avviato uno script di PowerShell offuscato archiviato nel BLOB del Registro di sistema. Lo script di PowerShell offuscato conteneva un caricatore PE (Reflective Portable Executable) che caricava un pe con codifica Base64 dal Registro di sistema. Lo script archiviato nel Registro di sistema ha garantito che il malware persistesse.
Gli utenti malintenzionati usano diverse tecniche senza file che possono rendere gli impianti malware furtivi ed evasivi. Queste tecniche includono:
Inserimento dll riflettente L'inserimento di DLL riflettenti comporta il caricamento manuale di DLL dannose nella memoria di un processo senza la necessità che le DLL siano presenti su disco. La DLL dannosa può essere ospitata in un computer remoto controllato da utenti malintenzionati e recapitata tramite un canale di rete a fasi (ad esempio, protocollo Transport Layer Security (TLS) o incorporata in forma offuscata all'interno di vettori di infezione come macro e script. Ciò comporta l'evasione del meccanismo del sistema operativo che monitora e tiene traccia del caricamento dei moduli eseguibili. Un esempio di malware che usa l'inserimento di DLL riflettente è HackTool:Win32/Mikatz!dha.
Exploit di memoria Gli avversari usano exploit di memoria senza file per eseguire codice arbitrario in remoto nei computer vittima. Ad esempio, la minaccia UIWIX usa l'exploit EternalBlue, usato sia da Petya che da WannaCry, per installare la backdoor DoublePulsar, che risiede interamente nella memoria del kernel (tabella di invio SMB). A differenza di Petya e Wannacry, UIWIX non rilascia alcun file sul disco.
Tecniche basate su script I linguaggi di scripting consentono di distribuire payload eseguibili solo in memoria. I file script possono incorporare codici della shell codificati o file binari che possono decrittografare in tempo reale in fase di esecuzione ed eseguire tramite oggetti .NET o direttamente con LE API senza richiederne la scrittura su disco. Gli script stessi possono essere nascosti nel Registro di sistema, letti dai flussi di rete o eseguiti manualmente nella riga di comando da un utente malintenzionato, senza mai toccare il disco.
Nota
Non disabilitare PowerShell come mezzo per bloccare il malware senza file. PowerShell è uno strumento di gestione potente e sicuro ed è importante per molte funzioni di sistema e IT. Gli utenti malintenzionati usano script di PowerShell dannosi come tecnica post-sfruttamento che può essere eseguita solo dopo che si è già verificata una compromissione iniziale. Il suo uso improprio è un sintomo di un attacco che inizia con altre azioni dannose come lo sfruttamento del software, l'ingegneria sociale o il furto di credenziali. La chiave è impedire a un utente malintenzionato di entrare nella posizione in cui può usare in modo improprio PowerShell.
- Persistenza WMI Alcuni utenti malintenzionati usano il repository Strumentazione gestione Windows (WMI) per archiviare script dannosi che vengono quindi richiamati periodicamente tramite associazioni WMI.
Microsoft Defender Antivirus blocca la maggior parte del malware usando rilevamenti generici, euristici e basati sul comportamento, nonché modelli di Machine Learning locali e basati sul cloud. Microsoft Defender Antivirus protegge dal malware senza file tramite queste funzionalità:
- Rilevamento di tecniche basate su script tramite AMSI, che consente di controllare PowerShell e altri tipi di script, anche con più livelli di offuscamento
- Rilevamento e correzione delle tecniche di persistenza WMI tramite l'analisi del repository WMI, sia periodicamente che ogni volta che viene osservato un comportamento anomalo
- Rilevamento dell'inserimento di DLL riflettenti tramite tecniche avanzate di analisi della memoria e monitoraggio comportamentale
AMSI offre un livello di ispezione più approfondito per il software dannoso che usa tecniche di offuscamento ed evasione negli host di scripting predefiniti di Windows. Integrando AMSI, Microsoft Defender per endpoint offre livelli aggiuntivi di protezione dalle minacce avanzate.
- PowerShell
- Jscript
- Vbscript
- Host script windows (wscript.exe e cscript.exe)
- .NET Framework 4.8 o versione successiva (analisi di tutti gli assembly)
- Strumentazione gestione Windows (WMI)
Se si usa Microsoft Office 365, AMSI supporta anche JavaScript, VBA e XLM.
AMSI attualmente non supporta Python o Perl.
Per abilitare AMSI, è necessario abilitare l'analisi degli script. Vedere Configurare le opzioni di analisi per Microsoft Defender Antivirus
Vedere anche Defender Policy CSP - Gestione client Windows
Le API AMSI (Anti-Malware Scan Interface) sono disponibili per gli sviluppatori e i fornitori di antivirus da implementare.
Anche altri prodotti Microsoft come Exchange e Sharepoint usano l'integrazione AMSI.
Windows Defender Controllo applicazione e AppLocker. Applica criteri di integrità del codice sicuro e per consentire l'esecuzione solo di applicazioni attendibili. Nel contesto del malware senza file, WDAC blocca PowerShell in modalità linguaggio vincolato, limitando le funzionalità del linguaggio esteso che possono portare all'esecuzione di codice non verificabile, ad esempio script .NET diretti, chiamata di API Win32 tramite il cmdlet Add-Type e interazione con gli oggetti COM. Ciò riduce essenzialmente gli attacchi di inserimento di DLL riflettenti basati su PowerShell.
La riduzione della superficie di attacco aiuta gli amministratori a proteggersi dai vettori di attacco comuni.
Abilitare la protezione basata sulla virtualizzazione dell'integrità del codice. Riduce gli exploit di memoria del kernel tramite L'integrità del codice hypervisor (HVCI), rendendo difficile l'inserimento di codice dannoso usando vulnerabilità software in modalità kernel.