Delen via


Integratie van Antimalware Scan Interface (AMSI) met Microsoft Defender Antivirus

Van toepassing op:

  • Microsoft Defender XDR
  • Microsoft Defender Antivirus
  • Microsoft Defender voor Eindpunt P1 & P2
  • Microsoft Defender voor Bedrijven
  • Microsoft Defender voor individuen

Platforms:

  • Windows 10 en nieuwer
  • Windows Server 2016 en nieuwer

Microsoft Defender voor Eindpunt maakt gebruik van de antimalware Scan Interface (AMSI) om de beveiliging tegen bestandsloze malware, dynamische aanvallen op basis van scripts en andere niet-traditionele cyberbedreigingen te verbeteren. In dit artikel worden de voordelen van AMSI-integratie beschreven, de typen scripttalen die worden ondersteund en hoe u AMSI kunt inschakelen voor verbeterde beveiliging.

Wat is bestandsloze malware?

Bestandsloze malware speelt een kritieke rol bij moderne cyberaanvallen, waarbij verborgen technieken worden gebruikt om detectie te voorkomen. Verschillende grote ransomware-uitbraken gebruikten bestandsloze methoden als onderdeel van hun kill-ketens.

Bestandsloze malware maakt gebruik van bestaande hulpprogramma's die al aanwezig zijn op een gecompromitteerd apparaat, zoals PowerShell.exe of wmic.exe. Malware kan een proces infiltreren, code uitvoeren in de geheugenruimte en deze ingebouwde hulpprogramma's aanroepen. Aanvallers verminderen hun voetafdruk aanzienlijk en omzeilen traditionele detectiemechanismen.

Omdat geheugen vluchtig is en bestandsloze malware geen bestanden op schijf plaatst, kan het tot stand brengen van persistentie met behulp van bestandsloze malware lastig zijn. Een voorbeeld van hoe bestandsloze malware persistentie bereikte, was het maken van een registeruitvoeringssleutel waarmee een PowerShell-cmdlet 'one-liner' wordt gestart. Met deze opdracht is een verborgen PowerShell-script gestart dat is opgeslagen in de register-BLOB. Het verborgen PowerShell-script bevatte een reflecterend draagbaar uitvoerbaar (PE)-loader dat een met Base64 gecodeerde PE uit het register heeft geladen. Het script dat in het register is opgeslagen, heeft ervoor gezorgd dat de malware is behouden.

