AMSI Forensics
forensicsDéfinition
AMSI (Antimalware Scan Interface) est une API Windows introduite avec Windows 10 qui permet aux applications (notamment PowerShell, WScript, Mshta) de soumettre leur contenu à tous les antimalwares installés pour analyse avant exécution. AMSI est une couche de détection complémentaire aux signatures antivirales traditionnelles, particulièrement efficace contre les scripts obfusqués qui ne correspondent pas à des signatures de fichiers. Dans le contexte forensique, AMSI est importante pour deux raisons opposées. D'un côté, AMSI génère des détections et des logs qui peuvent révéler des tentatives d'exécution de code malveillant même si celui-ci a été obfusqué. D'un autre côté, les techniques de bypass AMSI sont largement connues et utilisées par les attaquants sophistiqués, ce qui signifie que l'absence de détection AMSI ne signifie pas l'absence d'exécution malveillante. Les bypasses AMSI documentés exploitent différentes faiblesses. Le patch mémoire AMSI consiste à modifier en mémoire la fonction AmsiScanBuffer() dans amsi.dll pour qu'elle retourne toujours S_OK (scan réussi, aucun malware) — cette technique est détectable en vérifiant l'intégrité des DLLs chargées en mémoire (Moneta, pe-sieve). La technique de downgrade force l'utilisation de PowerShell 2.0 (powershell.exe -Version 2) qui ne supporte pas AMSI. La technique de forçage d'erreur provoque une erreur d'initialisation AMSI, désactivant temporairement l'interface. Les logs AMSI sont écrits dans l'Event Log Windows (Microsoft-Windows-AMSI/Operational) avec l'EventID 1101 (scan effectué) et 1102 (détection positive). Ces événements incluent le nom de l'application qui a soumis le scan, l'identifiant de session, et le résultat. En cas de détection, le contenu soumis (le code malveillant) peut être inclus dans le log, fournissant une preuve forensique précieuse. Pour les équipes DFIR, l'analyse des logs AMSI combinée aux Script Block Logging PowerShell et aux Sysmon process events fournit une vue complète des tentatives d'exécution de code malveillant, même partiellement bloquées.
Fonctionnement
Les applications compatible AMSI (PowerShell, Wscript, Mshta, Office avec macros) appellent AmsiScanBuffer() ou AmsiScanString() pour soumettre le code avant exécution. L'AMSI provider enregistré (généralement Windows Defender AMSI provider) analyse le contenu et retourne AMSI_RESULT_DETECTED (blocage) ou AMSI_RESULT_CLEAN (autorisation). Les détections sont journalisées dans Microsoft-Windows-AMSI/Operational.
Application DFIR
Investigation AMSI : 1) Exporter Microsoft-Windows-AMSI/Operational EVTX, 2) Filtrer EventID 1101/1102, 3) Les événements 1102 contiennent le code malveillant soumis (même obfusqué), 4) Détecter les bypasses AMSI : pe-sieve → détection patch amsi.dll en mémoire, Sysmon EventID 7 (Image loaded) → amsi.dll chargée dans des processus inhabituels. Absence de logs AMSI + Script Block Logging vide = probable bypass AMSI utilisé.
Outils
Event Log : Microsoft-Windows-AMSI/Operational (EventID 1101, 1102). Détection bypass AMSI : pe-sieve (patch amsi.dll), Moneta (hooks dans amsi.dll), Sysmon + Elastic Detection Rules (AMSI bypass). Audit AMSI status : Get-MpComputerStatus -AMSIEnabled. Bypass techniques référence (pour compréhension forensique) : github.com/S3cur3Th1sSh1t/Amsi-Bypass-Powershell (à des fins éducatives uniquement). Intégration SIEM : Elastic Security (AMSI Bypass rules).
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h