Aanvallers gebruiken verschillende bestandsloze technieken die malware-implantaten verborgen en ontwijkend kunnen maken. Deze technieken omvatten:

  • Reflecterende DLL-injectie: Reflecterende DLL-injectie omvat het handmatig laden van schadelijke DLL's in een procesgeheugen zonder dat deze DLL's op schijf hoeven te staan. De schadelijke DLL kan worden gehost op een externe door een aanvaller beheerde computer en worden geleverd via een gefaseerd netwerkkanaal (bijvoorbeeld TLS-protocol(Transport Layer Security) of ingesloten in verborgen vorm in infectievectoren, zoals macro's en scripts. Deze configuratie resulteert in het omzeilen van het besturingssysteemmechanisme dat het laden van uitvoerbare modules bewaakt en bijhoudt. Een voorbeeld van malware die gebruikmaakt van reflecterende DLL-injectie is HackTool:Win32/Mikatz!dha.

  • Geheugenexplosies: Aanvallers gebruiken bestandsloze geheugenexplosies om willekeurige code op afstand uit te voeren op slachtoffercomputers. De UIWIX-bedreiging gebruikt bijvoorbeeld de Exploit EternalBlue, die werd gebruikt door zowel Petya als WannaCry, om de DoublePulsar-backdoor te installeren en bevindt zich volledig in het geheugen van de kernel (SMB Dispatch Table). In tegenstelling tot Petya en Wannacry verwijdert UIWIX geen bestanden op schijf.

  • Technieken op basis van scripts: Scripttalen bieden krachtige middelen voor het leveren van uitvoerbare nettoladingen met alleen geheugen. Scriptbestanden kunnen gecodeerde shellcodes of binaire bestanden insluiten die ze direct tijdens uitvoering kunnen ontsleutelen en uitvoeren via .NET-objecten of rechtstreeks met API's zonder dat ze naar de schijf hoeven te worden geschreven. De scripts zelf kunnen worden verborgen in het register, worden gelezen uit netwerkstromen of handmatig worden uitgevoerd op de opdrachtregel door een aanvaller, zonder ooit de schijf aan te raken.

    Opmerking

    Schakel PowerShell niet uit als een middel om bestandsloze malware te blokkeren. PowerShell is een krachtig en veilig beheerprogramma en is belangrijk voor veel systeem- en IT-functies. Aanvallers gebruiken schadelijke PowerShell-scripts als post-exploitatietechniek die alleen kan plaatsvinden nadat er al een eerste inbreuk is opgetreden. Misbruik ervan is een symptoom van een aanval die begint met andere schadelijke acties, zoals software-exploitatie, social engineering of diefstal van referenties. De sleutel is om te voorkomen dat een aanvaller in de positie komt waarin hij PowerShell kan misbruiken.

    Tip

    Het verminderen van het aantal niet-ondertekende PowerShell-scripts in uw omgeving helpt bij het verhogen van uw beveiligingspostuur. Hier vindt u instructies voor het toevoegen van ondertekening aan de PowerShell-scripts die in uw omgeving worden gebruikt Hey, Scripting Guy! Hoe kan ik Windows PowerShell scripts ondertekenen met een Windows PKI voor ondernemingen? (Deel 2 van 2) | Scripting-blog

  • WMI-persistentie: sommige aanvallers gebruiken de WMI-opslagplaats (Windows Management Instrumentation) om schadelijke scripts op te slaan die vervolgens periodiek worden aangeroepen met behulp van WMI-bindingen. Microsoft Defender Antivirus blokkeert de meeste malware met behulp van algemene, heuristische en op gedrag gebaseerde detecties, evenals lokale en cloudgebaseerde machine learning-modellen. Microsoft Defender Antivirus beschermt tegen bestandsloze malware via deze mogelijkheden:

    • Op scripts gebaseerde technieken detecteren met behulp van AMSI, waarmee PowerShell en andere scripttypen kunnen worden geïnspecteerd, zelfs met meerdere lagen van verdoezeling
    • WMI-persistentietechnieken detecteren en herstellen door de WMI-opslagplaats te scannen, zowel periodiek als wanneer afwijkend gedrag wordt waargenomen
    • Detectie van reflecterende DLL-injectie door verbeterde technieken voor geheugenscans en gedragsbewaking

Waarom AMSI?

AMSI biedt een dieper inspectieniveau voor schadelijke software die gebruikmaakt van verduisterings- en ontwijkingstechnieken op ingebouwde scripthosts van Windows. Door AMSI te integreren, biedt Microsoft Defender voor Eindpunt extra beveiligingslagen tegen geavanceerde bedreigingen.

Ondersteunde scripttalen

  • PowerShell
  • Jscript
  • VBScript
  • Windows Script Host (wscript.exe en cscript.exe)
  • .NET Framework 4.8 of hoger (alle assembly's scannen)
  • Windows Management Instrumentation (WMI)

Als u Microsoft 365-apps gebruikt, ondersteunt AMSI ook JavaScript, VBA en XLM.

AMSI biedt momenteel geen ondersteuning voor Python of Perl.

AMSI inschakelen

Als u AMSI wilt inschakelen, moet u het scannen van scripts inschakelen. Zie Scanopties configureren voor Microsoft Defender Antivirus.

Zie ook Defender Policy CSP - Windows Client Management.

AMSI-resources

AMSI-API's (Antimalware Scan Interface) zijn beschikbaar voor ontwikkelaars en antivirusleveranciers om te implementeren.

Andere Microsoft-producten, zoals Exchange en Sharepoint , maken ook gebruik van AMSI-integratie.

Meer resources om te beveiligen tegen bestandsloze aanvallen

  • Windows Defender-toepassingsbeheer en AppLocker. Dwingt sterk code-integriteitsbeleid af en staat alleen vertrouwde toepassingen toe. In de context van bestandsloze malware vergrendelt WDAC PowerShell in de modus Beperkte taal, waardoor de uitgebreide taalfuncties worden beperkt die kunnen leiden tot niet-controleerbare code-uitvoering, zoals direct .NET-scripting, het aanroepen van Win32-API's via de cmdlet Add-Type en interactie met COM-objecten. Dit vermindert in wezen reflecterende DLL-injectieaanvallen op basis van PowerShell.

  • Het verminderen van kwetsbaarheid voor aanvallen helpt beheerders beschermen tegen veelvoorkomende aanvalsvectoren.

  • Op virtualisatie gebaseerde beveiliging van code-integriteit inschakelen. Vermindert aanvallen op kernelgeheugens via Hypervisor Code Integrity (HVCI), waardoor het moeilijk is om schadelijke code te injecteren met behulp van beveiligingsproblemen met kernelmodussoftware.